فراداده و کنترل‌ها

این صفحه از پشتیبانی فراداده، کنترل‌های تنظیمات فردی، و پشتیبانی داده‌های حسگر خام می‌گوید.

پشتیبانی از فراداده

برای پشتیبانی از ذخیره فایل‌های تصویر خام توسط چارچوب Android، فراداده‌های قابل‌توجهی درباره ویژگی‌های حسگر موردنیاز است. این شامل اطلاعاتی مثل فضاهای رنگ و عملکردهای سایه‌اندازی لنز می‌شود.

بیشتر این اطلاعات ویژگی ایستا زیرسیستم دوربین است و بنابراین می‌توان آن‌ها را قبل‌از پیکربندی هرگونه خط لوله خروجی یا ارسال هرگونه درخواست پُرسمان کرد. میاناهای برنامه‌سازی کاربردی جدید دوربین اطلاعات ارائه‌شده توسط روش getCameraInfo را به‌طور قابل‌توجهی گسترش می‌دهند تا این اطلاعات را به برنامه ارائه دهند.

علاوه‌براین، کنترل دستی زیرسیستم دوربین نیازمند دریافت بازخورد از دستگاه‌های مختلف درباره وضعیت فعلی آن‌ها و پارامترهای واقعی استفاده‌شده در ضبط یک قاب معین است. مقادیر واقعی کنترل‌ها (زمان نوردهی، مدت‌زمان فریم، و حساسیت) که واقعاً توسط سخت‌افزار استفاده می‌شود باید در فراداده خروجی گنجانده شود. این امر ضروری است تا برنامه‌ها بدانند چه زمانی محدود کردن یا گرد کردن انجام شده است و برنامه بتواند تنظیمات واقعی استفاده‌شده برای ضبط تصویر را جبران کند.

برای مثال، اگر برنامه‌ای مدت فریم را در درخواستی روی ۰ تنظیم کند، HAL باید مدت فریم را به حداقل مدت فریم واقعی برای آن درخواست محدود کند و آن حداقل مدت محدودشده را در فراداده نتیجه خروجی گزارش کند.

بنابراین اگر برنامه‌ای نیاز به پیاده‌سازی روال 3A سفارشی داشته باشد (برای مثال، برای اندازه‌گیری صحیح انفجار HDR)، باید تنظیمات استفاده‌شده برای گرفتن آخرین مجموعه نتایج دریافتی را بداند تا تنظیمات را برای درخواست بعدی به‌روز کند. بنابراین، «میانای برنامه‌سازی کاربردی» جدید دوربین مقدار قابل‌توجهی فراداده پویا به هر قاب ضبط‌شده اضافه می‌کند. این شامل پارامترهای درخواستی و واقعی مورداستفاده برای ضبط، و همچنین فراداده‌های اضافی برای هر فریم مانند مُهرهای زمان و خروجی تولیدکننده آمار است.

کنترل براساس تنظیم

برای اکثر تنظیمات، انتظار می‌رود که بتوان آن‌ها را در هر فریم تغییر داد، بدون اینکه لکنت یا تأخیر قابل‌توجهی در جاری‌سازی فریم خروجی ایجاد شود. در حالت ایده‌آل، نرخ فریم خروجی باید صرفاً توسط فیلد مدت فریم درخواست ضبط کنترل شود و مستقل از هرگونه تغییر در پیکربندی بلوک‌های پردازش باشد. در واقعیت، برخی‌از کنترل‌های خاص به‌کندی تغییر می‌کنند؛ این کنترل‌ها شامل وضوح خروجی و قالب خروجی خط لوله دوربین و همچنین کنترل‌هایی است که بر دستگاه‌های فیزیکی تأثیر می‌گذارند، مانند فاصله کانونی لنز. الزامات دقیق برای هر مجموعه کنترل در ادامه توضیح داده شده است.

پشتیبانی از داده‌های حسگر خام

علاوه‌بر قالب‌های پیکسل پشتیبانی‌شده توسط میانای برنامه‌سازی کاربردی قدیمی، میانای برنامه‌سازی کاربردی جدید الزام پشتیبانی از داده‌های حسگر خام (Bayer RAW) را اضافه می‌کند، هم برای برنامه‌های دوربین پیشرفته و هم برای پشتیبانی از فایل‌های تصویر خام.