Spaces:
Running
Running
Upload index.html
Browse files- 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 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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 {
|