camera2_frame_queue_dst_ops مرجع ساختار

camera2_frame_queue_dst_ops مرجع ساختار

#include < camera2.h >

فیلدهای داده

int(* dequeue_frame )(const struct camera2_frame_queue_dst_ops *q، size_t ورودی، size_t داده_بایت، camera_metadata_t **بافر)
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)

توصیف همراه با جزئیات

پروتکل صف خروجی فریم:

فریم ورک صف و محتویات آن را نگه می دارد. در شروع، صف خالی است.

  1. هنگامی که دستگاه آماده پر کردن یک فریم فراداده خروجی است، باید یک بافر ابرداده با اندازه مورد نیاز را از صف خارج کند.
  2. سپس باید بافر ابرداده را پر کرده و با استفاده از enqueue_frame آن را در صف فریم قرار دهد. چارچوب مالکیت فریم را می گیرد.
  3. در صورت بروز خطا، درخواست برای شستشوی خط لوله یا خاموش شدن، دستگاه باید با فراخوانی cancel_frame، فریم های شکسته شده را به فریمورک برگرداند.

تعریف در خط 263 فایل camera2.h .

مستندات میدانی

int(* cancel_frame)(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer)

یک بافر ابرداده حذف شده را برای استفاده مجدد به چارچوب برگردانید. آن را به عنوان پر علامت گذاری نکنید. هنگام مواجهه با خطا، یا شستشوی صف درخواست داخلی استفاده کنید.

تعریف در خط 278 فایل camera2.h .

int(* dequeue_frame)(const struct camera2_frame_queue_dst_ops *q، size_t ورودی، size_t data_bytes، camera_metadata_t **buffer)

یک بافر ابرداده خالی برای پر کردن از چارچوب دریافت کنید. بافر ابرداده جدید فضایی برای تعداد ورودی‌های ورودی‌های فراداده، به علاوه داده_بایت فضای ذخیره‌سازی اضافی خواهد داشت. فریم‌هایی که در اینجا قرار می‌گیرند باید با cancel_frame یا enqueue_frame به چارچوب برگردانده شوند.

تعریف در خط 270 فایل camera2.h .

int(* enqueue_frame)(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer)

یک فریم فراداده تکمیل شده را در صف خروجی فریم قرار دهید.

تعریف در خط 284 فایل camera2.h .


مستندات این ساختار از فایل زیر تولید شده است:
  • hardware/libhardware/include/hardware/ camera2.h