Referencia de la estructura camera3_capture_request

Referencia de la estructura camera3_capture_request

#include < camera3.h >

Campos de datos

uint32_t  frame_number
 
const camera_metadata_t settings
 
camera3_stream_buffer_t input_buffer
 
uint32_t  num_output_buffers
 
const camera3_stream_buffer_t output_buffers
 

Descripción detallada

camera3_capture_request_t:

Una sola solicitud de captura de imágenes o reprocesamiento de búferes que el framework envía al dispositivo HAL de la cámara en process_capture_request().

La solicitud contiene la configuración que se usará para esta captura y el conjunto de búferes de salida en los que se escribirán los datos de imagen resultantes. De manera opcional, puede contener un búfer de entrada, en cuyo caso la solicitud es para volver a procesar ese búfer de entrada en lugar de capturar una imagen nueva con el sensor de la cámara. El número de fotogramas identifica la captura.

En respuesta, el dispositivo de la HAL de la cámara debe enviar una estructura camera3_capture_result de forma asíncrona al framework con la devolución de llamada process_capture_result().

Definición en la línea 2135 del archivo camera3.h .

Documentación de campos

uint32_t frame_number

El número de fotogramas es un número entero incremental que establece el framework para identificar de forma única esta captura. Se debe mostrar en la llamada de resultado y también se usa para identificar la solicitud en las notificaciones asíncronas que se envían a camera3_callback_ops_t.notify() .

Definición en la línea 2142 del archivo camera3.h .

El búfer de flujo de entrada que se usará para esta solicitud, si corresponde.

Si input_buffer es NULL, la solicitud es para una nueva captura del generador de imágenes. Si input_buffer es válido, la solicitud es para volver a procesar la imagen contenida en input_buffer.

En el último caso, el HAL debe establecer el release_fence del input_buffer en una barrera de sincronización válida o en -1 si el HAL no admite la sincronización, antes de que se devuelva process_capture_request().

El HAL debe esperar en la cerca de sincronización de adquisición del búfer de entrada antes de acceder a él.

<= CAMERA_DEVICE_API_VERSION_3_1:

Cualquier búfer de entrada que se incluya aquí se habrá registrado con el HAL a través de register_stream_buffers() antes de su inclusión en una solicitud.

>= CAMERA_DEVICE_API_VERSION_3_2:

Los búferes no se habrán registrado previamente en el HAL. Las solicitudes posteriores pueden volver a usar los búferes o proporcionar búferes completamente nuevos.

Definición en la línea 2177 del archivo camera3.h .

uint32_t num_output_buffers

Es la cantidad de búferes de salida para esta solicitud de captura. Debe ser 1 como mínimo.

Definición en la línea 2183 del archivo camera3.h .

const camera3_stream_buffer_t * output_buffers

Es un array de búferes de transmisión de num_output_buffers que se completarán con datos de imagen de esta captura o este procesamiento. El sistema HAL debe esperar en los cierres de adquisición de cada búfer de transmisión antes de escribir en ellos.

El sistema HAL se apropia de las entradas buffer_handle_t reales en output_buffers. El framework no las accede hasta que se muestran en un camera3_capture_result_t.

<= CAMERA_DEVICE_API_VERSION_3_1:

Todos los búferes incluidos aquí se habrán registrado con el HAL a través de register_stream_buffers() antes de su inclusión en una solicitud.

>= CAMERA_DEVICE_API_VERSION_3_2:

Es posible que todos los búferes incluidos aquí sean nuevos en esta solicitud (el HAL nunca los haya visto antes).

Definición en la línea 2204 del archivo camera3.h .

const camera_metadata_t * settings

El búfer de configuración contiene los parámetros de captura y procesamiento de la solicitud. Como caso especial, un búfer de configuración NULL indica que la configuración es idéntica a la solicitud de captura que se envió más recientemente. No se puede usar un búfer NULL como la primera solicitud enviada después de una llamada a configure_streams().

Definición en la línea 2151 del archivo camera3.h .


La documentación de esta struct se generó a partir del siguiente archivo: