دعم الصوت لسماعات الأذن الطبية باستخدام Bluetooth LE

يمكن أن تحسِّن أجهزة سماعات الأذن الطبية (HA) إمكانية الوصول على الأجهزة الجوّالة التي تعمل بنظام التشغيل Android باستخدام L2CAP المهيأة للاتصال القنوات (CoC) عبر Bluetooth Low Energy (BLE). يستخدم CoC مرنًا تخزين مؤقت لعدة حزم صوتية للحفاظ على تدفق ثابت من الصوت، حتى في وجود حزمة مفقودة. يوفر المخزن المؤقت جودة الصوت لـ سماعات الأذن الطبية على حساب وقت الاستجابة.

يشير تصميم CoC إلى البلوتوث الإصدار 5 من المواصفات الأساسية (BT). لكي يتماشى مع المواصفات الأساسية، يجب تحديث جميع وحدات البايت سيتم قراءة القيم الموجودة في هذه الصفحة كلغة صغيرة.

المصطلحات

  • المركزي: جهاز Android الذي يبحث عن عرض الإعلانات عبر البلوتوث.
  • جهاز ملحق - أداة السمع التي ترسل حزم الإعلانات عبر البلوتوث.

طوبولوجيا الشبكة وبنية النظام

عند استخدام CoC مع السماعات الطبية، تفترض طوبولوجيا الشبكة جهاز مركزي وجهازين ملحقين، أحدهما يسرى والآخر أيمن، كما هو موضح في الشكل 1. يعرض نظام البلوتوث الصوتي الجانب الأيسر. والملحقات اليمنى كحوض صوت واحد إذا كان الجهاز الملحق مفقودة، بسبب التوافق الأحادي أو انقطاع الاتصال، فإن يمزج القنوات الصوتية اليمنى واليسرى وينقل الصوت بالجهاز الملحق المتبقي. إذا فقد النظام المركزي الاتصال بكليهما الأجهزة الملحقة، فإن الجزء المركزي يأخذ في الاعتبار الرابط إلى حوض الصوت وتفقدها. وفي هذه الحالات، يوجه الصوت المركزي الصوت إلى مصدر آخر.


الشكل 1. طوبولوجيا إقران السماعات الطبية مع أجهزة Android الجوّالة التي تستخدم CoC عبر BLE

عندما لا يبث الجهاز المركزي البيانات الصوتية إلى الجهاز الملحق ويمكن الحفاظ على اتصال BLE، يجب ألا ينفصل الجهاز المركزي طرفي. يسمح الحفاظ على الاتصال لتوصيل البيانات إلى خادم GATT المتوفّر على الجهاز الملحق.

عند إقران سماعات الأذن الطبية وتوصيلها، فإن الجهاز المركزي يجب أن:

  • تتبع أحدث الأجهزة الملحقة اليمنى واليسرى المقترنة.
  • لنفترض أنّ الأجهزة الملحقة قيد الاستخدام في حال توفُّر إقران صالح. تشير رسالة الأشكال البيانية الاتصال المركزي أو إعادة الاتصال به، الجهاز عند فقدان الاتصال.
  • بافتراض أن الأجهزة الملحقة لم تعد قيد الاستخدام في حال حذف إقران.

في الحالات المذكورة أعلاه، يشير الاقتران إلى إجراء تسجيل مجموعة من سماعات الأذن الطبية باستخدام معرف فريد عالمي (UUID) محدد المحددات اليمنى أو اليسرى في نظام التشغيل، وليس عملية إقران البلوتوث.

متطلبات النظام

لتنفيذ CoC بشكل صحيح للحصول على تجربة مستخدم جيدة، يمكن استخدام تقنية يجب على الأنظمة في الأجهزة المركزية والأجهزة الملحقة ما يلي:

  • استخدام وحدة تحكّم متوافقة مع الإصدار BT 4.2 أو أعلى اتصالات LE Secure موصى به بشدة.
  • يتوفّر لدى الدعم المركزي رابطَين على الأقل من روابط LE في الوقت نفسه يتضمّنان معلَمات كما هو موضح في حزمة صوت والتنسيق والتوقيت.
  • أن يتوافق الجهاز الملحق مع رابط واحد على الأقل منخفض القوة مع المَعلمات كما هو موضح في حزمة صوت والتنسيق والتوقيت.
  • التحكم في التدفق المستند إلى رصيد LE [BT Vol 3, Part A, Sec 10.1]. يجب أن تتوافق الأجهزة مع حجم MTU وMPS بحجم 167 بايت على الأقل CoC ويمكن تخزين ما يصل إلى 8 حزم مؤقتًا.
  • لها امتداد طول بيانات LE [BT Vol 6, Part B, Sec 5.1.9] مع حمولة لا تقل عن 167 بايت.
  • أن يتيح الجهاز المركزي أمر تحديث اتصال HCI LE Connection والالتزام بقيم maximum_CE_Length غير الصفرية مَعلمات minimum_CE_Length
  • يحافظ مركز البيانات المركزي على سرعة معالجة البيانات في اتصالَي LE CoC أجهزة ملحقة مختلفة مع فواصل الاتصال والحمولة الأحجام في حزمة صوت والتنسيق والتوقيت.
  • ضبط الجهاز الملحق على MaxRxOctets مَعلمات MaxRxTime في LL_LENGTH_REQ أو LL_LENGTH_RSP إطار لتصبح أصغر القيم المطلوبة اللازمة لهذه المواصفات. يتيح ذلك تحسين جدولة الوقت عند حساب مقدار الوقت لازمة للحصول على إطار.

يوصى بشدة بأن يدعم الجهاز المركزي والملحق حجم 2 ميغابايت من PHY المحددة في مواصفات BT 5.0. يدعم الجهاز المركزي الروابط الصوتية 64 كيلوبت/ثانية على الأقل على مليون و2 مليون PHY. ولن يتم استخدام PHY طويل المدى.

يستخدم CoC آليات البلوتوث القياسية لتشفير طبقة الروابط والتنقل بين الترددات المختلفة.

خدمات ASHA GATT

يجب أن يتضمّن الجهاز الملحق بثًا صوتيًا لسماعة الأذن الطبية (ASHA) خدمة خادم GATT الموضحة أدناه. يجب على الجهاز الملحق الإعلان عن هذه الخدمة عندما يكون في وضع قابل للاكتشاف بشكل عام للسماح بمركزي التعرف على حوض الصوت. أي عمليات بث صوتي منخفض الطاقة (متوافق مع ميزة Bluetooth LE Audio) تشفيرًا. يتكون البث الصوتي بتقنية BLE من الخصائص التالية:

السمة الخصائص الوصف
خصائص القراءة فقط قراءة راجِع ReadOnlyProperties.
نقطة التحكم في الصوت الكتابة والكتابة بدون رد نقطة تحكّم في البث الصوتي عرض AudioControlPoint:
نقطة AudioStatusPoint القراءة/الإشعار حقل تقرير الحالة لنقطة التحكم في الصوت عرض AudioStatusPoint.
مستوى الصوت الكتابة بدون رد وحدة بايت بين -128 و0 تشير إلى مقدار التخفيف المطلوب الإشارة الصوتية التي يتم بثها، تتراوح بين -48 ديسيبل إلى 0 ديسيبل. الإعداد يتم تفسير 128- على أنه مكتوم الصوت تمامًا، أي أدنى مستوى صوت بدون كتم الصوت المستوى -127 وهو ما يعادل -47.625 ديسيبل. عند الإعداد 0، يجب أن تمثل نغمة جيب الزاوية المتدفقة من السكك الحديدية التي يتم بثها إدخال 100 ديسيبل سلكي معادِل في سماعة الأذن الطبية. سيجري المفتاح الرئيسي البيانات على نطاق كامل واستخدام هذا المتغير لتعيين مستوى العرض التقديمي المطلوب في الجهاز الملحق.
LE_PSM_OUT قراءة PSM المراد استخدامه لربط القناة الصوتية. ليتم اختيارك من النطاق الديناميكي [BT Vol 3, Part A, Sec 4.22]

أرقام التعريف الفريدة العالمية (UUID) المعيّنة للخدمة والخصائص التالية:

المعرّف الفريد العالمي للخدمة: {0xFDF0}

السمة المعرّف الفريد العالمي (UUID)
خصائص القراءة فقط {6333651e-c481-4a3e-9169-7c902aad37bb}
نقطة التحكم في الصوت {f0d4de7e-4a88-476c-9d9f-1937b0996cc0}
حالة الصوت {38663f1a-e711-4cac-b641-326b56404837}
مستوى الصوت {00e4ca9e-ab14-41e4-8823-f9e70c7e91df}
LE_PSM_OUT {2d410339-82b6-42aa-b34e-e2e01df8cc1a}

بالإضافة إلى خدمة ASHA GATT، يجب على الجهاز الملحق أيضًا تنفيذ خدمة معلومات الجهاز للسماح للمركز المركزي باكتشاف أسماء الشركات المصنّعة وأسماء أجهزة الجهاز الملحق.

خصائص القراءة فقط

وتحتوي ReadOnlyProperties على القيم التالية:

بايت الوصف
0 الإصدار - يجب أن يكون 0x01
1 يُرجى الاطّلاع على مقالة DeviceCapabilities.
2-9 يُرجى الاطّلاع على HiSyncId.
10 راجِع خريطة الميزات.
11-12 RenderDelay. هذا هو الوقت بالمللي ثانية، بدءًا من وقت يتلقى الجهاز الملحق إطارًا صوتيًا إلى أن يعرض الجهاز الملحق الناتج. يمكن استخدام وحدات البايت هذه لتأخير فيديو إلى المزامنة مع الصوت
13-14 محجوزة للاستخدام في المستقبل. البدء بالإعداد على الأصفار
15-16 أرقام تعريف الترميز المتوافقة. هذا قناع بت لأرقام تعريف برامج الترميز المتوافقة 1 في موقع بت يتجاوب مع برنامج ترميز معتمد. مثلاً، يشير 0x0002 إلى أنّ G.722 بتردد 16 كيلوهرتز ويجب تعيين جميع وحدات البت الأخرى على 0.

إمكانات الجهاز

البت الوصف
0 جانب الجهاز (0: يسار، 1: يمين)
1 للإشارة إلى ما إذا كان الجهاز مستقلاً بذاته ويتلقى بيانات أحادية، أو ما إذا الجهاز جزء من مجموعة (0: أحادي الأذن، 1: ثنائي الأذن)
2 يتوافق الجهاز مع CSIS (0: غير متوافق، 1: متوافق)
3-7 محجوز (تم الضبط على 0)

معرّف HiSyncID

يجب أن يكون هذا الحقل فريدًا لجميع الأجهزة المرتبطة بالأذنين ولكن يجب أن يكون نفسه للمجموعة اليسرى واليمنى.

بايت الوصف
0-1 معرّف الشركة المصنّعة. إنه الشركة المعرّفات التي تحدّدها BTSIG
2-7 معرّف فريد يحدّد مجموعة السماعات الطبية. يجب ضبط رقم التعريف هذا. على نفس الجهاز على كل من الجهاز الملحق الأيسر والأيمن.

خريطة الميزات

البت الوصف
0 إنّ بث إخراج الصوت من LE CoC متوافق (نعم أو لا).
1-7 محجوز (تم الضبط على 0).

أرقام تعريف برامج الترميز

إذا تم تعيين البت، فسيدعم برنامج الترميز هذا.

ID / رقم بت برنامج الترميز ومعدل العينة معدل نقل البيانات المطلوب وقت عرض اللقطة إلزامية على الأجهزة المركزية (C) أو الأجهزة الطرفية (P)
0 تم الحجز تم الحجز تم الحجز تم الحجز
1 G.722 بسرعة 16 كيلو هرتز 64 كيلوبت/ثانية متغير C وP
من 2 إلى 15 محجوزة.
0 محجوز أيضًا.

نقطة التحكم في الصوت

لا يمكن استخدام نقطة التحكم هذه عند إغلاق محطة الطاقة المتجددة (LE CoC). عرض بدء إيقاف البث الصوتي للاطّلاع على وصف الإجراء.

رمز التشغيل الوسيطات الإجراء الفرعي لـ GATT الوصف
«Start» 1
  • uint8_t codec
  • uint8_t audiotype
  • int8_t volume
  • int8_t otherstate
اكتب الردّ وترقَّب تلقّي إشعار إضافي بالحالة عبر AudioStatusPoint. توجيه الجهاز الملحق لإعادة ضبط برنامج الترميز وبدء لتشغيل الإطار 0. يشير حقل برنامج الترميز إلى رقم تعريف برنامج الترميز المطلوب استخدامه لعملية التشغيل هذه على سبيل المثال، حقل برنامج الترميز هو "1". لـ G.722 بسرعة 16 كيلو هرتز.

يشير حقل بت نوع الصوت إلى أنواع الصوت الموجودة في ساحة المشاركات:
  • 0 - غير معروف
  • 1 - نغمة الرنين
  • 2 - مكالمة هاتفية
  • 3 - الوسائط
يشير الحقل otherstate إلى ما إذا كان الجانب الآخر من سماعة الأذن الطبية اتصال جهاز واحد. قيمة الحقل هي 1 عند توصيل الجهاز الملحق الآخر، وإلا تكون القيمة 0.

لن يطلب الجهاز الملحق تحديثات الاتصال قبل تم استلام رمز العملية «Stop».
«Stop» 2 بدون تحديد نمط اكتب الردّ وترقَّب تلقّي إشعار إضافي بالحالة عبر AudioStatusPoint. توجّه هذه السياسة الجهاز الملحق إلى إيقاف عرض الصوت. محتوى صوتي جديد يجب بدء تسلسل الإعداد بعد هذه المحطة بالترتيب لعرض الصوت مرة أخرى.
«Status» 3
  • uint8_t connected
الكتابة بدون رد إبلاغ الجهاز الملحق المتصل بوجود تحديث للحالة على الجهاز جهاز ملحق آخر. يشير الحقل المرتبط إلى نوع التحديث:
  • 0 - تم فصل جهاز ملحق آخر.
  • 1: تم توصيل جهاز ملحق آخر.
  • 2: تم تعديل مَعلمة اتصال LE Connection على أي من الاتصال

نقطة AudioStatusPoint

حقل تقرير الحالة لنقطة التحكم في الصوت

رموز العمليات الوصف
0 الحالة على ما يرام
-1 أمر غير معروف
-2 مَعلمات غير قانونية

إعلانات خدمة ASHA GATT

يجب أن يكون UUID للخدمة في حزمة الإعلانات. في الإعلان أو الفحص يجب أن تحتوي الأجهزة الملحقة على بيانات خدمة:

إزاحة البايت الاسم الوصف
0 طول الإعلان >= 0x09
1 نوع الإعلان 0x16 (بيانات الخدمة - المعرّف الفريد العالمي 16 بت)
من 2 إلى 3 المعرّف الفريد العالمي للخدمة 0xFDF0 (طرف صغير)

ملاحظة: هذا مستند تعريف مؤقت.
4 إصدار البروتوكول 0x01
5 الإمكانية
  • 0 - الجانب الأيسر (0) أو الجانب الأيمن (1)
  • 1 - جهاز فردي (0) أو جهاز مزدوج (1).
  • 2 - يتوافق الجهاز مع CSIS (<0: غير متوافق، 1: متوافق)
  • 3-7 - محجوزة. يجب أن تكون هذه البت صفرًا.
6-9 تم اقتطاع HiSyncID أهم أربع وحدات بايت HiSyncId. يجب أن تكون وحدات البايت هذه هي الجزء الأكثر عشوائيًا من المعرّف.

يجب أن تحتوي الأجهزة الملحقة على اسم محلي كامل نوع البيانات الذي يشير إلى اسم سماعة الأذن الطبية. سيكون هذا الاسم أن يتم استخدامها على واجهة مستخدم الجهاز المحمول حتى يتمكن المستخدم من اختيار الجهاز المناسب. يجب ألا يشير الاسم إلى اليمين أو اليسار القناة نظرًا لتوفير هذه المعلومات في DeviceCapabilities.

إذا وضعت الأجهزة الملحقة الاسم ونوع بيانات خدمة ASHA بالطريقة نفسها نوع الإطار (ADV أو SCAN RESP)، ثم نوعا البيانات ("Complete Local Name" (الاسم المحلي الكامل) و"بيانات الخدمة الخاصة بخدمة ASHA") في نفس الإطار. يسمح ذلك للماسح الضوئي للجهاز الجوّال بالحصول على كلا البيانات. في نفس نتيجة الفحص.

أثناء الإقران الأولي، من المهم أن تكون الأجهزة الملحقة الإعلان بمعدّل سريع بما يكفي للسماح للأجهزة الجوّالة بسرعة واكتشاف الأجهزة الملحقة والربط بها.

مزامنة الأجهزة الملحقة اليمنى واليسرى

للعمل باستخدام البلوتوث على الأجهزة الجوّالة التي تعمل بنظام التشغيل Android، والأجهزة الملحقة ويكونون مسئولين عن ضمان مزامنتها. التشغيل على الأجهزة الطرفية اليمنى واليسرى إلى المزامنة في الوقت. يجب أن يشغّل كلا الجهازين الطرفَين عيّنات صوتية من المصدر في نفس الوقت.

يمكن للأجهزة الملحقة مزامنة وقتها باستخدام أحد التسلسلات. ملحق بكل حزمة من حمولة البيانات الصوتية. المنطقة المركزية تضمن أن يتم تشغيل حزم الصوت في نفس الوقت الوقت على كل جهاز ملحق بنفس رقم التسلسل. التسلسل زيادات الأرقام بمقدار واحد بعد كل حزمة صوت. كل تسلسل الرقم يتكون من 8 بت، لذلك فإن أرقام التسلسل ستتكرر بعد 256 حزم الصوت. بما أنّه يتم تحديد كل حجم حزمة صوتية ومعدل عينة لكل اتصال، يمكن للجهازين الملحقين استنتاج في اللعب. لمزيد من المعلومات حول حزمة الصوت، يُرجى الاطّلاع على تنسيق حزمة الصوت الزمنية.

يساعد الجهاز المركزي من خلال توفير مشغلات للأجهزة ذات الأذنين عند إجراء المزامنة المخاطرة. تخبر هذه المشغلات كل جهاز ملحق بحالة جهاز ملحق مقترن متى توجد عملية قد يؤثر على المزامنة. العوامل المُشغِّلة هي:

  • كجزء من الأمر «Start» في AudioControlPoint، حالة الاتصال الحالية للجانب الآخر من الأذنين الأجهزة.
  • متى كان هناك اتصال أو انقطاع أو عملية تحديث معلمة الاتصال على جهاز ملحق واحد، يتم إرسال الأمر «Status» الخاص بـ AudioControlPoint إلى الجانب الآخر من الأجهزة المرتبطة بالأذنين.

تنسيق حزمة الصوت وتوقيتها

إنّ تجميع إطارات الصوت (كتلة العينات) في حزم يتيح السمع يستنتج أداة التوقيت من مراسي توقيت طبقة الروابط. إلى لتبسيط عملية التنفيذ:

  • يجب أن يتطابق إطار الصوت دائمًا مع الفاصل الزمني للاتصال. على سبيل المثال، إذا كان فاصل الاتصال 20 ملي ثانية وكان معدل العينة هو 16 كيلو هرتز، فسيتضمن إطار الصوت 320 عينة.
  • تقتصر معدلات العينة في النظام على مضاعفات من 8 كيلوهرتز إلى أن يكون لها دائمًا عدد صحيح من العينات في إطار بغض النظر عن وقت عرض اللقطة أو فاصل الاتصال.
  • يضيف بايت التسلسل الإطارات الصوتية. بايت التسلسل مع تضمين تأثير الالتفاف والسماح للجهاز الملحق اكتشاف عدم تطابق المخزن المؤقت أو التدفق المنخفض.
  • يجب أن يتوافق إطار الصوت دائمًا مع حزمة LE واحدة. الصوت كحزمة L2CAP منفصلة. حجم LE سيكون قانون LL PDU هو:
    حجم حمولة الصوت + 1 (عدّاد التسلسل) + 6 (4 لعنوان L2CAP و2 لعنوان SDU)
  • يجب أن يكون حدث الاتصال دائمًا كبيرًا لاحتواء الفيديو على صوتين حزمتان وحزمتان فارغتان لحقل ACK لحجز معدل نقل البيانات عمليات إعادة الإرسال. يُرجى ملاحظة أنّ الحزمة الصوتية قد تكون مجزأة حسب وحدة تحكم البلوتوث المركزية. يجب أن يتمكّن الجهاز الملحق من تلقّي أكثر من حزمتَي صوت مجزّأتَين لكل حدث اتصال

ولمنح بعض المرونة المركزية، لا يمكن أن يكون طول حزمة G.722 المحددة. يمكن أن يتغير طول حزمة G.722 بناءً على الاتصال الفاصل الذي يحدده المركز.

يشير تنسيق الثماني وحدات بتات للناتج G.722 إلى تسجيل ITU-T G.722 (09/2012) القسم 1.4.4 "معدد الإرسال"

وبالنسبة إلى جميع برامج الترميز التي يدعمها الجهاز الملحق، يجب تدعم معلمات الاتصال أدناه. يُرجى العِلم أنّ هذه القائمة غير شاملة. من التكوينات التي يمكن للمركز المركزي تنفيذها.

برنامج الترميز معدل نقل البيانات الفاصل الزمني للاتصال طول العمر الافتراضي (مليون/مليون PHY) حجم حمولة البيانات الصوتية
G.722 بسرعة 16 كيلو هرتز 64 كيلوبت/ثانية 20 ملي ثانية 5000/3750 لنا 160 بايت

بدء بث صوتي وإيقافه

قبل بدء بث صوتي، يطلب الجهاز المركزي من الأجهزة الملحقة ويضع برنامج ترميز قاسم مشترك. ساحة المشاركات الإعداد ثم يتابع من خلال التسلسل التالي:

  1. PSM، ويمكنك قراءة RenderDelay اختياريًا. هذه القيم البيانات المخزنة مؤقتًا في الوسط.
  2. تم فتح قناة CoC L2CAP. سيمنح الجهاز الملحق 8 أرصدة في البداية.
  3. تم إصدار تحديث ربط لتبديل الرابط إلى المعلمات. المطلوب لبرنامج الترميز المحدد. يمكن للجهاز المركزي إجراء تحديث الاتصال هذا قبل اتصال CoC في الخطوة السابقة.
  4. ينتظر كل من المضيف المركزي والمضيف الملحق التحديث إكمال الحدث.
  5. أعِد تشغيل برنامج ترميز الصوت وأعِد ضبط عدد تسلسلات حزم البيانات على 0. الأمر «Start» مع المعلمات ذات الصلة هو الصادرة في AudioControlPoint. ينتظر المركز لإشعار حالة ناجح أمر «Start» السابق من الجهاز الملحق قبل البث. يمنح هذا الانتظار الجهاز الملحق الوقت اللازم لإعداد مسار تشغيل الصوت. أثناء البث الصوتي، يتم عرض النسخة طبق الأصل متاحًا في كل حدث اتصال على الرغم من أن قد يكون وقت استجابة النسخ المتماثل غير صفري.
  6. يحصل الجهاز الملحق على أول حزمة صوت من قائمة الانتظار الداخلية. (التسلسل رقم 0) وتشغيله.

يصدر الجهاز المركزي الأمر «Stop» لإغلاق نافذة البث الصوتي. بعد هذا الأمر، لا يلزم أن يكون الجهاز الملحق متاحًا في جميع حدث اتصال. لإعادة تشغيل البث الصوتي، اتّبِع التسلسل أعلاه، بدءًا من من الخطوة 5. عندما لا يكون المحور المركزي يتم بث الصوت، يجب أن تحافظ على اتصال منخفض الطاقة (LE) لـ GATT

لن يصدر الجهاز الملحق تحديثًا للاتصال بالجهاز المركزي. لتوفير الطاقة، قد يُصدر الجهاز المركزي تحديثًا للاتصال الأجهزة الملحقة في حال عدم بث الصوت.