ver usar studio pantalla nox las grabar como capturas captura camara java android android-studio emulation avd

java - usar - Emulador de Android: no se puede iniciar la cámara web para capturar la imagen en el emulador



screenshot en nox (4)

He creado un emulador armeabi API 21 en el administrador de AVD en Android Studio, lo configuré para usar la cámara web como cámara frontal y lo lancé. El problema es que no puede abrirlo, ya que estoy recibiendo este error:

emulator: ERROR: camera_device_start_capturing: VIDIOC_STREAMON on camera ''/dev/video0'' has failed: Timer expired emulator: ERROR: _camera_client_query_start: Cannot start camera ''/dev/video0'' for NV21[640x480]: Inappropriate ioctl for device

¿Como puedo resolver esto?

La cámara web funciona normalmente con otro software. El sistema operativo es Ubuntu 14.04.


En Android Studio, vaya a AVD Manager, haga clic en el botón Editar (lápiz) en Acciones. Después de eso, en la siguiente ventana que aparece, haga clic en Configuración avanzada, y luego desplácese hacia abajo y en Opciones de la cámara, seleccione la cámara web para el frente y la parte posterior.


Para habilitar la cámara en su emulador de Android, simplemente agregue el siguiente código resaltado en el archivo config.ini de su AVD. Puede encontrar el archivo config.ini en su <userdirectory>/.android .

Archivo: ~/.android/config.ini

hw.lcd.density=160<br> skin.name=HVGA<br> skin.path=platforms/android-9/skins/HVGA<br> hw.cpu.arch=arm<br> abi.type=armeabi<br> vm.heapSize=24<br> image.sysdir.1=platforms/android-9/images/<br> hw.camera=yes<br> sdcard.size=64M<br>

En caso de que no encuentre el archivo config.ini o desee habilitar el soporte de la cámara a través de Android SDK y AVD Manager, haga lo siguiente:

Abra Android SDK y AVD Manager:

  1. Agregar tarjeta SD en AVD
    En la configuración de la tarjeta SD, establezca el valor de Tamaño. Para habilitar la cámara, la tarjeta SD debe estar habilitada en Emulator.
  2. Añadir soporte de cámara en hardware en AVD
    Ahora en la sección de Hardware, haga clic en el botón Nuevo para agregar el hardware de la Cámara. Se abrirá a continuación del cuadro de diálogo. Seleccione Soporte de cámara en el menú desplegable Propiedad y haga clic en Aceptar.
  3. Habilitar soporte de cámara en hardware
    El nuevo hardware: soporte de la cámara es visible en la sección de Hardware. Establezca su valor en sí y guarde los cambios presionando Editar AVD.
  4. Guarde los cambios y ejecute el emulador.

Puede intentar editar manualmente el archivo de configuración de AVD en

~ / .android / avd / yourAvdName / config.ini

agregando esta línea:

hw.camera=yes

ACTUALIZAR

Puede intentar especificar la resolución real de su cámara web:

hw.camera.maxHorizontalPixels=XXX hw.camera.maxVerticalPixels=XXX

Tenga en cuenta que el valor predeterminado para maxHorizontalPixels es 640 y para maxVerticalPixels es 480 , por lo que cambiar estos valores puede ayudarlo a resolver sus problemas.


Tuve un problema similar con un mensaje de error ligeramente diferente en OS X. Resulté que todo estaba bien, pero el emulador se bloquea cuando la cámara tarda demasiado tiempo en inicializarse.

En mi caso, terminé cerrando otras aplicaciones y funcionó. Es posible que desee probar en una computadora más eficiente.