rein0421 commited on
Commit
7b4274e
·
verified ·
1 Parent(s): ea2da5f

Upload index.html

Browse files
Files changed (1) hide show
  1. templates/index.html +21 -2
templates/index.html CHANGED
@@ -94,7 +94,8 @@
94
  let mediaRecorder;
95
  let audioChunks = [];
96
  let recordingInterval;
97
-
 
98
  // Chart.js の初期化
99
  const ctx = document.getElementById('speechChart').getContext('2d');
100
  const speechChart = new Chart(ctx, {
@@ -146,6 +147,7 @@
146
  recordingInterval = setInterval(() => {
147
  if (mediaRecorder && mediaRecorder.state === "recording") {
148
  mediaRecorder.stop();
 
149
  }
150
  }, 10000);
151
  } catch (error) {
@@ -160,6 +162,7 @@
160
  clearInterval(recordingInterval);
161
  if (mediaRecorder && mediaRecorder.state === "recording") {
162
  mediaRecorder.stop();
 
163
  }
164
  }
165
  }
@@ -183,7 +186,23 @@
183
  console.error(data.details);
184
  } else if (data.rate !== undefined) {
185
  // 解析結果が返ってきた場合はチャートを更新
186
- speechChart.data.datasets[0].data = [data.rate, 100 - data.rate];
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
187
  speechChart.update();
188
  //lert('音声の解析が完了しました。自分の音声: ' + data.rate.toFixed(2) + '%, 他の人: ' + (100 - data.rate).toFixed(2) + '%');
189
  } else {
 
94
  let mediaRecorder;
95
  let audioChunks = [];
96
  let recordingInterval;
97
+ let count_voice=0;
98
+ let before_rate=0;
99
  // Chart.js の初期化
100
  const ctx = document.getElementById('speechChart').getContext('2d');
101
  const speechChart = new Chart(ctx, {
 
147
  recordingInterval = setInterval(() => {
148
  if (mediaRecorder && mediaRecorder.state === "recording") {
149
  mediaRecorder.stop();
150
+
151
  }
152
  }, 10000);
153
  } catch (error) {
 
162
  clearInterval(recordingInterval);
163
  if (mediaRecorder && mediaRecorder.state === "recording") {
164
  mediaRecorder.stop();
165
+ count_voice=0;
166
  }
167
  }
168
  }
 
186
  console.error(data.details);
187
  } else if (data.rate !== undefined) {
188
  // 解析結果が返ってきた場合はチャートを更新
189
+
190
+ if(count_voice==0){
191
+ speechChart.data.datasets[0].data = [data.rate, 100 - data.rate];
192
+ before_rate=data.rate;
193
+ }else if(count_voice==1){
194
+ let tmp_rate= (data.rate+before_rate)/2//データ数が二つだから平均をとる
195
+ speechChart.data.datasets[0].data = [tmp_rate, 100 - tmp_rate];
196
+ console.log(before_rate,tmp_rate, 100 - tmp_rate)
197
+ before_rate=tmp_rate;
198
+ }else{
199
+ let tmp_rate= (data.rate+before_rate*2)/3//過去のやつに重みを付けて三つで考える。
200
+ speechChart.data.datasets[0].data = [tmp_rate, 100 - tmp_rate];
201
+ console.log(before_rate,tmp_rate, 100 - tmp_rate);
202
+ before_rate=tmp_rate;
203
+ }
204
+ count_voice++;
205
+
206
  speechChart.update();
207
  //lert('音声の解析が完了しました。自分の音声: ' + data.rate.toFixed(2) + '%, 他の人: ' + (100 - data.rate).toFixed(2) + '%');
208
  } else {