navigator.getusermedia

joh*_*ith 4 html5

我正在玩html5新规格,恰好是网络摄像头的功能.

按照本教程.我收到以下错误:

Native web camera streaming (getUserMedia) is not supported in this browser. 
Run Code Online (Sandbox Code Playgroud)

这个if语句采用了以下内容:

if (navigator.getUserMedia)
Run Code Online (Sandbox Code Playgroud)

现在,我确信在我的浏览器中启用了navigator.getUserMedia,因为这些示例在这里完美运行

所以,我修改了if中的代码,具有以下内容:

if (navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia)
Run Code Online (Sandbox Code Playgroud)

但现在,我收到一个javascript错误:

Uncaught TypeError: Object #<Navigator> has no method 'getUserMedia' 
Run Code Online (Sandbox Code Playgroud)

在这一行:

navigator.getUserMedia('video', successCallback, errorCallback);
Run Code Online (Sandbox Code Playgroud)

这真的没有意义!它正在我发布的最后一个链接上工作!

有任何想法吗?

提前致谢.

rob*_*rtc 18

如果你正在测试navigator.getUserMedia,navigator.webkitGetUserMedia,navigator.mozGetUserMedianavigator.msGetUserMedia那么你就不能保证navigator.getUserMedia()是可用的.它可能是其他三个中的任何一个.你可以试试这样的东西(来自getUserMedia.js):

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

if ( !! navigator.getUserMedia_) {
    navigator.getUserMedia_('video', successCallback, errorCallback);
    //The rest of your code
Run Code Online (Sandbox Code Playgroud)


Pie*_*ier 6

navigator.getUserMedia()已弃用。请参阅 MDN。

https://developer.mozilla.org/en-US/docs/Web/API/Navigator/getUserMedia

使用navigator.mediaDevices.getUserMedia(constraints);来代替。

https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia