يتيح نظام التشغيل Android 13 استخدام الصوت المكاني من خلال توفير واجهات برمجة تطبيقات تتيح لمطوّري التطبيقات معرفة ما إذا كان الإعداد الحالي للهاتف وسماعة الرأس المتصلة وإعدادات المستخدم تتيح تشغيل محتوى صوتي متعدد القنوات بطريقة غامرة.
يمكن للمصنّعين الأصليين للأجهزة توفير تأثير صوتي باستخدام أداة تحويل الصوت إلى صوت مكاني مع إمكانية تتبُّع حركة الرأس بالمستوى المطلوب من الأداء وزمن الاستجابة، وذلك باستخدام بنية مسار الصوت الجديدة ودمج إطار عمل المستشعر. يحدّد بروتوكول HID كيفية ربط جهاز تتبُّع الرأس عبر البلوتوث وإتاحته كجهاز HID من خلال إطار عمل مستشعر Android. يمكنك الاطّلاع على الصوت المكاني وتتبُّع حركة الرأس لمزيد من المتطلبات وعمليات التحقّق.
تنطبق الإرشادات الواردة في هذه الصفحة على حلّ الصوت المكاني الذي يستخدم واجهات برمجة التطبيقات الجديدة الخاصة بالصوت المكاني وبنية الصوت مع هاتف Android يعمل بالإصدار 13 من نظام التشغيل Android والإصدارات الأحدث وسماعات رأس متوافقة مزوّدة بأداة استشعار لتتبُّع حركة الرأس.
إرشادات حول تنفيذ أوضاع "الصوت المكاني" الديناميكية والثابتة
لا يتطلّب الصوت المكاني الثابت تتبُّع حركة الرأس، لذا لا حاجة إلى توفُّر وظائف معيّنة في سمّاعة الرأس. يمكن لجميع سماعات الرأس السلكية واللاسلكية أن تتوافق مع ميزة "الصوت المكاني الثابت".
تنفيذ واجهة برمجة التطبيقات
على المصنّعين الأصليين للأجهزة تنفيذ فئة Spatializer
التي تم طرحها في Android 12. يجب أن يجتاز التنفيذ اختبارات CTS
المقدَّمة لفئة
Spatializer.
يضمن التنفيذ القوي لواجهة برمجة التطبيقات أن يتمكّن مطوّرو التطبيقات، وخاصةً خدمات بث الوسائط، من الاعتماد على سلوك متسق في جميع أنحاء النظام الأساسي واختيار أفضل محتوى وفقًا لإمكانات الجهاز وسياق العرض الحالي وخيارات المستخدم.
واجهة المستخدم
بعد تنفيذ فئة Spatializer
، تحقَّق من أنّ واجهة المستخدم تتضمّن السلوك التالي:
عند إقران سماعة رأس متوافقة مع ميزة "الصوت المكاني"، ستعرض إعدادات جهاز البلوتوث الخاص بهذه السماعة مفتاح تبديل الصوت المكاني:
الشكل 1: إعدادات "الصوت المكاني"
تتوفّر الإعدادات عندما تكون سماعة الرأس غير متصلة.
تكون الحالة التلقائية لميزة "الصوت المكاني" بعد إقران سمّاعة الرأس في البداية مفعّلة.
تظل الحالة التي يختارها المستخدم، سواء كانت مفعَّلة أو غير مفعَّلة، محفوظة عند إعادة تشغيل الهاتف أو إلغاء إقران سمّاعة الرأس وإعادة إقرانها.
السلوك الوظيفي
تنسيقات الصوت
يجب أن يعرض تأثير المحوّل الصوتي تنسيقات الصوت التالية عندما تكون ميزة "الصوت المكاني" مفعّلة ويكون جهاز العرض عبارة عن سمّاعة رأس سلكية أو متصلة بالبلوتوث:
- AAC، 5.1 قناة
- تنسيق PCM الأولي، 5.1 قناة
للحصول على تجربة أفضل للمستخدم، ننصحك بشدة بتوفير التنسيقات/إعدادات القنوات التالية:
- Dolby Digital Plus
- قنوات 5.1.2 و7.1 و7.1.2 و7.1.4
تشغيل المحتوى المجسّم
يجب عدم عرض المحتوى المجسّم من خلال محرك تأثيرات الصوت المكاني، حتى إذا كانت ميزة "الصوت المكاني" مفعّلة. إذا كان التنفيذ يتيح عرض محتوى مجسّم، يجب أن يوفّر واجهة مستخدم مخصّصة تتيح للمستخدم تفعيل هذه الميزة أو إيقافها. وعند تفعيل الصوت المكاني، يجب أن يكون من الممكن الانتقال من تشغيل محتوى متعدد القنوات مجسّم إلى محتوى مجسّم غير مكاني بدون الحاجة إلى إجراء أي تغييرات في إعدادات المستخدم أو إعادة توصيل سماعة الرأس أو إعادة ضبطها. يجب أن يكون الانتقال بين المحتوى المكاني والمحتوى المجسّم سلسًا قدر الإمكان.
عمليات الانتقال بين حالات الاستخدام والتزامن
تعامَل مع حالات الاستخدام الخاصة على النحو التالي:
- يجب دمج الإشعارات مع محتوى الصوت المكاني بالطريقة نفسها التي يتم بها دمجها مع محتوى الصوت غير المكاني.
- يجب السماح بدمج نغمات الرنين مع محتوى الصوت المكاني. ومع ذلك، يؤدي نظام أولويّة الصوت تلقائيًا إلى إيقاف محتوى الصوت المكاني مؤقتًا عندما تكون هناك نغمة رنين.
- عند الرد على مكالمة هاتفية أو مؤتمر فيديو أو إجرائهما، يجب إيقاف تشغيل الصوت المكاني مؤقتًا. يجب استئناف تشغيل الصوت المكاني باستخدام إعدادات الصوت المكاني نفسها عند انتهاء المكالمة. يجب أن تتم إعادة ضبط مسار الصوت للتبديل من وضع "الصوت المكاني" إلى وضع "المحادثة" بسرعة وبسلاسة كافية كي لا يؤثر ذلك في تجربة المكالمة.
العرض على مكبّرات الصوت
لا يُشترط توفير إمكانية تحويل الصوت إلى صوت مكاني عبر مكبّرات الصوت، أو وضع الصوت المجسم.
إرشادات حول تنفيذ ميزة "تتبُّع حركة الرأس"
يركّز هذا القسم على ميزة "الصوت المكاني الديناميكي" التي تتطلّب استخدام سمّاعات رأس معيّنة.
واجهة المستخدم
بعد تنفيذ سماعة الرأس المتوافقة مع ميزة "الصوت المكاني" وإقرانها، تحقَّق من أنّ واجهة المستخدم تتضمّن السلوك التالي:
في إعدادات جهاز البلوتوث، عند تفعيل إعداد الصوت المكاني لسماعة الرأس، يظهر إعداد تتبُّع حركة الرأس ضمن الصوت المكاني:
الشكل 2: إعدادات "الصوت المكاني" وتتبُّع حركة الرأس
لا يظهر خيار "تتبُّع حركة الرأس" عندما تكون ميزة "الصوت المكاني" غير مفعّلة.
تكون الحالة التلقائية لميزة "تتبُّع حركة الرأس" بعد إقران سماعة الرأس للمرة الأولى مفعّلة.
يجب أن تظل حالة التحديد التي اختارها المستخدم، سواء كانت مفعّلة أو غير مفعّلة، محفوظة عند إعادة تشغيل الهاتف أو إلغاء إقران سماعة الرأس وإعادة إقرانها.
السلوك الوظيفي
إعداد تقارير حول وضعية الرأس
- يجب أن تعكس معلومات وضعية الرأس، في الإحداثيات x وy وz، التي يتم إرسالها من سماعة الرأس إلى جهاز Android، حركات رأس المستخدم بسرعة ودقة.
- يجب أن يتّبع إرسال بيانات وضعية الرأس عبر رابط البلوتوث البروتوكول المحدّد عبر HID.
- يجب أن ترسل سماعة الرأس معلومات تتبُّع حركة الرأس إلى هاتف Android فقط عندما يفعّل المستخدم خيار تتبُّع حركة الرأس في واجهة مستخدم إعدادات جهاز البلوتوث.
الأداء
وقت الاستجابة
يُعرَّف وقت استجابة تتبُّع حركة الرأس بأنّه الوقت الذي يستغرقه رصد التغيير في الصوت الناتج عن حركة الرأس، وذلك بدءًا من رصد وحدة قياس القصور الذاتي (IMU) لحركة الرأس وحتى رصد محوّلات الطاقة في سماعات الرأس لهذا التغيير. يجب ألا يتجاوز وقت استجابة تتبُّع حركة الرأس 150 مللي ثانية.
معدّل الإبلاغ عن وضعية الرأس
عندما يكون تتبُّع حركة الرأس مفعَّلاً، يجب أن ترسل سمّاعة الرأس بيانات وضعية الرأس بشكل دوري كل 20 ملي ثانية تقريبًا. ولتجنُّب تفعيل منطق رصد البيانات القديمة على الهاتف أثناء حدوث تشوّش في الإرسال عبر البلوتوث، يجب ألا يتجاوز الحد الأقصى للوقت بين عمليتَي تحديث 40 ملي ثانية.
تحسين استهلاك الطاقة
لتحسين استهلاك الطاقة، ننصح بأن يستخدم التنفيذ آليات تبديل برامج ترميز البلوتوث واختيار وضع الكمون التي توفّرها واجهتا طبقة تجريد الأجهزة الصوتية وطبقة تجريد الأجهزة الصوتية عبر البلوتوث.
تتيح عمليات تنفيذ إطار عمل الصوت وحزمة البلوتوث في AOSP إشارات للتحكّم في تبديل برامج الترميز. إذا كان تنفيذ الشركة المصنّعة الأصلية يستخدم طبقة تجريد الأجهزة الصوتية الأساسية (HAL) للصوت عبر البلوتوث، والمعروفة باسم وضع نقل الترميز، يجب أن تضمن الشركة المصنّعة الأصلية أنّ طبقة تجريد الأجهزة الصوتية تنقل هذه الإشارات بين طبقة تجريد الأجهزة الصوتية ومجموعة بروتوكولات البلوتوث.
تبديل برنامج الترميز
عند تفعيل ميزة "الصوت المكاني الديناميكي" وتتبُّع حركة الرأس، استخدِم برنامج ترميز بزمن انتقال منخفض، مثل Opus. عند تشغيل محتوى صوتي غير مكاني، استخدِم برنامج ترميز منخفض الطاقة، مثل الترميز المتقدّم للصوت (AAC).
اتّبِع القواعد التالية أثناء تبديل برامج الترميز:
- تتبُّع النشاط فقط في مصادر إخراج الصوت التالية في طبقة تجريد الأجهزة (HAL):
- إخراج مخصّص لتقنية "تحسين الصوت"
- عمليات بث خاصة بالوسائط، مثل التشغيل من المخزن المؤقت العميق أو التشغيل من خلال نقل البيانات المضغوطة
عندما تكون جميع عمليات البث ذات الصلة غير نشطة ويبدأ بث Spatializer، ابدأ بث Bluetooth مع ضبط
isLowLatencyعلىtrueلتحديد برنامج ترميز بزمن انتقال منخفض.عندما تكون جميع عمليات البث ذات الصلة غير نشطة ويبدأ بث الوسائط، ابدأ بث Bluetooth مع ضبط
isLowLatencyعلىfalseلتحديد برنامج ترميز منخفض استهلاك الطاقة.إذا كان بث الوسائط نشطًا وبدأ بث Spatializer، أعِد تشغيل بث البلوتوث مع ضبط
isLowLatencyعلىtrue.
من جهة سماعة الرأس، يجب أن تتوافق سماعة الرأس مع برامج الترميز المنخفضة التأخير والمنخفضة استهلاك الطاقة، وأن تنفّذ بروتوكول اختيار الترميز العادي.
تعديل وضع وقت الاستجابة
يتم تعديل وضع وقت الاستجابة عند اختيار برنامج الترميز الذي يتيح وقت استجابة سريعًا.
استنادًا إلى ما إذا كان تتبُّع حركة الرأس مفعّلاً أو غير مفعّل، يستخدم تعديل وضع وقت الاستجابة الآليات المتاحة لتقليل وقت الاستجابة أو زيادته بهدف تحقيق أفضل تسوية بين وقت الاستجابة والطاقة وجودة الصوت. عند تفعيل الصوت المكاني وتتبُّع حركة الرأس، يتم اختيار وضع وقت الاستجابة السريع. عند تفعيل ميزة "الصوت المكاني" وإيقاف ميزة "تتبُّع حركة الرأس"، يتم اختيار وضع "زمن الاستجابة المنخفض". توفّر ميزة "تعديل وقت الاستجابة" توفيرًا كبيرًا في استهلاك الطاقة وزيادة في ثبات اتصال الصوت عبر البلوتوث عند طلب صوت مكاني ثابت فقط. إنّ آلية تعديل وقت الاستجابة الأكثر شيوعًا هي تقليل حجم ذاكرة التخزين المؤقت للتفاوت الزمني أو زيادته في سماعة رأس بلوتوث.
راجِع تتبُّع حركة الرأس عبر LE Audio لمعرفة كيفية ضبط وضع الكمون في LE Audio.