“getUserMedia”在Chrome版本36.0.1985.125 m中无效

时间:2014-08-02 13:22:41

标签: javascript html5 google-chrome getusermedia

我正在使用this HTML5Rocks帖子关注音频GUM教程。这是代码:

function gotStream(stream) {
    window.AudioContext = window.AudioContext || window.webkitAudioContext;
    var audioContext = new AudioContext();

    // Create an AudioNode from the stream.
    var mediaStreamSource = audioContext.createMediaStreamSource( stream );

    // Connect it to the destination to hear yourself (or any other node for processing!)
    mediaStreamSource.connect( audioContext.destination );
}

navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia;
navigator.getUserMedia({audio:true}, gotStream,function(e){console.log(e);});

我尝试在Chrome中运行此功能,但绝对没有任何反应。没有错误,或任何事情。 “征求许可”对话框也没有显示出来。

我使用的是Chrome版本36.0.1985.125 m。

1 个答案:

答案 0 :(得分:4)

问题是您尝试直接访问../*.html文件。由于同源政策,Chrome因许多功能而无法正常使用。有两种解决方案。

  1. 设置一个简单的http服务器。您可以通过启用apache为您提供本地文件来执行此操作。

  2. 为Chrome禁用相同的原始政策。

  3. 快速谷歌两者将出现几个完整的详细示例如何做到。我会建议选项1,因为这将模拟您的网页在网站生效时的行为方式。