Eclipsa वीडियो इंटिग्रेट करना

मोबाइल डिवाइसों पर हाई डाइनैमिक रेंज (एचडीआर) वीडियो दिखाने में अक्सर एक बड़ी समस्या आती है. वह यह है कि अलग-अलग पैनल पर वीडियो की क्वालिटी में अंतर दिखता है. मिक्स कॉन्टेंट वाले फ़ीड ब्राउज़ करते समय, स्टैंडर्ड डाइनैमिक रेंज (एसडीआर) और एचडीआर एलिमेंट एक साथ दिखते हैं. ऐसे में, रेंडरिंग पाइपलाइन को इन्हें बैलेंस करने में मुश्किल होती है. इसकी वजह से, वीडियो की क्वालिटी में अचानक और तेज़ बदलाव होते हैं. साथ ही, चमक में भी अचानक और तेज़ बढ़ोतरी होती है.

कॉन्टेंट क्रिएटर्स के लिए, क्वालिटी में एकरूपता न होने की वजह से, वीडियो का असली मकसद पूरा नहीं हो पाता. प्रोफ़ेशनल मॉनिटर पर, एचडीआर वीडियो को बारीकी से ग्रेड करने के बाद भी, उपभोक्ता डिवाइस पर देखने पर उसकी हाइलाइट क्लिप हो सकती हैं, टोन धुंधली हो सकती हैं या शैडो क्रश हो सकती हैं.

Eclipsa वीडियो, एचडीआर वीडियो का एक नया स्टैंडर्ड है. इसे क्रॉस-डिवाइस इकोसिस्टम से जुड़ी इन समस्याओं को हल करने के लिए डिज़ाइन किया गया है. SMPTE ST 2094-50 की जानकारीके आधार पर, Eclipsa वीडियो की मदद से डिसप्ले, कॉन्टेंट मैपिंग को डाइनैमिक तौर पर अडजस्ट कर सकते हैं. यह अडजस्टमेंट, फ़िज़िकल हार्डवेयर की क्षमताओं और रीयल-टाइम में आस-पास की रोशनी की स्थितियों, दोनों के आधार पर होता है. Jetpack Media3 ExoPlayer और स्टैंडर्ड Camera2 कैप्चर पाइपलाइन में, Eclipsa वीडियो को इंटिग्रेट करने के लिए कोई कॉन्फ़िगरेशन ज़रूरी नहीं है. साथ ही, यह सुविधा पहले से मौजूद है. इसलिए, मोबाइल इंजीनियरिंग टीमों को अगली पीढ़ी की हार्डवेयर-अडैप्टिव वीडियो स्ट्रीमिंग को लागू करने के लिए, कोई शुल्क नहीं देना पड़ता. साथ ही, उन्हें कोई मुश्किल भी नहीं होती. इस सुविधा की मदद से, हर स्क्रीन पर वीडियो का असली मकसद बनाए रखा जा सकता है.

SMPTE ST 2094-50 का तकनीकी आर्किटेक्चर

मोबाइल डिसप्ले की ल्यूमिनेंस हेडरूम में काफ़ी अंतर होता है. ल्यूमिनेंस हेडरूम, डिसप्ले के रेफ़रंस व्हाइट पॉइंट से ज़्यादा चमक की वह मात्रा होती है जो उपलब्ध होती है. जब किसी डिसप्ले की हार्डवेयर से जुड़ी सीमाएं, एचडीआर वीडियो की मास्टिंग की ज़रूरी शर्तों के मुताबिक नहीं होती हैं, तो हाइलाइट क्लिप हो जाती हैं या धुंधली दिखती हैं. आस-पास की रोशनी के सेंसर, पैनल को आस-पास के माहौल के हिसाब से अडजस्ट करते हैं. इस वजह से, स्क्रीन का असली हेडरूम और रेफ़रंस व्हाइट पॉइंट डाइनैमिक तौर पर बदलता है.

SMPTE ST 2094-50, दो लेयर वाले मेटाडेटा की सुविधा देकर इस समस्या को हल करता है. इससे दो मुख्य पहलुओं की मदद से, वीडियो की क्वालिटी में एकरूपता बनी रहती है:

रेफ़रंस व्हाइट ऐंकर

इससे एक सख्त बेसलाइन तय होती है. यह बेसलाइन, एसडीआर एलिमेंट की सबसे ज़्यादा चमक को सीधे डिसप्ले के रेफ़रंस व्हाइट पॉइंट पर मैप करती है. इस ऐंकर से ज़्यादा ल्यूमिनेंस वैल्यू, सिर्फ़ एचडीआर हाइलाइट के लिए रिज़र्व होती है. इस अनुमान के मुताबिक काम करने वाले ऐंकरिंग मैकेनिज़्म से यह पक्का होता है कि स्क्रीन पर एसडीआर और एचडीआर लेयर को एक साथ कंपोज़ करने पर, वे एक-दूसरे को धुंधला किए बिना, अपने असली मकसद के मुताबिक दिखें.

हेडरूम-अडैप्टिव गेन कर्व

क्रिएटर्स, स्टैटिक टोन-मैपिंग कर्व को लागू करने के बजाय, पैरामीट्रिक मेटाडेटा एम्बेड करते हैं. यह मेटाडेटा, डिसप्ले पाइपलाइन को यह निर्देश देता है कि सीमित हेडरूम उपलब्ध होने पर, उसे कैसे स्केल करना है. इस स्टैंडर्ड की मदद से, क्रिएटर्स के पास यह तय करने की विस्तृत सुविधा होती है कि टारगेट किए गए पैनल को हाइलाइट को सॉफ़्ट-क्लिप करना चाहिए, हार्ड-क्लिप करना चाहिए या चमक वाले हिस्सों में सबसे बारीक जानकारी को बनाए रखने के लिए, मिडटोन और शैडो को कंप्रेस करना चाहिए.

प्लैटफ़ॉर्म सहायता

Android 17 (एपीआई लेवल 37) में, Eclipsa वीडियो के प्लेबैक और कैप्चर के लिए प्लैटफ़ॉर्म-लेवल की सहायता की सुविधा जोड़ी गई है.

प्लेबैक लागू करना

स्टैंडर्ड ऐप्लिकेशन डेवलपमेंट के लिए, Media3 ExoPlayer में Eclipsa वीडियो के लिए, आउट-ऑफ़-द-बॉक्स सहायता की सुविधा मिलती है. SMPTE 2094-50 मेटाडेटा के साथ एम्बेड की गई फ़ाइलों को पार्स करते समय, ExoPlayer मेटाडेटा को आसानी से एक्सट्रैक्ट और लागू करता है. इसके लिए, प्लेयर के कस्टम कॉन्फ़िगरेशन की ज़रूरत नहीं होती.

  • स्टैंडर्ड प्लेयर को शुरू करना: अपने प्लेयर सरफ़ेस को इंस्टैंशिएट करने के लिए, Media3 ExoPlayer की खास जानकारी देखें.

  • ट्रैक ओवरराइड: अगर आपका ऐप्लिकेशन, प्रोग्राम के ज़रिए खास एचडीआर प्रोफ़ाइल के बारे में क्वेरी करता है या उन्हें लॉक करता है, तो Media3 ट्रैक सिलेक्शन एपीआई देखें.

हमारा सुझाव है कि आप प्लेबैक पाइपलाइन को Jetpack Media3 पर ऑफ़लोड करें. ExoPlayer, कंटेनर को कम लेवल पर एक्सट्रैक्ट करने की सुविधा को नेटिव तौर पर हैंडल करता है. इससे Android 16 (एपीआई लेवल 36) और इससे पहले के वर्शन में, लेगसी रेंडरिंग लेयर पर मौजूद प्लैटफ़ॉर्म-लेवल के डिकोडिंग आर्टफ़ैक्ट पूरी तरह से हट जाते हैं.

वीडियो कैप्चर करने की सुविधा लागू करना

किसी डिवाइस से Eclipsa वीडियो रिकॉर्ड करने के लिए, आपकी कैमरा पाइपलाइन को SMPTE 2094-50 मेटाडेटा जनरेट करने के लिए कॉन्फ़िगर किया जाना चाहिए. इसके लिए, कंपैटिबल डाइनैमिक रेंज प्रोफ़ाइल असाइन की जानी चाहिए.

CameraCharacteristics का इस्तेमाल करके, डिवाइस के साथ काम करने की सुविधा की पुष्टि करने के बाद, DynamicRangeProfiles.HLG10_SMPTE_2094_50 प्रोफ़ाइल का इस्तेमाल करके, स्ट्रीम को अपने एनकोडर सरफ़ेस पर भेजें. कैमरा सेशन में डाइनैमिक रेंज प्रोफ़ाइल के बारे में क्वेरी करने और उन्हें कॉन्फ़िगर करने के तरीके के बारे में जानने के लिए, देखें एचडीआर वीडियो कैप्चर करना.

SMPTE 2094-50 मेटाडेटा के लिए, कोडेक के किसी खास कॉन्फ़िगरेशन की ज़रूरत नहीं होती. अगर ऐक्टिव डाइनैमिक प्रोफ़ाइल में मेटाडेटा मौजूद है, तो Android मीडिया फ़्रेमवर्क उसे अपने-आप अटैच कर लेता है और आगे भेज देता है.

कंपैटिबिलिटी और परफ़ॉर्मेंस से जुड़ी ज़रूरी बातें

परफ़ॉर्मेंस की निगरानी करने के लिए, ऐक्टिव Display ऑब्जेक्ट को वापस पाएं और हार्डवेयर से तेज़ी लाने की सुविधा वाले पाथ की उपलब्धता की पहचान करने के लिए, उसके overlayProperties पर LutProperties देखें.

जिन डिवाइसों में हार्डवेयर से तेज़ी लाने की सुविधा नहीं है उनके लिए, Exoplayer में Eclipsa वीडियो रेंडरिंग से ऑप्ट आउट करने की सुविधा पर काम किया जा रहा है.

अन्य संसाधन