it-swarm.com.de

Android-Emulator: Webcam kann nicht gestartet werden, um Bilder im Emulator aufzunehmen

Ich habe im AVD-Manager in Android Studio einen armeabi API 21-Emulator erstellt, die Webcam als Frontkamera verwendet und gestartet .. Das Problem ist, dass es nicht in der Lage ist, sie zu öffnen, wie ich es bekomme dieser Fehler:

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

Wie kann ich das lösen?

Die Webcam funktioniert normalerweise mit anderer Software. Das Betriebssystem ist Ubuntu 14.04.

33

Wechseln Sie in Android Studio zu AVD Manager und klicken Sie unter Aktionen auf die Schaltfläche Bearbeiten (Stift). Klicken Sie anschließend im nächsten erscheinenden Fenster auf Erweiterte Einstellungen, scrollen Sie nach unten und wählen Sie unter Kameraoptionen Webcam für Vorder- und Rückseite aus. 

18
BST Kaal

Um die Kamera in Ihrem Android-Emulator zu aktivieren, fügen Sie der AVD-Datei config.ini den folgenden hervorgehobenen Code hinzu. Sie finden die config.ini-Datei in Ihrem <userdirectory>/.Android-Ordner.

Datei: ~/.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>

Falls Sie die config.ini-Datei nicht finden oder die Kameraunterstützung über Android SDK und AVD Manager aktivieren möchten, gehen Sie wie folgt vor:

Öffnen Sie Android SDK und AVD Manager:

  1. SD-Karte in AVD hinzufügen
    Legen Sie in der SD-Karteneinstellung den Wert für Größe fest. Um die Kamera zu aktivieren, muss die SD-Karte im Emulator aktiviert sein.
  2. Kameraunterstützung in Hardware unter AVD hinzufügen
    Klicken Sie jetzt im Abschnitt Hardware auf die Schaltfläche Neu, um Kamera-Hardware hinzuzufügen. Es öffnet sich folgendes Dialogfeld. Wählen Sie Kameraunterstützung aus der Eigenschaftsliste und klicken Sie auf OK.
  3. Kameraunterstützung in Hardware aktivieren  
    Die neue Hardware: Die Kameraunterstützung ist im Abschnitt Hardware sichtbar. Setzen Sie den Wert auf yes und speichern Sie die Änderungen, indem Sie auf AVD bearbeiten klicken.
  4. Speichern Sie die Änderungen und starten Sie den Emulator.  
12
Mayavi

Sie können versuchen, Ihre AVD-Konfigurationsdatei unter zu bearbeiten 

~/.Android/avd/yourAvdName/config.ini

indem Sie diese Zeile hinzufügen:

hw.camera=yes

UPDATE

Sie können versuchen, das echte Auflösung Ihrer Webcam anzugeben:

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

Beachten Sie, dass der Standardwert für maxHorizontalPixels _ ​​640 ist und für maxVerticalPixels _ ​​480 ist. Daher kann das Ändern dieser Werte Ihnen helfen, Ihre Probleme zu lösen.

6
bonnyz

Ich hatte ein ähnliches Problem mit einer etwas anderen Fehlermeldung unter OS X. Ich stellte fest, dass alles in Ordnung war, der Emulator jedoch abstürzt, wenn die Initialisierung der Kamera zu lange dauert.

In meinem Fall habe ich andere Anwendungen geschlossen und es hat funktioniert. Sie möchten möglicherweise auf einem leistungsfähigeren Computer testen.

1
Erdal G.