Я создаю программу, которая записывает аудиоблок по блокам, используя скрипт-процессор 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, заполненным нулями, пока я не воспроизведу аудиофайл. Есть ли способ остановить поток или просто заставить поток работать, когда воспроизводится звук? Учтите, что мне нужны только данные из аудиофайла.
Спасибо!