Referencia de la estructura camera2_stream_ops
#include <
camera2.h
>
Campos de datos |
|
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) |
Descripción detallada
Interfaz de la cola de transmisión de imágenes de salida. Se proporciona un conjunto de estos métodos al dispositivo HAL en allocate_stream() y se usan para interactuar con la cola de búfer de gralloc de ese flujo. Es posible que no se les llame hasta que se devuelva allocate_stream.
Documentación de campos
int(* cancel_buffer)(const struct camera2_stream_ops *w, buffer_handle_t *buffer) |
int(* dequeue_buffer)(const struct camera2_stream_ops *w, buffer_handle_t **buffer) |
Obtén un búfer para completar desde la fila. El tamaño y el formato del búfer son fijos para una transmisión determinada (definida en allocate_stream) y el paso se debe consultar desde el módulo gralloc de la plataforma. El búfer de gralloc se habrá asignado en función de las marcas de uso que proporciona allocate_stream y se bloqueará para su uso.
int(* enqueue_buffer)(const struct camera2_stream_ops *w, int64_t timestamp, buffer_handle_t *buffer) |
Envía un búfer completo al flujo para que lo use el consumidor.
La marca de tiempo representa la hora de inicio de la exposición de la primera fila de la imagen. Debe provenir de un reloj monotónico y se mide en nanosegundos. Las marcas de tiempo no tienen que ser comparables entre diferentes cámaras ni instancias consecutivas de la misma cámara. Sin embargo, deben ser comparables entre las transmisiones de la misma cámara. Si una captura produce búferes para varias transmisiones, cada una debe tener la misma marca de tiempo para ese búfer, y esa marca de tiempo debe coincidir con la marca de tiempo en los metadatos de la trama de salida.
int(* set_crop)(const struct camera2_stream_ops *w, int left, int top, int right, int bottom) |
La documentación de esta struct se generó a partir del siguiente archivo:
- hardware/libhardware/include/hardware/ camera2.h