2014-04-23 200 views
0

測試代碼:鉻不給訪問網絡攝像頭

<!doctype html> 
<html> 
<body> 
<video id="v1" autoplay="autoplay"></video> 
<script> 
navigator._getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia; 
navigator._getUserMedia({video: true}, function(stream) { 
    document.getElementById('v1').src = URL.createObjectURL(stream); 
}, function() {}); 
</script> 
</body> 
</html> 

chrome34.0.1847.116 m如果頁面被打開過http不給訪問網絡攝像頭,但它的作品,如果打開了https。也就是,the web camera icon(圖片來自google)出現在地址欄中。我點擊它,選擇「詢問example.com是否想訪問你的相機」,點擊「完成」,然後在出現的欄中點擊「重新加載」。但視頻並未出現。如果通過https打開,它從一開始就工作正常。

該webcamera是Logitech C210。它在skype中正常工作。有什麼想法嗎?

回答

3

您確定這不是因爲您試圖直接從文件打開您的頁面,而不是從網絡服務器打開您的頁面,因此使用前綴file:///而不是http(s)://

如果條形地址中的url看起來像file:///...那麼chrome將不允許訪問攝像機。

但是,如果您通過基本網絡服務器(python -m SimpleHTTPServer位於您的頁面所在的文件夾中)或JSFiddle(http://jsfiddle.net/7Hkws/)啓動您的頁面,則它工作得很好。


在Chrome瀏覽器設置,Privacy > Content Settings > Medias應設置爲 Ask when a site requires access to your camera and microphone (recommended)

+0

我確定,因爲我在jsfiddle.net上遇到同樣的症狀。 –

+1

嗯,我有和你完全一樣的Chrome版本...... jsfiddle和localhost都能正常工作。也許你可以通過檢查你的chrome機密性設置來查看是否有錯誤。 – Tronix117

+0

確實,我在'設置>隱私>內容設置>媒體'中有'不允許網站訪問您的相機和麥克風'。如果我將其切換到「詢問網站何時需要訪問您的相機和麥克風(推薦)」,它纔會開始工作。但是,當禁止使用相機和麥克風時,「鉻」的行爲無論如何都是奇怪的。然後我們仍然遇到'firefox'的問題。 –

0

這個答案是有點乏味,但值得爲techies.Refer此鏈接,並按照程序。 需要創建一個將用於Chrome的目錄以不安全的方式並通過鏈接中給出的命令啓動它。

https://gist.github.com/jll90/5e0549ca5cce5d9c3a65600b29aab9a7

命令這個命令之前,Windows操作系統 這個位置上「d:\ chromeInsequre」創建一個文件夾或在任何其他位置與任何名稱和大膽

開始鉻替代路徑 - -user-data-dir = D:\ chromeInsequre --unsafely-treat-insecure-origin-as-secure = http://example.com/