2016-11-29 1 views
1

Ich benutze die neue Camera 2 API, bezieht sich speziell auf Camera2Raw Beispiel von Google zur Verfügung gestellt, um mein Bild als DNG-Datei zu speichern. Allerdings möchte ich diese DNG-Datei lesen und in der nächsten Aktivität verarbeiten.Lesen von RAW DNG-Dateien in Android

Von dem, was ich online gelesen habe, haben wir keine direkte Methode, um die Datei zu lesen. Mein Ansatz bestand darin, die Exif-Daten mit der ExifInterface-Klasse zu verwenden, um die Breite und die Höhe zu ermitteln und dann den Datenstrom als Eingabe zu verwenden und einen Encoder für das RAW-Bild zu erstellen.

Die ExifData war jedoch null für die DNG-Datei. Legt Android die Daten fest oder muss ich bei CaptureRequest etwas anderes machen? Das JPEG-kodierte Bild für dasselbe hatte viele Informationen.

Wie kann ich sicherstellen, dass die Metadaten für das DNG-Image vollständig sind? Vielen Dank. Und gibt es eine einfachere Möglichkeit, die DNG-Datei zu lesen?

Antwort

1

Wenn Sie rechts die DngCreator Klasse von Camera2 Api all Metadaten sollten in Ordnung sein, nur nicht vergessen, um die Orientierung zu setzen und die Breite/Höhe Werte, die Sie auf Ihrem ImageReader Rückruf von Ihrem Image Artikel bekommen.

Wenn Sie die Metadaten der DNG-Dateien überprüfen möchten, sollten Sie ein Programm wie Adobe Photoshop oder Adboe LightRoom (für Ihr Telefongerät) verwenden. Anyway in Android N können Sie DNG-Dateien mit der Klasse MediaScanner erkennen, wenn ich nicht falsch liege.