2017-11-23 13 views
0

録音中に録音しているオーディオを再生する方法はありますか?WebオーディオAPIを使用して録音されたオーディオチャンクを再生する

これは私のコードです。私はオーディオを録音しており、オーディオチャンクはいつでもonaudioprocessへの呼び出しが可能です。それはAudioProcessingEventのインスタンスを受け取ります。私はWeb Audio APIに精通していないので、聞くために何をすべきか分かりません。私はスピーカーに音を出力させたい。

function startRecording(stream){ 
    var context = new AudioContext(); 
    var audio_input = context.createMediaStreamSource(stream); 
    var buffer_size = 2048; 

    var recorder = context.createScriptProcessor(buffer_size, 1, 1); 

    recorder.onaudioprocess = function(e){ 
     // var data = e.inputBuffer.getChannelData(0); 
     // AudioStream.write(data); 

     var source = context.createBufferSource(); 
     source.buffer = e.inputBuffer; 
     source.connect(context.destination); 
     source.start(0); 

     console.log(e.inputBuffer) 

    }; 

    audio_input.connect(recorder); 
    recorder.connect(context.destination); 
} 

onaudioprocessのコードは機能しません。コンソールにエラーはありませんが、何も起こりません。

e.inputBufferの出力は正常に見える:

AudioBuffer {長さ:4096、継続時間:0.09287981859410431、は、sampleRate:44100、numberOfChannels:1}へ https://webaudio.github.io/web-audio-api/#dom-audioprocessingeventに音声処理イベント上に読む

答えて

1

onprocessイベントの動作を参照してください。基本的には、 イベントのinputBufferをoutputBufferにコピーする必要があります。 の音声を聞くことができます。

関連する問題