Javascript 使用AudioContext将麦克风音频流到扬声器

Javascript 使用AudioContext将麦克风音频流到扬声器,javascript,audio-streaming,html5-audio,microphone,webkitaudiocontext,Javascript,Audio Streaming,Html5 Audio,Microphone,Webkitaudiocontext,我觉得Chrome中可能有些东西已经改变了,因为有一些功能的演示似乎已经不起作用了。不过,我还没发现有人这么说。这是我的密码: navigator.getUserMedia = ( navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia ||navigator.msGetUserMedia); var aCtx; var a

我觉得Chrome中可能有些东西已经改变了,因为有一些功能的演示似乎已经不起作用了。不过,我还没发现有人这么说。这是我的密码:

navigator.getUserMedia = ( navigator.getUserMedia    || navigator.webkitGetUserMedia ||
                           navigator.mozGetUserMedia ||navigator.msGetUserMedia);

var aCtx;
var analyser;
var microphone;
if (navigator.getUserMedia) {
    navigator.getUserMedia({audio: true}, function(stream) {
        aCtx = new webkitAudioContext();
        analyser = aCtx.createAnalyser();
        microphone = aCtx.createMediaStreamSource(stream);
        microphone.connect(analyser);
        analyser.connect(aCtx.destination);
    });
};

我无法通过扬声器播放音频。我希望我的代码是不正确的,这仍然是可能的。如果我使用音频标签并直接发送到那里,我可以让它工作,但我希望能够为它添加过滤器。

您犯了一个印刷错误。你的第一行应该是

navigator.getUserMedia = ( navigator.getUserMedia    || navigator.webkitGetUserMedia ||
                           navigator.mozGetUserMedia ||navigator.msGetUserMedia);

看起来我需要将麦克风更改为默认设置。它已设置为显示音频。

请格式化第二个代码块。选择它并按Ctrl-K。在chrome canary中工作。浏览器问题…谢谢,我真的注意到了,在我发布之后,但还没有更新。虽然这不能让它工作。你的代码在Chrome27 mac上对我有效。当你呼叫getUserMedia时,chrome会在搜索栏下方竖起一条横幅,请求用户允许使用麦克风.rmcclellan,你可以在扬声器中听到它?我当然可以。是的,它要求获得许可,并表现得好像它在工作,但没有声音通过我的扬声器,但至少我知道这不是一个代码问题。我已经能够使用音频标签获得声音,但我不能用任何过滤器。我在mac上运行OS X 10.8.4和Chrome 28.0.1500.52测试版。