Referência de estrutura camera3_capture_request
#include < camera3.h >
Campos de dados | |
uint32_t | número do quadro |
const camera_metadata_t * | configurações |
câmera3_stream_buffer_t * | buffer_de entrada |
uint32_t | num_output_buffers |
const camera3_stream_buffer_t * | buffer_de saída |
Descrição detalhada
camera3_capture_request_t:
Uma única solicitação de captura de imagem/reprocessamento de buffer, enviada ao dispositivo Camera HAL pela estrutura em process_capture_request().
A solicitação contém as configurações a serem usadas para esta captura e o conjunto de buffers de saída para gravar os dados da imagem resultante. Opcionalmente, pode conter um buffer de entrada, caso em que a solicitação é para reprocessar esse buffer de entrada em vez de capturar um novo imagem com o sensor da câmera. A captura é identificada pelo frame_number.
Em resposta, o dispositivo HAL da câmera deve enviar uma estrutura camera3_capture_result de forma assíncrona para a estrutura, usando o retorno de chamada process_capture_result().
Documentação de campo
uint32_t número_do_quadro |
O número do quadro é um número inteiro incremental definido pela estrutura para identificar exclusivamente esta captura. Ele precisa ser retornado na chamada de resultado e também é usado para identificar a solicitação em notificações assíncronas enviadas para camera3_callback_ops_t.notify() .
camera3_stream_buffer_t * input_buffer |
O buffer de fluxo de entrada a ser usado para esta solicitação, se houver.
Se input_buffer for NULL, então a solicitação é para uma nova captura do gerador de imagens. Se input_buffer for válido, a solicitação é para reprocessar a imagem contida em input_buffer.
Neste último caso, o HAL deve definir o release_fence do input_buffer para um limite de sincronização válido, ou para -1 se o HAL não suportar sincronização, antes que process_capture_request() retorne.
O HAL é obrigado a aguardar a sincronização de aquisição do buffer de entrada antes de acessá-lo.
<= CAMERA_DEVICE_API_VERSION_3_1:
Qualquer buffer de entrada incluído aqui terá sido registrado no HAL por meio de register_stream_buffers() antes de sua inclusão em uma solicitação.
>= CAMERA_DEVICE_API_VERSION_3_2:
Os buffers não terão sido pré-registrados no HAL. As solicitações subsequentes podem reutilizar buffers ou fornecer buffers totalmente novos.
uint32_t num_output_buffers |
const camera3_stream_buffer_t * saída_buffers |
Uma matriz de buffers de fluxo num_output_buffers, a serem preenchidos com dados de imagem desta captura/reprocessamento. O HAL deve aguardar as barreiras de aquisição de cada buffer de fluxo antes de gravar neles.
O HAL assume a propriedade das entradas buffer_handle_t reais em output_buffers; a estrutura não os acessa até que sejam retornados em camera3_capture_result_t.
<= CAMERA_DEVICE_API_VERSION_3_1:
Todos os buffers incluídos aqui terão sido registrados no HAL através de register_stream_buffers() antes de serem incluídos em uma solicitação.
>= CAMERA_DEVICE_API_VERSION_3_2:
Qualquer um ou todos os buffers incluídos aqui podem ser novos nesta solicitação (nunca antes vistos pelo HAL).
const camera_metadata_t * configurações |
O buffer de configurações contém os parâmetros de captura e processamento da solicitação. Como um caso especial, um buffer de configurações NULL indica que as configurações são idênticas à solicitação de captura enviada mais recentemente. Um buffer NULL não pode ser usado como a primeira solicitação enviada após uma chamada configure_streams().
A documentação desta estrutura foi gerada a partir do seguinte arquivo:
- hardware/libhardware/incluir/hardware/ camera3.h