camera3_jpeg_blob Strukturreferenz
#include < camera3.h >
Datenfelder | |
uint16_t | jpeg_blob_id |
uint32_t | jpeg_size |
detaillierte Beschreibung
Transportheader für komprimierte JPEG-Puffer in Ausgabestreams.
Um JPEG-Bilder aufzunehmen, wird ein Stream im Pixelformat HAL_PIXEL_FORMAT_BLOB erstellt. Die Puffergröße für den Stream wird vom Framework basierend auf dem statischen Metadatenfeld android.jpeg.maxSize berechnet. Da komprimierte JPEG-Bilder eine variable Größe haben, muss die HAL die endgültige Größe des komprimierten Bildes unter Verwendung dieser Struktur in den Ausgabestream-Puffer aufnehmen. Das JPEG-Blob-ID-Feld muss auf CAMERA3_JPEG_BLOB_ID gesetzt sein.
Der Transportheader sollte sich am Ende des JPEG-Ausgabestream-Puffers befinden. Das bedeutet, dass die jpeg_blob_id bei Byte [buffer_size - sizeof (camera3_jpeg_blob)] beginnen muss, wobei buffer_size die Größe des Gralloc-Puffers ist. Jede HAL, die diesen Transportheader verwendet, muss dies in android.jpeg.maxSize berücksichtigen. Die JPEG-Daten selbst beginnen am Anfang des Puffers und sollten jpeg_size Bytes lang sein.
Felddokumentation
Die Dokumentation für diese Struktur wurde aus der folgenden Datei generiert:
- hardware / libhardware / include / hardware / camera3.h