riffwave.jsのようなjavascriptライブラリから正確なメモ(C、C#、D、Ebなど)を取得できるかどうか誰かが知っていますか?
デモでは可能だと思いますが 、特定の音符のピアノ周波数を、生成されたWaveファイルに必要なデータ配列に移調する方法がわかりません。
riffwave.jsのようなjavascriptライブラリから正確なメモ(C、C#、D、Ebなど)を取得できるかどうか誰かが知っていますか?
デモでは可能だと思いますが 、特定の音符のピアノ周波数を、生成されたWaveファイルに必要なデータ配列に移調する方法がわかりません。
もちろん!キーから周波数へのマッピング関数を作成する必要があります(単なる辞書の場合もあります)。
riffwave.jsを使用して特定の周波数を合成するには、次のようにします。
function simHertz(hz) {
    var audio = new Audio();
    var wave = new RIFFWAVE();
    var data = [];
    wave.header.sampleRate = 44100;
    var seconds = 1;
    for (var i = 0; i < wave.header.sampleRate * seconds; i ++) {
        data[i] = Math.round(128 + 127 * Math.sin(i * 2 * Math.PI * hz / wave.header.sampleRate));
    }
    wave.Make(data);
    audio.src = wave.dataURI;
    return audio;
}
var audio = simHertz(1000);
audio.play();