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 entries, 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 fotogrammi:
Il framework contiene la coda e i relativi contenuti. All'inizio la coda è vuota.
- Quando il dispositivo è pronto a compilare un frame dei metadati di output, deve rimuovere dalla coda un buffer dei metadati delle dimensioni richieste.
- Dovrebbe quindi riempire il buffer dei metadati e inserirlo nella coda dei frame utilizzando enqueue_frame. Il framework acquisisce la proprietà del frame.
- In caso di errore, di una richiesta di svuotamento della pipeline o di arresto, il dispositivo deve restituire al framework gli eventuali frame dequeued interessati chiamando cancel_frame.
Documentazione dei campi
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 entries, size_t data_bytes, camera_metadata_t **buffer) |
Recupera un buffer di metadati vuoto da compilare dal framework. Il nuovo buffer dei metadati avrà spazio per il numero di voci di metadati, oltre a uno spazio di archiviazione aggiuntivo pari a data_bytes. I frame dequeued 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 di questa struttura è stata generata dal seguente file:
- hardware/libhardware/include/hardware/ camera2.h