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.
Zum Erfassen von JPEG-Bildern wird ein Stream mit dem 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 mithilfe dieser Struktur in den Ausgabestream-Puffer aufnehmen. Das JPEG-Blob-ID-Feld muss auf CAMERA3_JPEG_BLOB_ID gesetzt sein.
Der Transport-Header 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. Jeder HAL, der diesen Transportheader verwendet, muss ihn in android.jpeg.maxSize berücksichtigen. Die JPEG-Daten selbst beginnen am Anfang des Puffers und sollten eine Länge von jpeg_size Bytes haben.
Felddokumentation
Die Dokumentation für diese Struktur wurde aus der folgenden Datei generiert:
- hardware/libhardware/include/hardware/ camera3.h