Bluetooth Low Energy Audio (LEA) تضمین میکند که کاربران میتوانند صدایی با وفاداری بالا را بدون کاهش عمر باتری دریافت کنند و به آنها اجازه میدهد به طور یکپارچه بین موارد استفاده مختلف جابجا شوند. Android 13 (سطح API 33) شامل پشتیبانی داخلی برای LEA است.
اکثر هدستهای LEA تا زمانی که سهم بازار دستگاه منبع LEA افزایش یابد، حالت دوگانه خواهند داشت. کاربران باید بتوانند هر دو حمل و نقل را در هدست های حالت دوگانه خود جفت و تنظیم کنند.
موارد استفاده کنید
ممکن است بخواهید LEA را برای موارد استفاده زیر ادغام کنید:
به اشتراک گذاری صدا: کاربران می توانند به طور همزمان چندین جریان صوتی را در یک یا چند دستگاه سینک صوتی به اشتراک بگذارند. صدا بین دستگاه منبع و دستگاه های متصل همگام می شود.
پخش صوتی: کاربران میتوانند صدا را برای دوستان و خانواده پخش کنند، در حالی که برای اطلاعات، سرگرمی یا دسترسی به پخشهای عمومی متصل میشوند.
پشتیبانی از کدک صوتی LC3: این کدک صوتی پیش فرض است و جایگزین کدک SBC مورد استفاده برای A2DP (رسانه) و mSBC در HFP (صدا) می شود. LC3 کارآمدتر، قابل تنظیم مجدد و کیفیت بالاتری دارد.
بهبود نمونه گیری صدا: هدست ها می توانند کیفیت صدای خروجی بالایی را هنگام استفاده از میکروفون حفظ کنند. بلوتوث کلاسیک کیفیت صدا را هنگام استفاده از میکروفون های بلوتوث کاهش می دهد. با BLE Audio، نمونه گیری ورودی و خروجی می تواند به 32 کیلوهرتز برسد.
میکروفون استریو: Hearables میتواند صدا را با میکروفنهای استریو برای بهبود صدای فضایی ضبط کند.
پشتیبانی از نمایه سمعک (HAP): HAP دسترسی و استفاده بیشتری را نسبت به پروتکل های قبلی ASHA به کاربران ارائه می دهد. کاربران می توانند از سمعک خود برای تماس های تلفنی و برنامه های VoIP استفاده کنند.
پشتیبانی از پروتکل ویژگی پیشرفته (EATT): EATT به توسعه دهندگان این امکان را می دهد که چندین فرمان را به طور همزمان به سمعک های جفت شده ارسال کنند.
سناریوهای کلیدی
چهار دسته اصلی از موارد استفاده وجود دارد:
مکالمه: برنامه های Dialer و VoIP که به مسیریابی ارتباطی با تاخیر کم نیاز دارند، صدای با کیفیت بالا و مصرف باتری کمتری ارائه می دهند.
بازی: میکروفون همزمان و پخش با وفاداری بالا به بازیها اجازه میدهد صدای با کیفیت بالا را برای شنیدنیها پخش کنند. هنگامی که یک بازی میکروفون بلوتوث را آماده استفاده می کند، یک برنامه بازی می تواند به ورودی صدای BLE دسترسی پیدا کند. سپس، هنگامی که یک بازیکن یک مکالمه زنده با یک بازیکن همتا را شروع می کند، برنامه بازی می تواند بدون تاخیر از داده های میکروفون استفاده کند.
رسانه: برنامه های رسانه مجاز به تنظیم دستگاه مورد نظر مدیر صوتی هستند. کاربر می تواند با تغییر دستگاه دلخواه خود از داخل تنظیمات سیستم، این مورد را لغو کند.
دسترسی: سمعکهایی که از صدای BLE پشتیبانی میکنند اکنون میتوانند از میکروفون استفاده کنند و به کاربران این امکان را میدهند که به طور مداوم از سمعک خود برای تماس استفاده کنند.
API ها و روش های BLE Audio
API ها و روش های زیر برای پشتیبانی از شنیده های صوتی BLE مورد نیاز است:
مدیر صدا
-
setCommunicationDevice()
دستگاه صوتی را انتخاب می کند که باید برای موارد استفاده ارتباطی، به عنوان مثال تماس های صوتی یا تصویری استفاده شود. این روش می تواند توسط برنامه های چت صوتی یا تصویری برای انتخاب یک دستگاه صوتی متفاوت غیر از دستگاهی که به طور پیش فرض توسط پلتفرم انتخاب شده است، استفاده شود. این API جایگزین API های منسوخ شده زیر می شود:startBluetoothSco()
،stopBluetoothSco()
وsetSpeakerphoneOn()
. -
clearCommunicationDevice()
پس از پایان تماس یا جلسه برنامه شما فراخوانی می شود تا اطمینان حاصل شود که کاربر هنگام جابجایی بین برنامه های مختلف تجربه خوبی دارد.
نمایه بلوتوث
-
BluetoothLeAudio
سرویس بلوتوث را از طریق شی پراکسی کنترل می کند.
Telecom InCallService
-
InCallService#requestCallEndpointChange()
جایگزین APIهای منسوخInCallService.setAudioRoute()
وInCallService.requestBluetoothAudio()
می شود تا به برنامه ها اجازه دهد درخواست مسیریابی صدا به یکCallEndpoint
خاص را داشته باشند. هنگام درخواست تغییر، مشتریان نبایدCallEndpoint
خود را تعریف کنند. در عوض، نقطه پایانی جدید باید یکی از نقاط پایانی معتبر ارائه شده توسطInCallService.onAvailableCallEndpointsChanged(java.util.List)
باشد. -
CallEndpoint.TYPE_BLUETOOTH
جریان صدا را از طریق بلوتوث هدایت می کند. - این APIهای
InCallService
ذکر شده برای استفاده توسط برنامه پیشفرض تلفن در تلفن Android یا سایر سطوح تماس مانند ابزارهای پوشیدنی، اتومبیل یا سایر دستگاههای بلوتوثی طراحی شدهاند که ممکن است بخواهند بر مسیریابی صدا تأثیر بگذارند.
کنترل تماس مخابراتی
- کلاس جدید
CallControl
در سطح API 34 معرفی شده است تا جایگزینConnection
وConnectionService
فقط برای برنامه های VoIP شود. -
CallControl.requestCallEndpointChange()
نیز تغییرCallEndpoint
درخواست می کند. این API جایگزین APIهای منسوخConnection.requestBluetoothAudio()
وConnection.setAudioRoute()
می شود. - علاوه بر API های پلت فرم Telecom به روز شده، کتابخانه Telecom Jetpack هنگام ساخت برنامه های تماس صوتی و/یا ویدیویی بسیار توصیه می شود. این کتابخانه می تواند تا حد زیادی فرآیند یکپارچه سازی را ساده کرده و تماس VoIP را در تمام سطوح اندروید بهبود بخشد.
اطلاعات دستگاه صوتی
-
AudioDeviceInfo.TYPE_BLE_HEADSET
نوع دستگاه صوتی را به عنوان یک دستگاه LEA توصیف می کند. برای تشخیص اینکه آیا دستگاه شنیدنی یک دستگاه LEA است یا خیر استفاده می شود.
ضبط کننده صدا
-
setPreferredDevice()
دستگاه مورد نظر را برای مسیریابی صدا تنظیم می کند. کاربر می تواند این مورد را در تنظیمات سیستم لغو کند.
آداپتور بلوتوث
- اگر سخت افزار پلتفرم از LEA پشتیبانی کند
isLeAudioSupported()
برمی گردد. - اگر سخت افزار پلتفرم از LEA پشتیبانی کند
isLeAudioBroadcastSourceSupported()
برمی گردد.
راهنمای بر اساس موارد استفاده
در زیر دستورالعمل هایی برای اجرای LEA بر اساس موارد استفاده خاص ارائه شده است.
برنامه های کاربردی ارتباط صوتی
برنامههای ارتباط صوتی میتوانند مسیریابی صدا و وضعیت دستگاه را با مدیریت خود وضعیت خود یا با استفاده از Telecom API که مسیریابی صدا و منطق حالت را برای شما انجام میدهد، انتخاب کنند.
Self-Managed: برای برنامه هایی که در حال حاضر از
startBluetoothSco()
،stopBluetoothSco()
وsetSpeakerphoneOn()
استفاده می کنند یا می خواهند وضعیت مسیریابی صدا را خود مدیریت کنند، راهنمای تماس خود مدیریت شده Audio Manager را دنبال کنید.مدیریت شده: از کتابخانه Telecom Jetpack یا API های پلت فرم Telecom برای ایجاد یک برنامه تماس صوتی یا تصویری استفاده کنید.
این دو راه حل به شما کمک می کند تا مسیریابی صدا را سریع و آسان کنترل کنید و بین دستگاه های بلوتوث سوئیچ کنید. برای اطلاعات بیشتر، راهنمای تماس های مدیریت شده مخابراتی را ببینید.
برنامه های ضبط صدا
- ضبط کننده رسانه: هنگام ضبط صدا با استفاده از Media Recorder، اگر بلوتوث قابل شنیدن از LEA پشتیبانی می کند، اکنون می توانید به صورت استریو ضبط کنید. راهنمای ضبط صدا را بررسی کنید.
توصیه های هدست LE Audio (LEA).
با انتشار بیشتر هدست های LEA، مشکلاتی را در آزمایش های واقعی کشف کرده ایم که تجربه کاربر را کاهش می دهد. مشخصات همه این مسائل را پوشش نمی دهد. جدول زیر لیستی از توصیه هایی را ارائه می دهد که سازندگان هدست LEA باید برای بهبود تجربه انتها به انتها برای کاربران اندروید دنبال کنند.
توضیحات | زمینه |
---|---|
پشتیبانی از استخراج کلید انتقال متقاطع (CTKD) برای هدست های دو حالته:
| اکثر هدستهای جدید LEA تا زمانی که سهم بازار دستگاه منبع LEA افزایش یابد، حالت دوگانه خواهند داشت. مهم است که کاربران بتوانند هدست های دو حالته خود را به طور یکپارچه جفت کنند و هر دو حمل و نقل را راه اندازی کنند. این برای جفت سریع گوگل نیز مهم است. |
اگر میخواهید هدستهای LEA شما بهطور قابل اعتمادی دوباره به دستگاههای منبع متصل شوند، از اعلامیههای هدفمند (TAs) پشتیبانی کنید. هدفون های صوتی LE باید از TA برای درخواست اتصال ورودی از دستگاه های مرکزی استفاده کنند. به BT SIG آینده اضافه خواهد شد. | برخلاف مدل پیجینگ BR/EDR که در آن اتصال می تواند توسط تلفن یا هدست آغاز شود، اتصال در LEA باید توسط دستگاه مرکزی آغاز شود. در حال حاضر، بسیاری از هدستها از TA استفاده نمیکنند، به این معنی که ممکن است دستگاه مرکزی بدون افزودن آن به فهرست مجاز، قادر به اتصال مجدد به دستگاه جانبی نباشد. با این حال، یک راه حل لیست مجاز ممکن است مانع از اتصال هدست به یک دستگاه مرکزی دیگر شود. بنابراین، مهم است که هدستهای LEA از TAها بهدرستی پشتیبانی کنند تا دستگاه مرکزی بتواند بدون راهحلهایی که ممکن است اتصالات چند نقطهای را قطع کند، بهطور قابل اعتمادی دوباره وصل شود. |
قابلیت کشف بهینه برای هدفونهای حالت دوگانه
| این امر مانع از ظاهر شدن هدفونهای دو حالته LEA بهعنوان ورودیهای تکراری در تنظیمات بلوتوث میشود که ممکن است کاربران را سردرگم کند و تجربه جفتسازی LEA را به خطر بیندازد. انتخاب رهبر پویا مخصوصاً برای دستگاههای حالت دوگانه که به صورت تدریجی جفت میشوند، مهم است. به عنوان مثال، اگر در جفت شدن اولیه فقط یک هدفون در دسترس باشد، باید خود را به عنوان یک دستگاه دو حالته نشان دهد. وقتی کاربر بعداً با هدفون دوم جفت میشود، فقط باید با مؤلفه LE جفت شود و CSIP مطمئن میشود که آنها در Android با هم گروهبندی شدهاند. نشانی هویت در حین جفتسازی توصیه میشود زیرا مؤلفه BR/EDR از قبل آدرس عمومی دستگاه را در معرض دستگاههای مجاور قرار میدهد. |
پشتیبانی از پروتکل ویژگی پیشرفته (EATT) . | تاخیر جفت شدن و اتصال را کاهش می دهد. |
پشتیبانی از کش قوی GATT. | تأخیر اتصال را کاهش می دهد، به خصوص برای جوانه های TWS. |
پشتیبانی از subrating اتصال . | امکان برنامه ریزی بسته های انعطاف پذیرتر و صرفه جویی احتمالی باتری را فراهم می کند. |
اطمینان حاصل کنید که در طول پردازش قبل و بعد برای پخش و ضبط، خط لوله پردازش سیگنال می تواند در فرکانس های 16، 24، 32 و 48 کیلوهرتز کار کند و همچنین از فرکانس های بالاتر پشتیبانی کند . | از نرخ نمونه برداری بالاتر پشتیبانی شده برای مسیرهای ضبط تماس LEA یا VoIP و پخش رسانه بهره می برد. |
پشتیبانی از کنترل قدرت LE | مدیریت توان بهتر |
پشتیبانی از نوع زمینه
توضیحات | زمینه |
---|---|
از همه انواع زمینه مشخص شده در شماره های اختصاص داده شده 6.12.3 استفاده کنید، مگر اینکه هدست به صراحت از یک نوع زمینه خاص پشتیبانی نکند. | به عنوان مثال، اگر نوع زمینه "بازی" پشتیبانی نشود، اندروید صداهای بازی را ارسال می کند. به طور خاص، توجه داشته باشید که نوع زمینه "نامشخص" به معنای "هر نوع زمینه" نیست و انواع بافت پشتیبانی نشده را پوشش نمی دهد. |
هنگامی که دستگاه مرکزی با ASCS دستگاه جانبی تعامل دارد، دستگاه جانبی باید به MCS و TBS دستگاه مرکزی متصل شود. ممکن است دستگاه مرکزی همیشه از صدای LE به عنوان مسیر پخش استفاده نکند زیرا ممکن است به استفاده از A2DP یا HFP بازگردد. دستگاه جانبی می تواند از تعامل ASCS به عنوان نشانه ای استفاده کند که آیا دستگاه مرکزی از صدای LE برای پخش استفاده می کند یا خیر. چند نمونه از تعاملات ASCS خواندن، نوشتن و ثبت نام برای اطلاع رسانی هستند. |