我一直在玩弄 WebRTC,但在正确授予浏览器使用输入设备的权限后,我完全无法播放简单的音频流。
我只是尝试将输入设备连接到上下文目标,但它不起作用。
这个片段不起作用,我认为它应该:
function success(stream)
{
var audioContext = new webkitAudioContext();
var mediaStreamSource = audioContext.createMediaStreamSource(stream);
mediaStreamSource.connect(audioContext.destination);
}
navigator.webkitGetUserMedia({audio:true, video:false}, success);
这似乎没有从我的工作麦克风中捕捉到任何声音,但如果我使用一个简单的标签并创建一个 blob url,代码会突然开始工作。
function success(stream)
{
audio = document.querySelector('audio');
audio.src = window.URL.createObjectURL(stream);
audio.play();
}
navigator.webkitGetUserMedia({audio:true, video:false}, success);
此外,这些演示中似乎没有一个对我有用:http ://webaudiodemos.appspot.com/ 。
第一个片段的小提琴:http: //jsfiddle.net/AvMtt/
第二个片段的小提琴:http: //jsfiddle.net/vxeDg/
在 Windows 7x64 上使用 Chrome 28.0.1500.71 beta-m。
我有一个输入设备和两个输出设备(扬声器、耳机)。每个设备都使用相同的采样率。