प्लैटफ़ॉर्म के हिसाब से गाइड
Android (Kotlin/Java)
Android एनडीके (C)
यूनिटी (एआर फ़ाउंडेशन)
अनरियल इंजन
ऑगमेंटेड रिएलिटी (एआर) के ज़्यादातर अनुभव “रीयल-टाइम” होते हैं. इन गेम में उपयोगकर्ताओं का किसी खास समय पर किसी खास जगह पर होना ज़रूरी है. साथ ही, उनका फ़ोन किसी खास एआर मोड में सेट हो और एआर (ऑगमेंटेड रिएलिटी) ऐप्लिकेशन पर खुला हो. उदाहरण के लिए, अगर कोई उपयोगकर्ता यह देखना चाहता है कि एआर (ऑगमेंटेड रिएलिटी) सोफ़ा उसके लिविंग रूम में कैसा दिखता है, तो उसे कमरे में ही स्क्रीन पर सोफ़े को “रखना” होगा.
रिकॉर्डिंग और प्लेबैक एपीआई की सुविधा, “रीयल-टाइम” की इस ज़रूरी शर्त को खत्म कर देती है. इससे आपको एआर का ऐसा अनुभव देने में मदद मिलती है जिसे कहीं भी और कभी भी देखा जा सकता है. रिकॉर्डिंग एपीआई में, कैमरे की वीडियो स्ट्रीम, आईएमयू डेटा या कोई भी ऐसा कस्टम मेटाडेटा सेव किया जाता है जिसे आपने MP4 फ़ाइल में सेव करने के लिए चुना है. इसके बाद, रिकॉर्ड किए गए इन वीडियो को प्लेबैक एपीआई के ज़रिए ARCore पर फ़ीड किया जा सकता है. यह MP4 को लाइव सेशन की फ़ीड की तरह ही काम करता है. अब भी लाइव कैमरा सेशन का इस्तेमाल किया जा सकता है. हालांकि, इस नए एपीआई की मदद से, आपके एआर ऐप्लिकेशन लाइव सेशन की जगह, पहले से रिकॉर्ड किए गए MP4 का इस्तेमाल कर सकते हैं.
असली उपयोगकर्ता भी इस सुविधा का फ़ायदा ले सकते हैं. भले ही, वे असल ज़िंदगी में कहीं भी हों, रिकॉर्डिंग और प्लेबैक एपीआई की मदद से रिकॉर्ड किए गए किसी भी वीडियो को उनकी मूल गैलरी से रिकॉर्ड किया जा सकता है. साथ ही, एआर ऑब्जेक्ट, इफ़ेक्ट, और फ़िल्टर में बदलाव किया जा सकता है या उन्हें चलाया भी जा सकता है. इस सुविधा की मदद से उपयोगकर्ता, एआर से खरीदारी कर सकते हैं. यह खरीदारी, ट्रेन के दौरान ऑफ़िस के सफ़र के दौरान या आराम करते समय की जा सकती है.
रिकॉर्डिंग और प्लेबैक एपीआई के साथ डेवलप करने के लिए इस्तेमाल के उदाहरण
रिकॉर्डिंग और प्लेबैक एपीआई की मदद से, एआर ऐप्लिकेशन बनाने में लगने वाले समय और जगह की कमी को दूर किया जाता है. यहां कुछ तरीके दिए गए हैं, जिनकी मदद से इसे अपने प्रोजेक्ट में इस्तेमाल किया जा सकता है.
एक बार रिकॉर्ड करें और कहीं भी टेस्ट करें
एआर सुविधा को टेस्ट करने के लिए, हर बार किसी जगह पर जाने के बजाय, रिकॉर्डिंग एपीआई का इस्तेमाल करके वीडियो रिकॉर्ड किया जा सकता है. इसके बाद, वीडियो को उस डिवाइस पर चलाया जा सकता है जिस पर यह सुविधा काम करती है. शॉपिंग मॉल में कोई अनुभव लेना है? आपको अपने किसी भी बदलाव को टेस्ट करने के लिए, हर बार इस पेज पर जाने की ज़रूरत नहीं है. बस एक बार अपनी विज़िट को रिकॉर्ड कर लें और फिर इसे अपने डिवाइस की मदद से, आसानी से दोहराया जा सकता है.
दोहराने का समय कम करें
हर उस Android डिवाइस के लिए वीडियो रिकॉर्ड करने की ज़रूरत नहीं है जिसके साथ आपको काम करना है, लेकिन हर स्थिति के लिए वीडियो रिकॉर्ड करें. इसके बाद, वीडियो को एक बार रिकॉर्ड करके उसे कई अलग-अलग डिवाइसों पर चलाया जा सकता है.
डेवलपमेंट टीम में मैन्युअल तरीके से जांच का बोझ कम करें
हर नई सुविधा के लिए कस्टम डेटासेट बनाने के बजाय, पहले से रिकॉर्ड किए गए डेटासेट का इस्तेमाल करें. साथ ही, उन नई सुविधाओं को लॉन्च करें जिनमें ARCore की मदद से, ट्रैकिंग में किए गए नए सुधार या गहराई शामिल की गई हो.
मेरे डिवाइस पर यह सुविधा काम नहीं करती
रिकॉर्डिंग और प्लेबैक एपीआई की मदद से डेटा रिकॉर्ड करने के लिए आपको ARCore की ज़रूरत होगी, लेकिन चीज़ों को चलाने के लिए आपको इसकी ज़रूरत नहीं पड़ेगी. इस सुविधा का इस्तेमाल करके रिकॉर्ड किए गए MP4, अतिरिक्त डेटा वाली ऐसी वीडियो फ़ाइलें होती हैं जिन्हें किसी भी वीडियो प्लेयर का इस्तेमाल करके देखा जा सकता है. इन्हें Android के ExoPlayer या इसके साथ काम करने वाले किसी भी प्लेयर से देखा जा सकता है, जो कि MP4 को डीमक्स और ARCore से जोड़े गए अतिरिक्त डेटा को मैनेज कर सकता है.
प्लेबैक के लिए वीडियो और एआर (ऑगमेंटेड रिएलिटी) डेटा कैसे रिकॉर्ड किया जाता है
ARCore, रिकॉर्ड किए गए सेशन को टारगेट डिवाइस पर MP4 फ़ाइलों में सेव करता है. इन फ़ाइलों में एक से ज़्यादा वीडियो ट्रैक और अन्य कई तरह का डेटा होता है. इन सेशन के सेव हो जाने के बाद, अपने ऐप्लिकेशन को लाइव कैमरा सेशन की जगह ऐप्लिकेशन पर डेटा इस्तेमाल करने की अनुमति दी जा सकती है.
रिकॉर्डिंग में क्या होता है?
ARCore, H.264 वीडियो में यह डेटा कैप्चर करता है. इसे MP4 के साथ काम करने वाले किसी भी ऐसे वीडियो प्लेयर पर ऐक्सेस किया जा सकता है जिसमें ट्रैक स्विच किए जा सकते हों. सबसे ज़्यादा रिज़ॉल्यूशन वाला ट्रैक सूची में सबसे पहले आता है, क्योंकि MP4 के साथ काम करने वाले कुछ वीडियो प्लेयर, सूची का पहला ट्रैक अपने-आप चला देते हैं. इसके लिए, आपको यह चुनने की अनुमति नहीं मिलती कि कौनसा वीडियो ट्रैक चलाया जाए.
मुख्य वीडियो ट्रैक (सीपीयू इमेज ट्रैक)
मुख्य वीडियो फ़ाइल, बाद में वीडियो चलाने के लिए आस-पास की जगहों या सीन को रिकॉर्ड करती है. इन्होंने बदलाव किया है डिफ़ॉल्ट रूप से, ARCore 640x480 (वीजीए) सीपीयू इमेज को रिकॉर्ड करता है, जिसका इस्तेमाल मोशन ट्रैकिंग का इस्तेमाल मुख्य वीडियो के तौर पर करें स्ट्रीम.
ARCore, रेंडर किए जाने वाले (हाई-रिज़ॉल्यूशन) GPU टेक्स्चर को कैप्चर नहीं करता स्क्रीन पर, पासथ्रू कैमरा इमेज के तौर पर.
अगर आपको वीडियो चलाने के दौरान हाई-रिज़ॉल्यूशन वाली इमेज स्ट्रीम उपलब्ध करानी है, तो ऐसा कैमरा कॉन्फ़िगर करना ज़रूरी है जो सीपीयू की इमेज उपलब्ध कराता हो जिसका रिज़ॉल्यूशन आपकी पसंद के मुताबिक हो. इस मामले में:
- ARCore, 640x480 (वीजीए) वाली दोनों सीपीयू इमेज का अनुरोध करेगा मोशन ट्रैकिंग और कॉन्फ़िगर की गई हाई-रिज़ॉल्यूशन सीपीयू इमेज कैमरा कॉन्फ़िगरेशन.
- दूसरी सीपीयू इमेज स्ट्रीम को कैप्चर करने से ऐप्लिकेशन की परफ़ॉर्मेंस पर असर पड़ सकता है और हो सकता है कि अलग-अलग डिवाइस पर इसका अलग-अलग असर हो.
- वीडियो चलाने के दौरान, ARCore हाई-रिज़ॉल्यूशन वाली सीपीयू इमेज का इस्तेमाल करेगा इसे प्लेबैक के दौरान GPU टेक्सचर के तौर पर रिकॉर्डिंग के दौरान कैप्चर किया जाता है.
- हाई-रिज़ॉल्यूशन वाली सीपीयू इमेज, वीडियो स्ट्रीम की डिफ़ॉल्ट वीडियो स्ट्रीम बन जाएगी MP4 रिकॉर्डिंग करते हैं.
रिकॉर्डिंग के दौरान चुने गए कैमरे के कॉन्फ़िगरेशन के हिसाब से, रिकॉर्डिंग में सीपीयू इमेज और मुख्य वीडियो स्ट्रीम तय की जाती है. अगर आपने हाई-रिज़ॉल्यूशन सीपीयू इमेज वाला कैमरा कॉन्फ़िगरेशन नहीं चुना है, तो यह वीडियो फ़ाइल में पहला ट्रैक होगा और डिफ़ॉल्ट रूप से चलेगा. भले ही, आप किसी भी वीडियो प्लेयर का इस्तेमाल करें.
कैमरे की डेप्थ मैप विज़ुअलाइज़ेशन
यह कैमरे के डेप्थ मैप को दिखाने वाली एक वीडियो फ़ाइल है, जिसे डिवाइस के हार्डवेयर डेप्थ सेंसर से रिकॉर्ड किया जाता है. जैसे, फ़्लाइट का समय बताने वाला सेंसर (या ToF सेंसर). साथ ही, यह आरजीबी चैनल वैल्यू में बदल जाता है. इस वीडियो का इस्तेमाल सिर्फ़ झलक देखने के लिए किया जाना चाहिए.
एपीआई कॉल इवेंट
ARCore, डिवाइस के जायरोमीटर और एक्सलरोमीटर सेंसर से मापे गए डेटा को रिकॉर्ड करता है. यह अन्य डेटा भी रिकॉर्ड करता है, जिनमें से कुछ संवेदनशील हो सकते हैं:
- डेटासेट फ़ॉर्मैट के वर्शन
- ARCore SDK टूल का वर्शन
- Google Play Services for AR वर्शन
- डिवाइस फ़िंगरप्रिंट (
adb shell getprop ro.build.fingerprint
का आउटपुट) - एआर ट्रैकिंग के लिए इस्तेमाल किए जाने वाले सेंसर के बारे में ज़्यादा जानकारी
- ARCore Geospatial API का इस्तेमाल करते समय, डिवाइस की अनुमानित जगह, मैग्नेटोमीटर रीडिंग, और कंपास रीडिंग