我有toggleLiveInput()函数,这就是问题所在:
我运行代码,它在桌面上运行正常。但是当我构建一个应用程序(使用英特尔XDK以防万一你想知道)时,只要你已经启动了一次应用程序,它就可以运行。第一次,它将完全忽略该功能。它不会这样做。谁知道为什么?谢谢!
function toggleLiveInput() {
getUserMedia(
{
"audio": {
"mandatory": {
"googEchoCancellation": "false",
"googAutoGainControl": "false",
"googNoiseSuppression": "false",
"googHighpassFilter": "false"
},
"optional": []
},
}, gotStream);
}
function gotStream(stream) {
// Create an AudioNode from the stream.
mediaStreamSource = audioContext.createMediaStreamSource(stream);
// Connect it to the destination.
analyser = audioContext.createAnalyser();
analyser.fftSize = 2048;
mediaStreamSource.connect( analyser );
updatePitch();
meter = createAudioMeter(audioContext);
mediaStreamSource.connect(meter);
drawLoop();
}
function drawLoop( time ) {
rafID = window.requestAnimationFrame( drawLoop );
volumeOfNote = meter.volume;
}
toggleLiveInput();
编辑:刚想出一些奇怪的东西。我使用try() catch(e)
并没有发现错误。这意味着该功能正在被igonred。但只有一次?奇怪...