مرجع ساختار camera3_capture_request
#include < camera3.h >
فیلدهای داده | |
uint32_t | قاب_شماره |
const camera_metadata_t * | تنظیمات |
camera3_stream_buffer_t * | input_buffer |
uint32_t | num_output_buffers |
const camera3_stream_buffer_t * | خروجی_بافرها |
توصیف همراه با جزئیات
camera3_capture_request_t:
یک درخواست واحد برای ضبط تصویر/پردازش مجدد بافر، که توسط فریمورک موجود در process_capture_request () به دستگاه Camera HAL ارسال شده است.
درخواست شامل تنظیماتی است که برای این عکسبرداری استفاده میشود، و مجموعه بافرهای خروجی برای نوشتن دادههای تصویر حاصله. ممکن است به صورت اختیاری حاوی یک بافر ورودی باشد، در این صورت درخواست برای پردازش مجدد آن بافر ورودی به جای گرفتن یک بافر جدید است. تصویر با سنسور دوربین ضبط با فریم_شماره شناسایی می شود.
در پاسخ، دستگاه دوربین HAL باید یک ساختار camera3_capture_result را به صورت ناهمزمان به چارچوب ارسال کند، با استفاده از فراخوانی ()process_capture_result.
مستندات میدانی
uint32_t قاب_شماره |
شماره فریم یک عدد صحیح افزایشی است که توسط فریم ورک برای شناسایی منحصر به فرد این تصویر تنظیم شده است. باید در فراخوانی نتیجه برگردانده شود، و همچنین برای شناسایی درخواست در اعلانهای ناهمزمان ارسال شده به camera3_callback_ops_t.notify () استفاده میشود.
camera3_stream_buffer_t * input_buffer |
بافر جریان ورودی برای استفاده برای این درخواست، در صورت وجود.
اگر input_buffer NULL باشد، در این صورت درخواست عکسبرداری جدید از تصویرگر است. اگر input_buffer معتبر باشد، درخواست برای پردازش مجدد تصویر موجود در input_buffer است.
در حالت دوم، قبل از بازگشت ()process_capture_request، HAL باید release_fence از input_buffer را روی یک حصار همگامسازی معتبر، یا اگر HAL از sync پشتیبانی نمیکند، روی -1 تنظیم کند.
قبل از دسترسی به HAL باید روی حصار همگامسازی بافر ورودی منتظر بماند.
<= CAMERA_DEVICE_API_VERSION_3_1:
هر بافر ورودی موجود در اینجا قبل از گنجاندن آن در یک درخواست، از طریق register_stream_buffers() با HAL ثبت شده است.
>= CAMERA_DEVICE_API_VERSION_3_2:
بافرها از قبل در HAL ثبت نشده اند. درخواستهای بعدی ممکن است از بافرها استفاده مجدد کنند یا بافرهای کاملاً جدیدی ارائه کنند.
uint32_t num_output_buffers |
const camera3_stream_buffer_t * output_buffers |
آرایهای از بافرهای جریانی num_output_buffers که باید با دادههای تصویر از این ضبط/پردازش مجدد پر شود. HAL باید روی حصارهای به دست آوردن هر بافر جریان قبل از نوشتن برای آنها منتظر بماند.
HAL مالکیت ورودی های buffer_handle_t واقعی در output_buffers را در اختیار می گیرد. تا زمانی که در یک camera3_capture_result_t برگردانده نشوند، چارچوب به آنها دسترسی ندارد.
<= CAMERA_DEVICE_API_VERSION_3_1:
تمام بافرهای موجود در اینجا از طریق register_stream_buffers() قبل از گنجاندن آنها در یک درخواست، با HAL ثبت میشوند.
>= CAMERA_DEVICE_API_VERSION_3_2:
هر یک یا همه بافرهای موجود در اینجا ممکن است در این درخواست کاملاً جدید باشند (که قبلاً توسط HAL دیده نشده است).
const camera_metadata_t * تنظیمات |
مستندات این ساختار از فایل زیر تولید شده است:
- hardware/libhardware/include/hardware/ camera3.h