Obsoleto

Esta función ya no se recomienda. Aunque es posible que algunos navegadores aún lo admitan, es posible que ya se haya eliminado de los estándares web relevantes, que esté en proceso de ser eliminado o que solo se conserve por motivos de compatibilidad. Evite usarlo y actualice el código existente si es posible; consulte la tabla de compatibilidad al final de esta página para guiar su decisión. Tenga en cuenta que esta función puede dejar de funcionar en cualquier momento.

El desaprobado Navigator.getUserMedia() El método solicita al usuario permiso para usar hasta un dispositivo de entrada de video (como una cámara o pantalla compartida) y hasta un dispositivo de entrada de audio (como un micrófono) como fuente para un MediaStream.

Si se concede el permiso, MediaStream cuyas pistas de video y / o audio provienen de esos dispositivos se envía a la devolución de llamada exitosa especificada. Si se deniega el permiso, no existen dispositivos de entrada compatibles o se produce cualquier otra condición de error, la devolución de llamada de error se ejecuta con un MediaStreamError objeto que describe lo que salió mal. Si el usuario, en cambio, no hace ninguna elección, no se ejecuta ninguna devolución de llamada.

Este es un método heredado. Utilice el más nuevo navigator.mediaDevices.getUserMedia() en lugar de. Aunque técnicamente no está en desuso, esta antigua versión de devolución de llamada está marcada como tal, ya que la especificación recomienda encarecidamente el uso de la nueva versión de devolución de promesa.

Sintaxis

navigator.getUserMedia(constraints, successCallback, errorCallback);

Parámetros

constraints
A MediaStreamConstraints objeto que especifica los tipos de medios a solicitar, junto con los requisitos para cada tipo. Para obtener más detalles, consulte la sección de restricciones en el moderno MediaDevices.getUserMedia() método, así como el artículo Capacidades, restricciones y configuraciones.
successCallback
Una función que se invoca cuando se aprueba la solicitud de acceso a los medios. La función se llama con un parámetro: el MediaStream objeto que contiene el flujo de medios. Su devolución de llamada puede asignar la secuencia al objeto deseado (como un o elemento), como se muestra en el siguiente ejemplo:

function(stream)var video = document.querySelector('video');
   video.srcObject = stream;
   video.onloadedmetadata=function(e)// Do something with the video here.;
errorCallback
Cuando la llamada falla, la función especificada en el errorCallback se invoca con un MediaStreamError el objeto como único argumento; este objeto está modelado en DOMException. Consulte Errores a continuación para obtener una lista de los errores que pueden ocurrir.

Valor devuelto

undefined.

Errores

page (“/ en-US / docs / Web / API / MediaDevices / getUserMedia”, “Errores”)

Ejemplos de

Anchura y altura

Aquí hay un ejemplo de uso getUserMedia(), incluido el código para hacer frente a los prefijos de varios navegadores. Tenga en cuenta que esta es la forma obsoleta de hacerlo: consulte la sección Ejemplos en la MediaDevices.getUserMedia() para ejemplos modernos.

navigator.getUserMedia = navigator.getUserMedia ||
                         navigator.webkitGetUserMedia ||
                         navigator.mozGetUserMedia;if(navigator.getUserMedia)
   navigator.getUserMedia( audio:true, video: width:1280, height:720,function(stream)var video = document.querySelector('video');
         video.srcObject = stream;
         video.onloadedmetadata=function(e)
           video.play();;,function(err)
         console.log("The following error occurred: "+ err.name););else
   console.log("getUserMedia not supported");

Permisos

Usar getUserMedia() en una aplicación instalable (por ejemplo, un Aplicación Firefox OS), debe especificar uno o ambos de los siguientes campos dentro de su archivo de manifiesto:

"permissions":"audio-capture":"description":"Required to capture audio using getUserMedia()","video-capture":"description":"Required to capture video using getUserMedia()"

Ver permiso: captura de audio y permiso: captura de video para más información.

Compatibilidad del navegador

Escritorio Móvil
Cromo Borde Firefox explorador de Internet Ópera Safari WebView Android Chrome Android Firefox para Android Opera Android Safari en IOS Internet de Samsung
getUserMedia 5321 1279 17La sintaxis de restricción descrita aquí está disponible a partir de Firefox 38. Las versiones anteriores (32-37) usaban una sintaxis de restricción desactualizada, pero la sintaxis descrita aquí está disponible allí a través de adapter.js polyfill. No 401512-15 11-12 5340 5325 24La sintaxis de restricción descrita aquí está disponible a partir de Firefox 38. Las versiones anteriores (32-37) usaban una sintaxis de restricción desactualizada, pero la sintaxis descrita aquí está disponible allí a través de adapter.js polyfill. 411412-14 11-12 6.01.5

Se debe usar un nuevo código Navigator.mediaDevices.getUserMedia() en lugar de.

Ver también

  • MediaDevices.getUserMedia() que reemplaza este método obsoleto.
  • WebRTC: la página de introducción a la API
  • MediaStream API: la API para los objetos de flujo de medios
  • Tomar fotos de la cámara web: un tutorial sobre el uso getUserMedia() for taking photos rather than video.