camera2_frame_queue_dst_ops Yapı Referansı
#include <
camera2.h
>
Veri Alanları |
|
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) |
Ayrıntılı Açıklama
Kare çıkışı sırası protokolü:
Çerçeve, sırayı ve içeriğini tutar. Başlangıçta sıra boştur.
- Cihaz, bir çıkış meta veri çerçevesini doldurmaya hazır olduğunda, gerekli boyuttaki bir meta veri arabelleğinin sırasını kaldırmalıdır.
- Ardından, meta veri arabelleğini doldurmalı ve enqueue_frame işlevini kullanarak çerçeve kuyruğuna yerleştirmelidir. Çerçevenin sahipliğini çerçeve alır.
- Hata, ardışık düzenin temizlenmesi veya kapatılması isteği durumunda cihaz, etkilenen ve sıra dışı bırakılan tüm kareleri, cancel_frame'i çağırarak çerçeveye döndürmelidir.
Alan Belgeleri
int(* cancel_frame)(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer) |
Sıradan çıkarılan bir meta veri arabelleğini yeniden kullanmak için çerçeveye döndürün; doldurulmuş olarak işaretlemeyin. Hatalarla karşılaşıldığında veya dahili istek kuyruğu temizlendiğinde kullanın.
Tanımı, camera2.h dosyasının 278. satırı içindedir.
int(* dequeue_frame)(const struct camera2_frame_queue_dst_ops *q, size_t entries, size_t data_bytes, camera_metadata_t **buffer) |
Çerçeveden doldurulacak boş bir meta veri arabelleği alın. Yeni meta veri arabelleğinde, entries sayıda meta veri girişi ve data_bytes değerinde ek depolama alanı için yer bulunur. Buradan çıkarılan kareler, cancel_frame veya enqueue_frame ile çerçeveye döndürülmelidir.
int(* enqueue_frame)(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer) |
Bu yapının dokümanları aşağıdaki dosyadan oluşturulmuştur:
- hardware/libhardware/include/hardware/ camera2.h