我希望在用戶單擊按鈕後使用getusermedia(捕獲使用網絡攝像頭)顯示html視頻。視頻標籤將使用innerhtml進行顯示。使用getusermedia顯示html視頻
當用戶點擊按鈕時,視頻顯示,但它不捕獲網絡攝像頭。
<button id="rec" onclick="onBtnRecordClicked()">Record</button>
<button id="stop" onclick="onBtnStopClicked()" disabled>Stop</button>
<div id="videos-container"></div>
<script>
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia;
document.getElementById('rec').onclick = function() {
var htmlElement = document.createElement('video');
htmlElement.setAttribute('autoplay', true);
htmlElement.setAttribute('controls', true);
videosContainer.insertBefore(htmlElement, videosContainer.firstChild);
var mediaConfig = {
video: htmlElement,
onsuccess: function(stream) {
src: URL.createObjectURL(stream);
},
onerror: function() {
alert('unable to get access to your webcam');
}
};
getUserMedia(mediaConfig);
}
var videosContainer = document.getElementById('videos-container') || document.body;
</script>
我得到的getUserMedia未在控制檯中定義。
中的jsfiddle https://jsfiddle.net/590c2mcp/
請參閱https://jsfiddle.net/srn9db4h/ – jib
@jib該代碼無法在Chrome上運行?我在鉻測試,但沒有視頻。它在Firefox上工作..但我的網站功能主要在鉻.. –
這是一個[更新的小提琴](https://jsfiddle.net/jib1/k8rened5/)應該在Chrome中工作(它不支持'srcObject '還)。請注意,這仍然需要Chrome中的[adapter.js](https://github.com/webrtc/adapter)填充或啓用* chrome:// flags /#enable-experimental-web-platform-features *。或者,您可以使用已棄用的非promise API ['navigator.getUserMedia'](https://developer.mozilla.org/en-US/docs/Web/API/Navigator/getUserMedia)。 – jib