يتيح نظام التشغيل 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 الأساسي للصوت عبر البلوتوث، المعروف باسم وضع نقل بيانات الترميز، يجب أن تضمن الشركة المصنّعة الأصلية أنّ HAL للصوت ينقل هذه الإشارات بين HAL للصوت وحزمة بروتوكول البلوتوث.
التبديل بين برامج الترميز
عند تفعيل ميزة "الصوت المكاني الديناميكي" وتتبُّع حركة الرأس، استخدِم برنامج ترميز بزمن انتقال منخفض، مثل Opus. عند تشغيل محتوى صوتي غير مكاني، استخدِم برنامج ترميز منخفض استهلاك الطاقة، مثل الترميز المتقدّم للصوت (AAC).
اتّبِع هذه القواعد أثناء تبديل الترميز:
- تتبُّع النشاط فقط على مصادر إخراج الصوت التالية في طبقة تجريد الأجهزة (HAL):
- إخراج مخصّص للمحسّن الصوتي
- عمليات بث خاصة بالوسائط، مثل التخزين المؤقت العميق أو تشغيل المحتوى المضغوط
عندما تكون جميع عمليات البث ذات الصلة غير نشطة ويبدأ بث الصوت المكاني، ابدأ بث البلوتوث مع ضبط
isLowLatency
علىtrue
لتحديد برنامج ترميز بزمن انتقال منخفض.عندما تكون جميع عمليات البث ذات الصلة غير نشطة ويبدأ بث الوسائط، ابدأ بث البلوتوث مع ضبط
isLowLatency
علىfalse
لتحديد برنامج ترميز منخفض الطاقة.إذا كان بث الوسائط نشطًا وبدأ بث الصوت المكاني، أعِد تشغيل بث البلوتوث مع ضبط
isLowLatency
علىtrue
.
من جهة سماعة الرأس، يجب أن تتوافق سماعة الرأس مع برامج الترميز المنخفضة التأخير والمنخفضة استهلاك الطاقة، وأن تنفّذ بروتوكول اختيار الترميز العادي.
تعديل وضع وقت الاستجابة
يتم تعديل وضع وقت الاستجابة عند اختيار برنامج الترميز الذي يتيح وقت استجابة منخفضًا.
استنادًا إلى ما إذا كان تتبُّع حركة الرأس مفعّلاً أو غير مفعّل، يستخدم تعديل وضع وقت الاستجابة آليات متاحة لتقليل وقت الاستجابة أو زيادته بهدف تحقيق أفضل توازن بين وقت الاستجابة والطاقة وجودة الصوت. عند تفعيل الصوت المكاني وتتبُّع حركة الرأس، يتم اختيار وضع زمن الاستجابة المنخفض. عند تفعيل الصوت المكاني وإيقاف ميزة تتبُّع حركة الرأس، يتم اختيار وضع معدّل الاستجابة المنخفض. توفّر ميزة تعديل وقت الاستجابة توفيرًا كبيرًا في استهلاك الطاقة وزيادة في ثبات رابط الصوت عبر البلوتوث عند طلب الصوت المكاني الثابت فقط. إنّ آلية ضبط وقت الاستجابة الأكثر شيوعًا هي تقليل حجم مخزن بيانات التفاوت أو زيادته في سماعة البلوتوث.
راجِع مقالة تتبُّع حركة الرأس عبر LE Audio لمعرفة المزيد عن تعديلات وضع وقت الاستجابة في LE Audio.