Android 14 में, JPEG_R
इमेज फ़ॉर्मैट का इस्तेमाल करके, अल्ट्रा एचडीआर वाली संपीड़ित इमेज कैप्चर करने की सुविधा उपलब्ध है. यह फ़ॉर्मैट, एसडीआर JPEG इमेज के साथ काम करता है. साथ ही, कॉन्टेंट को एचडीआर में रेंडर करने की सुविधा देता है.
अल्ट्रा एचडीआर फ़ॉर्मैट स्पेसिफ़िकेशन के बारे में ज़्यादा जानने के लिए, अल्ट्रा एचडीआर इमेज फ़ॉर्मैट v1.0 देखें.
लागू करना
इस सेक्शन में, अल्ट्रा एचडीआर की सुविधा को लागू करने का तरीका बताया गया है.
रेफ़रंस के तौर पर लागू करना
AOSP कैमरा फ़्रेमवर्क और कैमरा सेवा में, Ultra HDR को लागू करने का रेफ़रंस शामिल है.
कैमरे के फ़्रेमवर्क में दी गई रेफ़रंस के अलावा,
कैमरा एचएएल में अल्ट्रा एचडीआर की सुविधा चालू की जा सकती है. साथ ही, JPEG_R
आउटपुट के लिए, दूसरे कैमरा एचएएल आउटपुट स्ट्रीम की तरह ही विज्ञापन दिया जा सकता है. इस स्थिति में, कैमरे के एचएएल को ज़रूरी रिकवरी मैप और JPEG_R
इमेज जनरेट करनी होगी. यह अल्ट्रा एचडीआर स्पेसिफ़िकेशन के मुताबिक होनी चाहिए.
डिवाइस के हार्डवेयर और सॉफ़्टवेयर की क्षमताओं के आधार पर, आखिरी आउटपुट को ऑप्टिमाइज़ और ट्यून किया जा सकता है.
लागू करने के विकल्प
डिवाइस बनाने वाली कंपनियां, अपने डिवाइसों के लिए यहां दिए गए लेवल पर, अल्ट्रा एचडीआर की सुविधा उपलब्ध करा सकती हैं:
- कम से कम: इस कॉन्फ़िगरेशन में, कैमरा सेवा की कंपोजिट स्ट्रीम की सुविधा के ज़रिए अल्ट्रा एचडीआर आउटपुट डिफ़ॉल्ट रूप से बंद रहता है.
JpegRCompositeStream
रेफ़रंस लागू करने की सुविधा चालू करने के लिए,ro.camera.enableCompositeAPI0JpegR
सिस्टम प्रॉपर्टी कोtrue
पर सेट करें. सभी प्रोसेस और कोड बदलने की प्रोसेस, सॉफ़्टवेयर में की जाती है. इसलिए, इस विकल्प का इस्तेमाल करने पर, रिस्पॉन्स में देरी हो सकती है और परफ़ॉर्मेंस खराब हो सकती है. - मध्यम: इस विकल्प के साथ,
JpegRCompositeStream
लागू करने के लिए, रिडक्शन मैप का हिसाब लगाने के लिए, बुनियादी इमेज के तौर पर HAL की दी गई एसडीआर JPEG फ़ाइल और P010 फ़्रेम का इस्तेमाल किया जाता है. इस विकल्प में, डेटा पाथ में सॉफ़्टवेयर प्रोसेसिंग शामिल होती है. हालांकि, यह कम से कम विकल्प की तुलना में कम है. - ज़्यादा जानकारी: कैमरा एचएएल,
JPEG_R
आउटपुट स्ट्रीम का सीधे तौर पर विज्ञापन करता है और उसे इस्तेमाल करने की सुविधा देता है. इस विकल्प की मदद से डिवाइस बनाने वाली कंपनियां, डिवाइस के हिसाब से ऑप्टिमाइज़ेशन लागू कर सकती हैं. साथ ही, इससे इमेज क्वालिटी में सुधार किए जा सकते हैं.
JpegRCompositeStream
लागू करने की सुविधा बंद करने के लिए, ro.camera.disableJpegR
बिल्ड प्रॉपर्टी को true
पर सेट करें. अगर यह बिल्ड प्रॉपर्टी सेट नहीं है या false
पर सेट है, तो 10-बिट आउटपुट की सुविधा और एक साथ 10 और 8-बिट कैप्चर की सुविधा वाले डिवाइसों पर, JpegRCompositeStream
के ज़रिए अल्ट्रा एचडीआर डिफ़ॉल्ट रूप से चालू होता है.
पुष्टि करें
अपने डिवाइस पर अल्ट्रा एचडीआर की सुविधा की पुष्टि करने के लिए, ये टेस्ट चलाएं.
सीटीएस टेस्ट
ImageReaderTest.java#testImageReaderBuilderWithBLOBAndJpegR
ImageReaderTest.java#testJpegR
ImageReaderTest.java#testJpegRDisplayP3
PerformanceTest.java#testSingleCapture
StillCaptureTest.java# testJpegRCapture
आईटीएस टेस्ट
मैन्युअल तरीके से जांच करने की सुविधा
मैन्युअल टेस्ट करने के लिए, अल्ट्रा एचडीआर इमेज कैप्चर करने के लिए सैंपल लागू करें का इस्तेमाल करें. इसमें JPEG_R
इमेज फ़ॉर्मैट का इस्तेमाल करके, अल्ट्रा एचडीआर को कॉन्फ़िगर करने और कैप्चर करने की सुविधा शामिल है.