首頁  >  問答  >  主體

html5 - 新版chrome不能访问摄像头

<html>
<body>
<video id="video" autoplay=""style='width:640px;height:480px'></video>
<button id='picture'>PICTURE</button> 
<canvas id="canvas" width="640" height="480"></canvas>

  <script>

var video=document.getElementById("video");
var context=canvas.getContext("2d");
var errocb=function(){
 console.log("wrong");
}
if (navigator.getUserMedia) { // 标准的API
                navigator.getUserMedia({ "video": true }, function (stream) {
                    video.src = stream;
                    video.play();
                }, errocb);
} else if (navigator.webkitGetUserMedia) { // WebKit 核心的API
                navigator.webkitGetUserMedia({ "video": true }, function (stream) {
                    video.src = window.webkitURL.createObjectURL(stream);
                    video.play();
                }, errocb);
 }
</script>
</body>
</html>

以上代码在新版chrome(47.0.2526.80)可以通过本地地址访问摄像头,比如localhost/video.html。
但是不能通过IP地址访问,比如192.168.1.100/video.html。
而其它低版本的chrome工作都是正常的。
请问 这个问题如何解决呢?

迷茫迷茫2742 天前1183

全部回覆(5)我來回復

  • 大家讲道理

    大家讲道理2017-04-17 12:05:07

    https://sites.google.com/a/chromium.org/dev/Home/chromium-security/deprecating-powerful-features-on-insecure-origins

    回覆
    0
  • 怪我咯

    怪我咯2017-04-17 12:05:07

    我也遇到同樣的問題,以前版本的Chrome預設是會彈出提示的,這個版本直接拒絕打開相機了。雖然我在隱私設定裡打開了攝像頭,但沒有提示。

    難道這是為了安全考慮,必須走HTTPS?

    回覆
    0
  • 高洛峰

    高洛峰2017-04-17 12:05:07

    昨天遇到這個問題,在網路上找了許多資料,發現是chrome設定的問題,開啟設定-進階設定-隱私權設定(chrome://settings/content直達)找到鏡頭,講預設選項的mobiola video ..選擇你的設備(下拉框選擇)就可以啦,吼吼

    回覆
    0
  • 怪我咯

    怪我咯2017-04-17 12:05:07

    我也遇到了這個問題,現在谷歌連getUserMedia都不支援了,必須要https?

    回覆
    0
  • 天蓬老师

    天蓬老师2017-04-17 12:05:07

    看似是Chrome為了安全而添加的功能,採用https連接就可以存取到攝影機

    回覆
    0
  • 取消回覆