camera2_stream_ops-Strukturreferenz

camera2_stream_ops-Strukturreferenz

#include < camera2.h >

Datenfelder

int(* dequeue_buffer )(const struct camera2_stream_ops *w, buffer_handle_t **buffer)
int(* enqueue_buffer )(const struct camera2_stream_ops *w, int64_t timestamp, buffer_handle_t *buffer)
int(* cancel_buffer )(const struct camera2_stream_ops *w, buffer_handle_t *buffer)
int(* set_crop )(const struct camera2_stream_ops *w, int links, int oben, int rechts, int unten)

detaillierte Beschreibung

Schnittstelle für die Ausgabe-Bildstream-Warteschlange. Eine Reihe dieser Methoden wird dem HAL-Gerät in allocate_stream() bereitgestellt und zur Interaktion mit der Gralloc-Pufferwarteschlange für diesen Stream verwendet. Sie dürfen erst nach der Rückkehr von allocate_stream aufgerufen werden.

Definition in Zeile 73 der Datei camera2.h .

Felddokumentation

int(* cancel_buffer)(const struct camera2_stream_ops *w, buffer_handle_t *buffer)

Geben Sie einen Puffer an die Warteschlange zurück, ohne ihn als gefüllt zu markieren.

Definition in Zeile 102 der Datei camera2.h .

int(* dequeue_buffer)(const struct camera2_stream_ops *w, buffer_handle_t **buffer)

Holen Sie sich einen Puffer zum Füllen aus der Warteschlange. Die Größe und das Format des Puffers sind für einen bestimmten Stream festgelegt (definiert in allocate_stream), und der Schritt sollte vom Plattform-Gralloc-Modul abgefragt werden. Der Gralloc-Puffer wurde basierend auf den von allocate_stream bereitgestellten Nutzungsflags zugewiesen und für die Verwendung gesperrt.

Definition in Zeile 81 der Datei camera2.h .

int(* enqueue_buffer)(const struct camera2_stream_ops *w, int64_t timestamp, buffer_handle_t *buffer)

Schieben Sie einen gefüllten Puffer in den Stream, der vom Verbraucher verwendet werden soll.

Der Zeitstempel stellt den Zeitpunkt zu Beginn der Belichtung der ersten Bildzeile dar; Es muss von einer monotonen Uhr stammen und wird in Nanosekunden gemessen. Die Zeitstempel müssen nicht zwischen verschiedenen Kameras oder aufeinanderfolgenden Instanzen derselben Kamera vergleichbar sein. Sie müssen jedoch zwischen Streams derselben Kamera vergleichbar sein. Wenn eine Aufnahme Puffer für mehrere Streams erzeugt, muss jeder Stream denselben Zeitstempel für diesen Puffer haben und dieser Zeitstempel muss mit dem Zeitstempel in den Metadaten des Ausgabeframes übereinstimmen.

Definition in Zeile 96 der Datei camera2.h .

int(* set_crop)(const struct camera2_stream_ops *w, int links, int oben, int rechts, int unten)

Legen Sie das Zuschneidefenster für nachfolgend in die Warteschlange gestellte Puffer fest. Die Parameter werden in Pixel relativ zur Pufferbreite und -höhe gemessen.

Definition in Zeile 108 der Datei camera2.h .


Die Dokumentation für diese Struktur wurde aus der folgenden Datei generiert:
  • hardware/libhardware/include/hardware/ camera2.h