مرجع بنية camera2_frame_queue_dst_ops
#include <
camera2.h
>
حقول البيانات |
|
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) |
وصف مفصّل
بروتوكول "قائمة الانتظار لإخراج اللقطات":
يتضمّن الإطار المحتوى في "قائمة المحتوى التالي". في البداية، تكون قائمة المحتوى التالي فارغة.
- عندما يكون الجهاز جاهزًا لملء إطار بيانات وصفية للإخراج، يجب إزالة مخزن مؤقت للبيانات الوصفية من الصفّ بالحجم المطلوب.
- من المفترض أن يملأ ذلك بعد ذلك ذاكرة التخزين المؤقت للبيانات الوصفية، ويضع البيانات في قائمة انتظار اللقطات باستخدام enqueue_frame. يحصل إطار العمل على ملكية الإطار.
- في حال حدوث خطأ أو طلب إفراغ مسار الإرسال أو إيقاف التشغيل، يجب أن يُرجع الجهاز إلى إطار العمل أيّ لقطات متأثرة تمّت إزالتها من "قائمة الانتظار" من خلال استدعاء cancel_frame.
مستندات الحقل
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) |
الحصول على ذاكرة تخزين مؤقتة فارغة للبيانات الوصفية لملئها من إطار العمل سيتوفّر في ذاكرة التخزين المؤقت الجديدة للبيانات الوصفية مساحة لإضافة عدد الإدخالات من البيانات الوصفية، بالإضافة إلى مساحة تخزين إضافية بسعة data_bytes. يجب إرجاع اللقطات التي تم إزالة صفها هنا إلى إطار العمل باستخدام cancel_frame أو enqueue_frame.
int(* enqueue_frame)(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer) |
تم إنشاء مستندات هذه البنية من الملف التالي:
- hardware/libhardware/include/hardware/ camera2.h