Javascript 使用riffwave.js获取精确的注释

Javascript 使用riffwave.js获取精确的注释,javascript,html5-audio,Javascript,Html5 Audio,有人知道是否有可能从javascript库中获得精确的注释(C、C#、D、Eb等)吗 演示让我觉得这是可能的,但我不确定如何转换 对于生成的wave文件所需的数据数组中的给定注释。当然!您可能希望创建一些从键到频率的映射函数(可能只是一个字典) 要使用riffwave.js合成给定的频率,可以执行以下操作 function simHertz(hz) { var audio = new Audio(); var wave = new RIFFWAVE(); var data

有人知道是否有可能从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();
函数赫兹(hz){
var audio=新音频();
var波=新的里夫波();
var数据=[];
wave.header.sampleRate=44100;
var秒=1;
对于(变量i=0;i
必须删除循环中“.sampleRate”后面的*号,但除此之外,请点击!。太赫兹,哇!这里应该有一个变量来定义音频播放的时间。编辑以修复此问题。