chrome不支持getUserMedia()

问题描述 投票:12回答:3

我正在尝试通过使用自己的IP地址运行的我自己的网站,使用getUserMedia()访问我的网络摄像机。

在我再次尝试访问我的网站之前,它运行良好。我曾尝试过其他演示站点,但给出的错误是不支持getUserMedia。

Chrome版本v47.0.2526.80m 32位

enter image description here

如果我输入localhost而不是ipadress,则可以访问网络摄像头。它也可以在Firefox中使用。

google-chrome webcam
3个回答
16
投票

Chrome需要getUserMedia使用安全来源(HTTPS)。

[从Chrome 47开始,仅允许来自安全来源:HTTPS或本地主机的getUserMedia()请求。

https://developers.google.com/web/updates/2015/10/chrome-47-webrtc?hl=en


11
投票

Chrome finally实现了新的navigator.mediaDevices.getUserMedia()方法,但他们添加了安全性,可以防止来自不安全地址(非https或非本地主机服务器)的调用]

您将这样称呼它:

navigator.mediaDevices.getUserMedia()

或者您可以使用官方的webRTC polyfill var video = document.querySelector('video'); navigator.mediaDevices.getUserMedia({video:true}).then(function(mediaStream){ window.stream = mediaStream; video.src = URL.createObjectURL(mediaStream); video.play(); }); 库。

adpater.js

0
投票

我遇到了一个中间链接,可以帮助我解决此问题。

转到:chrome:// flags /#unsafely-treat-insecure-origin-as-secure

启用该选项。

此外,下面还会提供一个复选框。使用该链接提供指向您的HTTP服务器的链接。

var constraints = { video: true, audio: true }; navigator.mediaDevices.getUserMedia(constraints) .then(stream => video.srcObject = stream) .catch(e => console.error(e));

也提供端口号。 (在我的情况下是8000)

来源:Referr to this for better clarity

© www.soinside.com 2019 - 2024. All rights reserved.