2

我正在试验 Web Audio API

var context = new webkitAudioContext();
//alert(context);
//alert(context.createOscillator);
var oscillator = context.createOscillator(); 

oscillator.connect(context.destination);
oscillator.noteOn(0);

但我没有声音,所以我想知道我错过了什么

注释掉的警报(上下文)打印 [object AudioContext] 但以下警报打印未定义

当我尝试 alert(context.decodeAudioData) 它的打印是一个函数

感谢您的帮助

4

1 回答 1

-1

您的问题是浏览器之间的 AudioContext 不同。有关固定版本,请参阅此 jsfiddle

try {
    if (! window.AudioContext) {
        if (! window.webkitAudioContext) {
            bad_browser();
            return;
        }
        window.AudioContext = window.webkitAudioContext;
    }

    context = new AudioContext();
}
catch(e) {
    console.log('Web Audio API is not supported in this browser');
}

var oscillator = context.createOscillator(); 

oscillator.connect(context.destination);
oscillator.noteOn(0);
于 2013-04-15T19:12:21.260 回答