riferimento alla struttura camera2_frame_queue_dst_ops
riferimento alla struttura camera2_frame_queue_dst_ops
#include < camera2.h >
Campi dati | |
int(* | dequeue_frame )(const struct camera2_frame_queue_dst_ops *q, size_t voci, size_t data_bytes, camera_metadata_t **buffer) |
int(* | cancel_frame )(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer) |
int(* | enqueue_frame )(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer) |
Descrizione dettagliata
Protocollo della coda di output dei frame:
Il framework contiene la coda e il suo contenuto. All'inizio la coda è vuota.
- Quando il dispositivo è pronto per riempire un frame di metadati di output, deve rimuovere dalla coda un buffer di metadati della dimensione richiesta.
- Dovrebbe quindi riempire il buffer dei metadati e posizionarlo nella coda dei frame utilizzando enqueue_frame. Il framework assume la proprietà del frame.
- In caso di errore, richiesta di svuotamento della pipeline o arresto, il dispositivo deve restituire al framework tutti i frame rimossi dalla coda interessati chiamando cancel_frame.
Documentazione sul campo
int(* cancel_frame)(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer) |
int(* dequeue_frame)(const struct camera2_frame_queue_dst_ops *q, size_t voci, size_t data_bytes, camera_metadata_t **buffer) |
Ottieni un buffer di metadati vuoto da riempire dal framework. Il nuovo buffer di metadati avrà spazio per il numero di voci di metadati, oltre a data_byte di spazio di archiviazione aggiuntivo. I frame rimossi dalla coda qui devono essere restituiti al framework con cancel_frame o enqueue_frame.
int(* enqueue_frame)(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer) |
La documentazione per questa struttura è stata generata dal seguente file:
- hardware/libhardware/include/hardware/ camera2.h