Загрузка звука с микрофона с интервалами - PullRequest
0 голосов
/ 08 апреля 2020

Как вы загружаете звук с микрофона с заданным интервалом? Скажите каждую 1 секунду или полсекунды. Если это невозможно, то, по крайней мере, сможете загрузить, если имеется звуковой патрон, который можно экспортировать как WAV.

У меня есть этот код:

  const processAudio =
      ev => {
        const CHANNEL = 0;
        const inputBuffer = ev.inputBuffer;
        const outputBuffer = ev.outputBuffer;
        const inputData = inputBuffer.getChannelData(CHANNEL);
        const outputData = outputBuffer.getChannelData(CHANNEL);

        // TODO: manually do something with the audio
        for (let i = 0; i < inputBuffer.length; ++i) {
          outputData[i] = inputData[i];
        }
        dataSpan.innerHTML = outputData.length
        ctxSpan.innerHTML = audioContext.length // undefined
        const outputWavBlob = audioBufferToWaveBlob(outputData)
        _saveBlob(outputWavBlob) // download wav at given interval
      };

Однако это не загрузит wav как blob, а также выдаст ошибки. Вот Jsfiddle для полной демонстрации: https://jsfiddle.net/xybrek/bmLa1k3s/

...