camera3_capture_request-Strukturreferenz

camera3_capture_request-Strukturreferenz

#include < camera3.h >

Datenfelder

uint32_t Rahmennummer
const camera_metadata_t * Einstellungen
camera3_stream_buffer_t * input_buffer
uint32_t num_output_buffers
const camera3_stream_buffer_t * Ausgabepuffer

detaillierte Beschreibung

camera3_capture_request_t:

Eine einzelne Anfrage zur Bilderfassung/Puffer-Neuverarbeitung, die vom Framework in „process_capture_request()“ an das Kamera-HAL-Gerät gesendet wird.

Die Anfrage enthält die für diese Aufnahme zu verwendenden Einstellungen und den Satz von Ausgabepuffern, in die die resultierenden Bilddaten geschrieben werden sollen. Sie kann optional einen Eingabepuffer enthalten. In diesem Fall dient die Anfrage dazu, diesen Eingabepuffer erneut zu verarbeiten, anstatt einen neuen zu erfassen Bild mit dem Kamerasensor. Die Aufnahme wird durch die Frame_Nummer identifiziert.

Als Antwort muss das Kamera-HAL-Gerät asynchron eine camera3_capture_result- Struktur an das Framework senden, indem es den Rückruf „process_capture_result()“ verwendet.

Definition in Zeile 2135 der Datei camera3.h .

Felddokumentation

uint32_t Frame_Nummer

Die Bildnummer ist eine aufsteigende Ganzzahl, die vom Framework festgelegt wird, um diese Aufnahme eindeutig zu identifizieren. Es muss im Ergebnisaufruf zurückgegeben werden und wird auch zur Identifizierung der Anforderung in asynchronen Benachrichtigungen verwendet, die an camera3_callback_ops_t.notify() gesendet werden.

Definition in Zeile 2142 der Datei camera3.h .

Der Eingabestream-Puffer, der für diese Anfrage verwendet werden soll, falls vorhanden.

Wenn input_buffer NULL ist, handelt es sich bei der Anforderung um eine neue Aufnahme vom Imager. Wenn input_buffer gültig ist, besteht die Anforderung darin, das in input_buffer enthaltene Bild erneut zu verarbeiten.

Im letzteren Fall muss die HAL den release_fence des input_buffer auf einen gültigen Synchronisierungszaun oder auf -1 setzen, wenn die HAL keine Synchronisierung unterstützt, bevor Process_Capture_Request() zurückkehrt.

Der HAL muss auf den Acquire-Sync-Fence des Eingabepuffers warten, bevor er darauf zugreift.

<= CAMERA_DEVICE_API_VERSION_3_1:

Jeder hier enthaltene Eingabepuffer wurde vor seiner Aufnahme in eine Anfrage über register_stream_buffers() bei der HAL registriert.

>= CAMERA_DEVICE_API_VERSION_3_2:

Die Puffer wurden nicht bei der HAL vorregistriert. Nachfolgende Anforderungen können Puffer wiederverwenden oder völlig neue Puffer bereitstellen.

Definition in Zeile 2177 der Datei camera3.h .

uint32_t num_output_buffers

Die Anzahl der Ausgabepuffer für diese Erfassungsanforderung. Muss mindestens 1 sein.

Definition in Zeile 2183 der Datei camera3.h .

const camera3_stream_buffer_t * Output_buffers

Ein Array von num_output_buffers Stream-Puffer, die mit Bilddaten aus dieser Erfassung/Neuverarbeitung gefüllt werden. Der HAL muss auf die Erfassungsgrenzen jedes Stream-Puffers warten, bevor er darauf schreibt.

Die HAL übernimmt den Besitz der tatsächlichen buffer_handle_t-Einträge in „output_buffers“; Das Framework greift nicht auf sie zu, bis sie in einem camera3_capture_result_t zurückgegeben werden.

<= CAMERA_DEVICE_API_VERSION_3_1:

Alle hier enthaltenen Puffer wurden vor ihrer Aufnahme in eine Anfrage über register_stream_buffers() bei der HAL registriert.

>= CAMERA_DEVICE_API_VERSION_3_2:

Einige oder alle der hier enthaltenen Puffer sind möglicherweise brandneu in dieser Anfrage (da sie noch nie von der HAL gesehen wurden).

Definition in Zeile 2204 der Datei camera3.h .

const camera_metadata_t * Einstellungen

Der Einstellungspuffer enthält die Erfassungs- und Verarbeitungsparameter für die Anfrage. Als Sonderfall gibt ein NULL-Einstellungspuffer an, dass die Einstellungen mit der zuletzt übermittelten Erfassungsanforderung identisch sind. Ein NULL-Puffer kann nicht als erste übermittelte Anfrage nach einem configure_streams()-Aufruf verwendet werden.

Definition in Zeile 2151 der Datei camera3.h .


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