الأدلة الخاصة بالأنظمة الأساسية
Android (Kotlin/Java)
Android NDK (C)
Unity (AR Foundation)
Unreal Engine
إنّ الغالبية العظمى من تجارب الواقع المعزّز هي "في الوقت الفعلي"، وتتطلّب من المستخدمين أن يكونوا في مكان معيّن في وقت معيّن، مع ضبط هواتفهم على وضع الواقع المعزّز الخاص وفتح تطبيق الواقع المعزّز. على سبيل المثال، إذا أراد أحد المستخدمين معرفة كيف سيبدو أريكة الواقع المعزّز في غرفة المعيشة، عليه "وضع" الأريكة في البيئة المعروضة على الشاشة أثناء تواجده في الغرفة.
تلغى Recording and Playback API شرط "الوقت الفعلي" هذا، ما يتيح لك إنشاء تجارب واقع معزّز يمكن مشاهدتها في أي مكان وفي أي وقت. تخزِّن واجهة برمجة تطبيقات التسجيل البث الخاص بالكاميرا أو بيانات جهاز استشعار IMU أو أي بيانات وصفية أخرى مخصّصة تختار حفظها في ملف MP4. يمكنك بعد ذلك إرسال هذه الفيديوهات المسجّلة إلى ARCore من خلال Playback API، ما سيؤدي إلى التعامل مع ملف MP4 تمامًا مثل خلاصة جلسة مباشرة. سيظل بإمكانك استخدام جلسة كاميرا مباشرة، ولكن باستخدام واجهة برمجة التطبيقات الجديدة هذه، يمكن لتطبيقات الواقع المعزّز استخدام ملف MP4 مسجّل مسبقًا بدلاً من هذه الجلسة المباشرة.
ويمكن للمستخدمين النهائيين الاستفادة من هذه الميزة أيضًا. بغض النظر عن مكانهم الجغرافي، يمكنهم عرض أي فيديو تم تسجيله باستخدام Recording and Playback API من معرض الصور الأصلي وتعديل عناصر الواقع المعزّز أو تأثيراته أو فلاتره أو تشغيلها. باستخدام هذه الميزة، يمكن للمستخدمين التسوّق باستخدام الواقع المعزَّز أثناء السفر في قطار إلى المكتب أو أثناء الاستلقاء على السرير.
حالات الاستخدام للتطوير باستخدام واجهة برمجة تطبيقات التسجيل والتشغيل
تزيل Recording and Playback API القيود المفروضة على الوقت والمساحة عند إنشاء تطبيقات الواقع المعزّز. في ما يلي بعض الطرق التي يمكنك من خلالها استخدامها في مشاريعك الخاصة.
تسجيل المحتوى مرة واحدة واختباره في أي مكان
فبدلاً من الذهاب إلى موقع جغرافي في كل مرة تحتاج فيها إلى اختبار إحدى ميزات الواقع المعزّز، يمكنك تسجيل فيديو باستخدام واجهة برمجة تطبيقات تسجيل الفيديو ثم تشغيله باستخدام أي جهاز متوافق. هل تريد توفير تجربة في مركز تسوّق؟ ولن تحتاج إلى الانتقال إلى هذه الصفحة كلّما أردت اختبار تغيير. ما عليك سوى تسجيل زيارتك مرة واحدة ثم تكرارها وتطويرها من مكتبك.
تقليل وقت التكرار
بدلاً من تسجيل فيديو لكل جهاز Android تريد إتاحته، يمكنك تسجيل الفيديو مرة واحدة وتشغيله على أجهزة متعددة مختلفة أثناء مرحلة التكرار لكل سيناريو تريد اختباره.
تخفيف أعباء الاختبار اليدوي على مستوى فرق التطوير
بدلاً من إنشاء مجموعات بيانات مخصّصة لكل ميزة جديدة، استفِد من مجموعات البيانات المسجَّلة مسبقًا أثناء إطلاق ميزات جديدة تتضمّن بيانات تفصيلية أو أحدث تحسينات التتبُّع من ARCore.
توافق الجهاز
ستحتاج إلى ARCore لتسجيل البيانات باستخدام واجهة برمجة التطبيقات Recording and Playback API، ولكن لن تحتاج إليه لتشغيل المحتوى. ملفات MP4 التي يتم تسجيلها باستخدام هذه الميزة هي في الأساس ملفات فيديو بها بيانات إضافية يمكن عرضها باستخدام أي مشغل فيديو. يمكنك فحصها باستخدام ExoPlayer من Android أو أي مشغّل متوافق يمكنه فك ترميز ملفات MP4 وإدارة البيانات الإضافية التي أضافتها ARCore.
كيفية تسجيل بيانات الفيديو والواقع المعزّز لتشغيلها
تحفظ أداة ARCore الجلسات المسجّلة في ملفات MP4 على الجهاز المستهدَف. تحتوي هذه الملفات على عدة مقاطع فيديو وبيانات أخرى متنوعة. بعد حفظ هذه الجلسات، يمكنك توجيه تطبيقك لاستخدام هذه البيانات بدلاً من جلسة مباشرة للكاميرا.
ماذا يتضمّن التسجيل؟
يجمع ARCore البيانات التالية في فيديو H.264. يمكنك الوصول إلى الملف باستخدام أي مشغّل فيديو متوافق مع MP4 ويمكنه تبديل المقاطع الصوتية. يكون المقطع الصوتي الأعلى دقة هو الأول في القائمة لأنّ بعض مشغّلات الفيديو المتوافقة مع MP4 تشغّل تلقائيًا المقطع الصوتي الأول في القائمة بدون السماح لك باختيار المقطع الصوتي الذي تريد تشغيله.
مقطع الفيديو الأساسي (مسار صورة وحدة المعالجة المركزية)
ويسجّل ملف الفيديو الأساسي البيئة أو المشهد لتشغيله لاحقًا. من يسجّل ARCore صورة وحدة المعالجة المركزية (CPU) مقاس 640×480 (VGA) المستخدمة تتبُّع الحركة كفيديو أساسي دفق.
لا يلتقط ARCore زخرفة وحدة معالجة الرسومات (عالية الدقة) التي يتم عرضها على الشاشة كصورة كاميرا عبور.
إذا كنت تريد أن يتوفّر أثناء التشغيل بث صور بدقة عالية، عليك ضبط كاميرا توفّر صورة وحدة معالجة مركزية بالدقة المطلوبة. في هذه الحالة:
- سيطلب ARCore صورة وحدة المعالجة المركزية بدقة 640x480 (VGA) التي يتطلبها لتتبُّع الحركة وصورة وحدة المعالجة المركزية العالية الدقة التي تحدّدها إعدادات الكاميرا التي تم ضبطها.
- قد يؤثّر تسجيل بث الصور الثاني لوحدة المعالجة المركزية في أداء التطبيق، وقد تختلف تأثيرات ذلك على الأجهزة المختلفة.
- أثناء التشغيل، سيستخدم ARCore صورة وحدة المعالجة المركزية العالية الدقة التي التي تم التقاطها أثناء التسجيل كزخرفة وحدة معالجة الرسومات أثناء التشغيل.
- ستصبح صورة وحدة المعالجة المركزية (CPU) ذات الدقة العالية هي بث الفيديو التلقائي في تسجيل MP4.
تحدِّد إعدادات الكاميرا المحدَّدة أثناء التسجيل صورة وحدة المعالجة المركزية وبث الفيديو الأساسي في التسجيل. إذا لم تحدد تهيئة الكاميرا مع صورة وحدة معالجة مركزية عالية الدقة، فسيكون هذا الفيديو هو المقطع الصوتي الأول في الملف وسيتم تشغيله تلقائيًا، بغض النظر عن مشغّل الفيديو الذي تستخدمه.
تمثيل بصري لخريطة عمق الكاميرا
هذا ملف فيديو يمثّل خريطة عمق الكاميرا، ويتم تسجيله من أداة استشعار العمق في الجهاز، مثل أداة استشعار مدّة الطيران (أو أداة استشعار ToF)، ويتم تحويله إلى قيم قناة النموذج اللوني أحمر أخضر أزرق. يجب عدم استخدام هذا الفيديو إلا لأغراض المعاينة.
أحداث طلب بيانات من واجهة برمجة التطبيقات
يسجّل ARCore القياسات من جهاز استشعار الجيرومتر ومقياس التسارع في الجهاز. ويُسجِّل التطبيق أيضًا بيانات أخرى، قد يكون بعضها حسّاسًا:
- إصدارات تنسيق مجموعة البيانات
- إصدار حزمة تطوير البرامج (SDK) من ARCore
- خدمات Google Play لإصدار الواقع المعزّز
- بصمة الإصبع للجهاز (مخرجات
adb shell getprop ro.build.fingerprint
) - معلومات إضافية حول أدوات الاستشعار المستخدمة في تتبُّع الواقع المعزّز
- عند استخدام ARCore Geospatial API، يتم تقدير الموقع الجغرافي للجهاز وقراءات مقياس المغناطيسية وقراءات البوصلة.