¿Cómo puedo capturar una imagen a través de la cámara web del usuario usando getUserMedia?

Quiero hacer un programa en la web que capture una imagen a través de la cámara web del usuario.

Estoy usando elgetUserMedia API web. Aquí está mi código, pero no funciona. ¿Cómo puedo cambiarlo para capturar la imagen de la cámara web?

<div id="container">
    <video autoplay="true" id="videoElement">

    </video>
</div>
<script>

</script>

Ahí está el JS:

var video = document.querySelector("#videoElement");

navigator.getUserMedia, elem = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia || navigator.oGetUserMedia;

console.log(navigator.getUserMedia);

if (navigator.getUserMedia) {
    navigator.getUserMedia({video: true}, handleVideo, videoError);
}

function handleVideo(stream) {
    video.src = window.URL.createObjectURL(stream);
}

function videoError(e) {
    // do something
}

Respuestas a la pregunta(3)

Su respuesta a la pregunta