Ich arbeite an einer Bibliothek, um die Camera
API für Entwickler einfacher zu machen.Ideen der Quelle von QualcommCameraHardware native_get_picture: MSM_CAM_IOCTL_GET_PICTURE Zeitüberschreitung der Verbindung fehlgeschlagen?
Der Droid Incredible 2, im Hochformat mit der nach hinten gerichteten Kamera, kann kein Bild aufnehmen. Insbesondere ich diese Sequenz in LogCat erhalten:
08-18 09:25:52.094: E/QualcommCameraHardware(1368): native_get_picture: MSM_CAM_IOCTL_GET_PICTURE fd 25 error Connection timed out
08-18 09:25:52.094: E/QualcommCameraHardware(1368): getPicture failed!
08-18 09:25:52.094: E/QualcommCameraHardware(1368): get picture failed, giving jpeg callback with NULL data
Diese Nachrichten kommen ~ 5 Sekunden, nachdem ich takePicture()
auf den Camera
nennen, die mit einigen alten Quellcode passen ich für QualcommCameraHardware
sehen, die eine 5000ms Timeout auf die ioctl()
einrichtet Rufen Sie an, um mit der Kamerahardware zu sprechen.
Das Ergebnis ist, dass onPictureTaken()
eine null
byte[]
von JPEG-Daten übergeben wird, was bedeutet, dass wir kein Foto haben.
Das Gerät funktioniert mit meinem Code in allen anderen getesteten Konfigurationen, einschließlich Arbeiten im Hochformat mit der Frontkamera.
Weiß jemand etwas Bestimmtes, das diesen besonderen Fehler verursachen könnte?
UPDATE
ich den Fehler reproduzieren kann nicht mehr. Ich würde die Frage löschen, aber das ist anscheinend nicht möglich, sobald es Antworten gibt.
Haben Sie versucht, Bilder mit niedriger Auflösung aufzunehmen? –
@AliImran: Ich werde es irgendwann versuchen, wenn ich und meine Incredible 2 gleichzeitig am selben Ort sind. :-) Vielen Dank! – CommonsWare
@AliImran: Das Abdecken der Ausgabe mit einer niedrigeren Auflösung schien tatsächlich zu helfen, obwohl ich diesen speziellen Fehler nicht mehr bekam und stattdessen einfach eine korrupte Ausgabe erhielt. Vielen Dank! – CommonsWare