Tôi đang cố chụp ngẫu nhiên một hình ảnh từ webcam rồi lưu nó vào máy chủ của tôi, ngay bây giờ tôi đang sử dụng getUserMedia để truyền trực tuyến webcam thành phần tử video sau đó tôi có thể chụp ảnh một bức tranh bằng cách sử dụng một nút nhưng tôi không chắc chắn làm thế nào để lưu hình ảnh đó từ vải vào máy chủ của tôi.Chụp ảnh từ webcam
Một vấn đề khác là getUserMedia chỉ hoạt động trong Chrome, Opera và Firefox, có cách nào khác cho IE không?
Đây là những gì tôi đang hiện đang làm việc với:
<video id="video" width="640" height="480" autoplay></video>
<button id="snap">Snap Photo</button>
<canvas id="canvas" width="640" height="480"></canvas>
<button id="getBase" onclick="getBase()">Get Base64</button>
<textarea id="textArea"></textarea>
<script>
// Put event listeners into place
window.addEventListener("DOMContentLoaded", function() {
// Grab elements, create settings, etc.
var canvas = document.getElementById("canvas"),
context = canvas.getContext("2d"),
video = document.getElementById("video"),
videoObj = { "video": true },
errBack = function(error) {
console.log("Video capture error: ", error.code);
};
// Put video listeners into place
if(navigator.getUserMedia) { // Standard
navigator.getUserMedia(videoObj, function(stream) {
video.src = stream;
video.play();
}, errBack);
} else if(navigator.webkitGetUserMedia) { // WebKit-prefixed
navigator.webkitGetUserMedia(videoObj, function(stream){
video.src = window.webkitURL.createObjectURL(stream);
video.play();
}, errBack);
}
// Trigger photo take
document.getElementById("snap").addEventListener("click", function() {
context.drawImage(video, 0, 0, 640, 480);
});
document.getElementByID("getBase").addEventListener("click", getBase());
}, false);
function getBase(){
var imgBase = canvas.toDataURL("image/png");
document.getElementByID("textArea").value=imgBase;
}
</script>`
Cảm ơn Heaps
Tôi đã cố gắng sử dụng toDataUrl, tôi đã thêm nút onClick vào một nút để gọi hàm sau 'function getBase() { var imgBase = canvas.toDataUrl(); document.getElementByID ("textArea"). Value = imgBase; } ' Điều này sẽ xuất chuỗi Base64 vào vùng văn bản mà tôi đã tạo. Bất kỳ manh mối nào tại sao nó không? – TurtleTopiary
thử chỉ định định dạng như vậy: '.toDataURL (" image/png ");' có thể? –
oh và có thể là URL so với URL? –