Referência da estrutura camera2_stream_ops

Referência da estrutura camera2_stream_ops

#include < camera2.h >

Campos de dados

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 left, int top, int right, int bottom)
 

Descrição detalhada

Interface da fila de saída do fluxo de imagens. Um conjunto desses métodos é fornecido ao dispositivo HAL em allocate_stream() e usado para interagir com a fila de buffer gralloc para esse stream. Elas não podem ser chamadas até que allocate_stream seja retornado.

Definição na linha 73 do arquivo camera2.h .

Documentação do campo

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

Retorna um buffer para a fila sem marcá-lo como preenchido.

Definição na linha 102 do arquivo camera2.h .

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

Receber um buffer para preencher da fila. O tamanho e o formato do buffer são fixos para um determinado stream (definido em allocate_stream), e o passo precisa ser consultado no módulo gralloc da plataforma. O buffer gralloc será alocado com base nas flags de uso fornecidas por allocate_stream e será bloqueado para uso.

Definição na linha 81 do arquivo camera2.h .

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

Envio de um buffer preenchido para o stream a ser usado pelo consumidor.

O carimbo de data/hora representa o horário de início da exposição da primeira linha da imagem. Ele precisa ser de um relógio monótono e é medido em nanossegundos. Os carimbos de data/hora não precisam ser comparáveis entre câmeras diferentes ou instâncias consecutivas da mesma câmera. No entanto, eles precisam ser comparáveis entre os fluxos da mesma câmera. Se uma captura produzir buffers para vários fluxos, cada fluxo precisa ter o mesmo carimbo de data/hora para esse buffer, e esse carimbo precisa corresponder ao carimbo nos metadados do frame de saída.

Definição na linha 96 do arquivo camera2.h .

int(* set_crop)(const struct camera2_stream_ops *w, int left, int top, int right, int bottom)

Define a janela de corte para buffers enfileirados posteriormente. Os parâmetros são medidos em pixels em relação à largura e à altura do buffer.

Definição na linha 108 do arquivo camera2.h .


A documentação desse struct foi gerada com base no seguinte arquivo: