Saltar al contenido

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

Este equipo de trabajo ha estado horas investigando para darle respuesta a tus dudas, te compartimos la soluciones de modo que esperamos resultarte de gran ayuda.

Solución:

Puede usar esta muestra de trabajo

 

  
  
  
    

Take a snapshot of the current video stream

Click on the Start WebCam button.

Screenshots :

Ha habido actualizaciones en la API getUserMedia que ahora exponen takePhoto y grabFrame. El método grabFrame es menos emocionante porque hace lo que hemos estado haciendo todo el tiempo y solo devuelve el siguiente cuadro de video de la transmisión, pero takePhoto interrumpe la transmisión para usar la “resolución de cámara fotográfica más alta disponible” de las cámaras para capturar una imagen blob comprimida. Más detalles aquí: google devs

var stream, imageCapture; 

function getMediaStream()
 
    window.navigator.mediaDevices.getUserMedia(video: true)
    .then(function(mediaStream)
     
        stream = mediaStream; 
        let mediaStreamTrack = mediaStream.getVideoTracks()[0];
        imageCapture = new ImageCapture(mediaStreamTrack);
        console.log(imageCapture);
    )
    .catch(error);


function error(error)
 
    console.error('error:', error); 


function takePhoto(img)
 document.querySelector('img');

    imageCapture.takePhoto()
    .then(blob => 
        let url = window.URL.createObjectURL(blob);
        img.src = url;

        window.URL.revokeObjectURL(url); 
    )
    .catch(error);
; 

/* just call */ 
getMediaStream(); 

/* and when you want to capture an image */ 
takePhoto();

valoraciones y comentarios

¡Haz clic para puntuar esta entrada!
(Votos: 2 Promedio: 5)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *