camera2_frame_queue_dst_ops Strukturreferenz
#include < camera2.h >
Datenfelder | |
int(* | dequeue_frame )(const struct camera2_frame_queue_dst_ops *q, size_t entries, size_t data_bytes, camera_metadata_t **buffer) |
int(* | cancel_frame )(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer) |
int(* | enqueue_frame )(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer) |
detaillierte Beschreibung
Protokoll der Frame-Ausgabewarteschlange:
Das Framework enthält die Warteschlange und ihren Inhalt. Beim Start ist die Warteschlange leer.
- Wenn das Gerät bereit ist, einen Ausgabemetadatenrahmen zu füllen, muss es einen Metadatenpuffer der erforderlichen Größe aus der Warteschlange entfernen.
- Anschließend sollte der Metadatenpuffer gefüllt und mit enqueue_frame in die Frame-Warteschlange gestellt werden. Das Framework übernimmt den Besitz des Frames.
- Im Falle eines Fehlers, einer Anforderung zum Leeren der Pipeline oder eines Herunterfahrens muss das Gerät alle betroffenen Frames aus der Warteschlange an das Framework zurückgeben, indem es cancel_frame aufruft.
Felddokumentation
int(* cancel_frame)(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer) |
int(* dequeue_frame)(const struct camera2_frame_queue_dst_ops *q, size_t entries, size_t data_bytes, camera_metadata_t **buffer) |
Holen Sie sich einen leeren Metadatenpuffer zum Füllen aus dem Framework. Der neue Metadatenpuffer bietet Platz für die Anzahl der Metadateneinträge sowie zusätzlichen Speicherplatz im Wert von data_bytes. Hier aus der Warteschlange entfernte Frames müssen entweder mit cancel_frame oder enqueue_frame an das Framework zurückgegeben werden.
int(* enqueue_frame)(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer) |
Die Dokumentation für diese Struktur wurde aus der folgenden Datei generiert:
- hardware/libhardware/include/hardware/ camera2.h