为什么此代码在chrome 35中出现错误?不知道什么时候开始,但它曾经在2013年11月左右工作。
try {
// Fix up for prefixing
window.AudioContext = window.AudioContext ? new window.AudioContext() :
window.webkitAudioContext ? new window.webkitAudioContext() :
window.mozAudioContext ? new window.mozAudioContext() :
window.oAudioContext ? new window.oAudioContext() :
window.msAudioContext ? new window.msAudioContext() :
undefined;
context = new AudioContext();
}
catch(e) {
console.log('Error');
console.log(e);
}
编辑:为了澄清,现在getUserMedia现在需要所有三个输入参数,这被证明是一个严重问题。我错过了错误功能:
navigator.getUserMedia (
// constraints
{
video: false,
audio: true
},
// successCallback
function(localMediaStream) {
// Do something with the audio here
},
// errorCallback
function(err) {
console.log("The following error occured: " + err);
}
);
答案 0 :(得分:2)
Chrome 35开始支持AudioContext。
你为什么要在第3-7行中使用AudioContexts?
这更好地捕获,BTW,如:
window.AudioContext = window.AudioContext || window.webkitAudioContext;
context = new AudioContext();
在webkitAudioContext以外的任何浏览器中都没有以供应商为前缀的版本。