اندروید ۱۴ از ثبت تصاویر فشرده Ultra HDR با استفاده از فرمت تصویر JPEG_R پشتیبانی میکند. این فرمت با تصاویر SDR JPEG سازگار است و از رندر محتوای HDR پشتیبانی میکند. برای جزئیات بیشتر در مورد مشخصات فرمت Ultra HDR، به Ultra HDR Image Format v1.0 مراجعه کنید.
پیادهسازی
این بخش نحوهی پیادهسازی ویژگی Ultra HDR را شرح میدهد.
پیادهسازی مرجع
چارچوب دوربین AOSP و سرویس دوربین شامل یک پیادهسازی مرجع Ultra HDR است.
علاوه بر عملکرد مرجع در چارچوب دوربین، میتوانید Ultra HDR را در HAL دوربین پیادهسازی کنید و پشتیبانی از خروجی JPEG_R را همانند سایر جریانهای خروجی HAL دوربین اعلام کنید. در این سناریو، HAL دوربین باید نقشه بازیابی لازم و تصویر نهایی JPEG_R را مطابق با مشخصات Ultra HDR تولید کند. میتوانید خروجی نهایی را بسته به قابلیتهای سختافزاری و نرمافزاری دستگاه بهینهسازی و تنظیم کنید.
گزینههای پیادهسازی
تولیدکنندگان دستگاه میتوانند سطوح پشتیبانی از Ultra HDR را برای دستگاههای خود در موارد زیر تعیین کنند:
- حداقل: در این پیکربندی، خروجی Ultra HDR از طریق قابلیت جریان کامپوزیت سرویس دوربین به طور پیشفرض غیرفعال است. برای فعال کردن پیادهسازی مرجع
JpegRCompositeStream، ویژگی سیستمro.camera.enableCompositeAPI0JpegRرا رویtrueتنظیم کنید. از آنجا که تمام فرآیندها و کدگذاری در نرمافزار انجام میشود، این گزینه میتواند منجر به افزایش تأخیر و کاهش عملکرد شود. - Moderate: With this option, the
JpegRCompositeStreamimplementation uses a HAL-provided SDR JPEG file as a base image and a P010 frame to calculate a recovery map. This option involves software processing within the data path but is relatively minor compared to the minimal option. - گسترده: دوربین HAL مستقیماً جریان خروجی
JPEG_Rرا تبلیغ و پشتیبانی میکند. این گزینه به تولیدکنندگان دستگاه اجازه میدهد تا بهینهسازیهای خاص دستگاه را پیادهسازی کنند و میتوانند بهبودهای قابل توجهی در کیفیت تصویر ایجاد کنند.
برای غیرفعال کردن پیادهسازی JpegRCompositeStream ، ویژگی ساخت ro.camera.disableJpegR را روی true تنظیم کنید. اگر این ویژگی ساخت تنظیم نشده باشد یا روی false تنظیم شده باشد، Ultra HDR به طور پیشفرض از طریق JpegRCompositeStream در دستگاههایی که از قابلیت خروجی ۱۰ بیتی و ضبط همزمان ۱۰ و ۸ بیتی پشتیبانی میکنند، فعال میشود.
اعتبارسنجی
برای تأیید قابلیت Ultra HDR در دستگاه خود، آزمایشهای زیر را انجام دهید.
آزمایشهای CTS
-
ImageReaderTest.java#testImageReaderBuilderWithBLOBAndJpegR -
ImageReaderTest.java#testJpegR -
ImageReaderTest.java#testJpegRDisplayP3 -
PerformanceTest.java#testSingleCapture -
StillCaptureTest.java# testJpegRCapture
آزمایشهای ITS
Manual tests
برای انجام تستهای دستی، از پیادهسازی نمونه برای ضبط تصویر Ultra HDR استفاده کنید، که شامل پشتیبانی از پیکربندی و ضبط Ultra HDR با استفاده از فرمت تصویر JPEG_R است.