اندروید 14 از ثبت تصاویر فشرده شده Ultra HDR با استفاده از فرمت تصویر JPEG_R
پشتیبانی می کند. این فرمت با تصاویر SDR JPEG سازگار است و از رندر HDR محتوا پشتیبانی می کند. برای جزئیات در مورد مشخصات فرمت Ultra HDR، فرمت تصویر Ultra HDR نسخه 1.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: با استفاده از این گزینه، پیاده سازی
JpegRCompositeStream
از یک فایل SDR JPEG ارائه شده توسط HAL به عنوان تصویر پایه و یک فریم P010 برای محاسبه نقشه بازیابی استفاده می کند. این گزینه شامل پردازش نرم افزار در مسیر داده است، اما در مقایسه با گزینه حداقل، نسبتاً ناچیز است. - گسترده: دوربین HAL جریان خروجی
JPEG_R
را مستقیماً تبلیغ و پشتیبانی می کند. این گزینه به سازندگان دستگاه اجازه میدهد تا بهینهسازیهای خاص دستگاه را اجرا کنند و میتواند کیفیت تصویر قابل توجهی را بهبود بخشد.
برای غیرفعال کردن اجرای JpegRCompositeStream
، ویژگی ساخت ro.camera.disableJpegR
را روی true
تنظیم کنید. اگر این ویژگی ساخت تنظیم نشده باشد یا روی false
تنظیم شده باشد، Ultra HDR به طور پیشفرض از طریق JpegRCompositeStream
در دستگاههایی که از قابلیت خروجی 10 بیتی و ضبط همزمان 10 و 8 بیتی پشتیبانی میکنند، فعال میشود.
اعتبار سنجی
برای تأیید اعتبار ویژگی Ultra HDR در دستگاه خود، آزمایشهای زیر را انجام دهید.
تست های CTS
-
ImageReaderTest.java#testImageReaderBuilderWithBLOBAndJpegR
-
ImageReaderTest.java#testJpegR
-
ImageReaderTest.java#testJpegRDisplayP3
-
PerformanceTest.java#testSingleCapture
-
StillCaptureTest.java# testJpegRCapture
تست های ITS
تست های دستی
برای انجام آزمایشهای دستی، از پیادهسازی نمونه برای ضبط تصویر Ultra HDR استفاده کنید، که شامل پشتیبانی از پیکربندی و ضبط Ultra HDR با استفاده از فرمت تصویر JPEG_R
است.