v76: проигрывание через trimSilence — без щелчка в начале

This commit is contained in:
“Naeel”
2026-05-22 21:37:10 +04:00
parent 66a3e32c03
commit 337f7f3017
3 changed files with 50 additions and 42 deletions
+4 -11
View File
@@ -1,6 +1,6 @@
// ---------- Глобальные переменные и инициализация ----------
const GROQ_API_KEY = '';
const VERSION = 'v75';
const VERSION = 'v76';
let mediaRecorder, audioChunks = [], userAudioBlob = null, ttsText = '';
let isRecording = false, isAnalyzing = false, micAnalyser = null, micAnimId = null;
@@ -41,19 +41,12 @@ document.getElementById('btnRecord').onclick = async function () {
// ---------- Воспроизведение своей записи ----------
document.getElementById('btnPlayUser').onclick = async () => {
if (!userAudioBlob) return setStatus('Нет записи!');
if (userAudioBlob.size === 0) return setStatus('Запись пустая!');
const url = URL.createObjectURL(userAudioBlob);
const audio = new Audio(url);
audio.volume = 1.0;
audio.onended = () => { URL.revokeObjectURL(url); setStatus('Готово.'); };
audio.onerror = () => { URL.revokeObjectURL(url); setStatus('Ошибка воспроизведения.'); };
setStatus('🔊 Ваша запись...');
try {
await audio.play();
await playTrimmed(userAudioBlob);
setStatus('Готово.');
} catch (err) {
URL.revokeObjectURL(url);
setStatus('Ошибка воспроизведения — нажмите ещё раз.');
return;
setStatus('Ошибка воспроизведения.');
}
};