Capturando uma imagem de uma webcam
Eu estou tentando capturar aleatoriamente uma imagem de uma webcam e, em seguida, salvá-lo no meu servidor, agora eu estou usando getUserMedia para transmitir a webcam ao elemento de vídeo, então eu posso capturar uma imagem para uma tela usando um botão, mas eu sou Não sei como salvar essa imagem da tela para o meu servidor.
Outra questão é getUserMedia só funciona no Chrome, Opera e Firefox, existe alguma alternativa para o IE?
É com isso que estou trabalhando atualmente:
<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>`
Obrigado Heaps