referencia de estructura camera3_capture_request
#include < camera3.h >
Campos de información | |
uint32_t | número de cuadro |
constante cámara_metadatos_t * | ajustes |
cámara3_stream_buffer_t * | búfer_entrada |
uint32_t | num_output_buffers |
cámara constante3_stream_buffer_t * | buffers_salida |
Descripción detallada
cámara3_capture_request_t:
Una única solicitud de captura de imágenes/reprocesamiento del búfer, enviada al dispositivo Camera HAL por el marco en process_capture_request().
La solicitud contiene la configuración que se utilizará para esta captura y el conjunto de búferes de salida para escribir los datos de la imagen resultante. Opcionalmente, puede contener un búfer de entrada, en cuyo caso la solicitud es para reprocesar ese búfer de entrada en lugar de capturar un nuevo búfer. imagen con el sensor de la cámara. La captura se identifica por el frame_number.
En respuesta, el dispositivo HAL de la cámara debe enviar una estructura camera3_capture_result de forma asincrónica al marco, utilizando la devolución de llamada process_capture_result().
Documentación de campo
uint32_t número_cuadro |
El número de fotograma es un número entero incremental establecido por el marco para identificar de forma única esta captura. Debe devolverse en la llamada de resultado y también se usa para identificar la solicitud en notificaciones asincrónicas enviadas a camera3_callback_ops_t.notify() .
cámara3_stream_buffer_t * input_buffer |
El búfer de flujo de entrada que se utilizará para esta solicitud, si corresponde.
Si input_buffer es NULL, entonces la solicitud es para una nueva captura del generador de imágenes. Si input_buffer es válido, la solicitud es para reprocesar la imagen contenida en input_buffer.
En el último caso, HAL debe establecer Release_fence de input_buffer en un límite de sincronización válido, o en -1 si HAL no admite sincronización, antes de que Process_capture_request() regrese.
Se requiere que HAL espere en el límite 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 incluido aquí se habrá registrado con HAL a través de Register_stream_buffers() antes de su inclusión en una solicitud.
>= CAMERA_DEVICE_API_VERSION_3_2:
Los buffers no habrán sido prerregistrados en HAL. Las solicitudes posteriores pueden reutilizar buffers o proporcionar buffers completamente nuevos.
uint32_t num_output_buffers |
const camera3_stream_buffer_t * salida_buffers |
Una matriz de búferes de flujo num_output_buffers, que se completarán con datos de imagen de esta captura/reprocesamiento. HAL debe esperar en los límites de adquisición de cada búfer de flujo antes de escribir en ellos.
HAL toma posesión de las entradas reales de buffer_handle_t en output_buffers; el marco no accede a ellos hasta que se devuelven en un camera3_capture_result_t.
<= CAMERA_DEVICE_API_VERSION_3_1:
Todos los buffers incluidos aquí habrán sido registrados con HAL a través de Register_stream_buffers() antes de su inclusión en una solicitud.
>= CAMERA_DEVICE_API_VERSION_3_2:
Cualquiera o todos los buffers incluidos aquí pueden ser nuevos en esta solicitud (nunca antes vistos por HAL).
const camera_metadata_t * configuración |
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 enviada más recientemente. No se puede utilizar un búfer NULL como la primera solicitud enviada después de una llamada a configure_streams().
La documentación para esta estructura se generó a partir del siguiente archivo:
- hardware/libhardware/include/hardware/ camera3.h