0

キーボードの周波数を生成する発振器があります。スピーカーに出力するときはすべて機能しますが、スピーカーに出力するだけでなく、ベース64に変換して後で再度使用できるようにバッファリングしたいと考えています。私が見た唯一の例は、私が必要としない xhr の使用です。モジュラー ルーティングにノードを追加して、入力を取得し、それを配列に格納して、ハードウェアに出力できるようにしたいからです。

このようなもの:

var osc = ctx.createOscillator();
osc.type = 3;
osc.frequency.value = freq;
osc.connect(buffer);
buffer.connect(ctx.destination);

これは可能ですか?

4

3 に答える 3

1

RecorderJs をチェックアウトしましたか? https://github.com/mattdiamond/Recorderjs . 私はそれがあなたが必要とすることをすると思います。

于 2013-04-16T03:44:58.087 に答える
0

Matt の Recorder.js https://github.com/mattdiamond/Recorderjsを使用し、多数のオシレーターから ctx.destination への仲介役として機能する GainNode に接続することで、問題を解決しました。ここでは localStorage を使用しますが、ここでは配列を使用した例を示します (これにはオシレーターのセットアップは含まれません)。

var recorder;
recorder = new Recorder(gainNode, { workerPath: "../recorderWorker.js"});
recorder.record();

var recordedSound = [];
function recordSound()  {
    recorder.exportWAV(function(blob) {
        recordedSound.push(blob);
    });
}

function play(i)  {
    var audio = new Audio(window.URL.createObjectURL(recordedSound[i]));
    audio.play();
}
于 2013-04-19T18:01:35.997 に答える