Синхронизация воспроизведения звука и захвата чанка JS - PullRequest
0 голосов
/ 02 марта 2020

Я создаю программу, которая записывает аудиоблок по блокам, используя скрипт-процессор WebAPI. Затем я сохраняю его в файл .wav.

Точно так же, как я записываю его, я могу проигрывать звук, когда ловлю куски, но у меня здесь проблема. Я загружаю файл .wav в звуковой тег HTML, а затем создаю поток.

var source = audioContextPlaying.createMediaElementSource(audioPlayer);
var stream_dest = audioContextPlaying.createMediaStreamDestination();
source.connect(stream_dest); 
inputPlaying = audioContextPlaying.createMediaStreamSource(stream_dest.stream);
inputPlaying.connect(scriptProcessorPlaying);
scriptProcessorPlaying.connect(audioContextPlaying.destination);
scriptProcessorPlaying.onaudioprocess = processPlayedInput;

Проблема в том, что поток всегда отправляет данные обратному вызову "processPlayedInput". Эти данные всегда являются массивом Float32Array, заполненным нулями, пока я не воспроизведу аудиофайл. Есть ли способ остановить поток или просто заставить поток работать, когда воспроизводится звук? Учтите, что мне нужны только данные из аудиофайла.

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...