小編將想法提供給了大家,學程式最重要的是實踐,我這雖然有完善的程式碼,但是希望大家都可以自己寫出屬於自己的程式碼
HTML5 The Media Capture API提供了對攝影機的可編程訪問,用戶可以直接用getUserMedia獲得攝影機提供的視訊串流。但實際上用html5調用手機攝像頭存在很多問題:
1)谷歌的發布的Chrome到了21版本後,才新增了一個用於高質量視頻音頻通訊的getUserMedia API,該API允許Web應用程序訪問相機與麥克風,其他手機瀏覽器只有opera支援html5呼叫本地拍照功能
2)兩個瀏覽器皆不支援存取多個相機:chrome不支援存取後置鏡頭,pera支援存取後置相機的
android手機,瀏覽器chrome32版本下實現了瀏覽器調用設備相機進行拍照。主要分3個步驟來完成:
1)取得視訊串流
新增一個HTML5的Video標籤,並將從攝影機取得視訊作為這個標籤的輸入來源
var video = 程式碼如下:
var video = 程式碼如下:
var video = 編碼
navigator.getUserMedia({video:true}, function (stream) { video.src = window.webkitURL.createObjectURL(stream);
}, function (error) { alert(error); } );
複製程式碼
程式碼如下:
function scamera() {
function scamera() {
var canvasObj = document.getElementByIdx_x_x('canvas1'); var context1 = canvasObj.getContext('2d'); 🎜>context1.fillRect(0, 0, 320, 240);
context1.drawImage(videoElement, 0, 0, 320, 240);
}
複製程式碼
程式碼如下: var imgData=canvas.toDataURL(“image/png”); imgData格式如下:”data:image/png;base64,xxxxx“ 真正圖像資料是base64編碼逗號之後的部分