Was ich erreichen möchte: Greife gleichzeitig auf die vorderen und hinteren Kameras zu.
Was ich erforscht habe: Ich weiß, Android Kamera API bietet keine Unterstützung für die Verwendung mehrerer Instanzen der Kamera und Sie müssen eine Kamera freigeben, bevor Sie die andere verwenden. Ich habe Dutzende Fragen dazu gelesen, ich weiß auf einigen Geräten ist es möglich (wie Samsung S4 oder andere neue Geräte von ihnen). Ich habe auch herausgefunden, dass es möglich ist, Zugriff auf beide in Android KitKat auf einigen Geräten zu haben. Ich weiß auch, dass es bei api & gt; = 21 möglich ist, mit der camera2-API auf beide gleichzeitig zuzugreifen, da es Thread-sicher ist.
Was ich bisher habe: eine Implementierung für den Zugriff auf die Kameras einzeln, um ein Bild-in-Bild bereitzustellen.
Ich weiß, dass es nicht möglich ist, eine Dual-Kamera gleichzeitig auf jedem Gerät zu implementieren, ich möchte nur einen Weg, um es für einige Geräte verfügbar zu machen.
Wie kann ich testen, ob das Gerät auf beide zugreifen kann?
Ich habe auch nach einer Bibliothek gesucht, die mir so etwas erlauben kann, aber ich habe nichts gefunden. Gibt es eine solche Bibliothek?
Ich möchte diese Funktion für so viele Geräte wie möglich zur Verfügung stellen, und für die anderen lasse ich den aktuellen Zustand (einer nach dem anderen) der Funktion.
Kann jemand bitte mir helfen, zumindest mit einigen Ratschlägen?
Danke !
Die Android-Kamera-APIs ermöglichen im Allgemeinen die gleichzeitige Verwendung mehrerer Kameras, aber die meisten Geräte verfügen in der Praxis nicht über ausreichende Hardwareressourcen, so dass beispielsweise häufig nur ein Kamerabildprozessor von beiden Kameras gemeinsam genutzt wird / p>
Es gibt keine Abfrage, die in den Android-APIs enthalten ist, die Ihnen im Voraus mitteilen, ob Sie mehrere Kameras gleichzeitig verwenden können.
Der einzige Weg zu erzählen ist, zu versuchen, eine zweite Kamera zu öffnen, wenn Sie bereits eine geöffnet haben. Wenn Sie die zweite Kamera öffnen können, können Sie Bild-in-Bild usw. machen. Wenn Sie eine Ausnahme beim Öffnen der zweiten Kamera erhalten, unterstützt das betreffende Gerät nicht das Öffnen beider Kameras.
Sie können aufgrund von Hardware-Einschränkungen nicht auf alle Kameras in allen Android-Mobiltelefonen zugreifen. Die beste Alternative kann die Kamera einzeln nacheinander verwenden. Dazu können Sie ein einzelnes Kameraobjekt verwenden und das Kamera-Gesicht ändern, um ein anderes Foto aufzunehmen.
Ich habe das in einer meiner Bewerbungen getan. Ссылка
Es ist möglich, die Android Camera2-API zu verwenden, aber wie oben angegeben, haben die meisten Geräte keine Hardware-Unterstützung. Wenn Sie ein Nexus 5X, Nexus 6 oder Nexus 6P haben, funktioniert es und Sie können mit diesem BothCameras App . Ich habe Blitting implementiert, um auch Videoaufnahmen (zusätzlich zu Standbildern) mit dem Hardware-h264-Encoder zu ermöglichen.