صدای کممصرف (LE) بلوتوث (BT) مکانیزمهای انتقال منطقی «منطقی اتصالگرای ناهمگام» (LE-ACL) و «همزمان» (LE-ISO) را برای دادههای ردگیری سر (HT) معرفی میکند.
Android 15 از تنظیمات حالت تأخیر برای HT براساس اینکه از سازوکار انتقال LE-ACL یا LE-ISO استفاده میشود یا نه پشتیبانی میکند.
این صفحه نحوه تعامل چارچوب صوتی، لایه انتزاع سختافزار صوتی، و پشته بلوتوث را برای شناسایی و انتخاب سازوکارهای انتقال LE-ACL یا LE-ISO پشتیبانیشده توسط میزبان و هدست شرح میدهد.
پشتیبانی از LE-ACL و LE-ISO
Android 15 بااستفاده از ویژگی سیستم تعریفشده توسط فروشنده، حالتهای تأخیر HAL صوتی، و حالتهای اتصال فضاساز، از سازوکارهای انتقال LE-ACL و LE-ISO پشتیبانی میکند.
خصوصیت سیستم
پیادهسازی فروشنده تلفن سازوکارهای انتقال پشتیبانیشده را در
bluetooth.core.le.dsa_transport_preference دارایی سیستم فهرست میکند. مقدار آن فهرستی از رشتههای جداشده با کاما است که انتقالهای پشتیبانیشده را به ترتیب اولویت فهرست میکند:
le-acl: انتقال LE-ACL، وقتی دادههای واحد اندازهگیری اینرسی (IMU) ازطریق پشته حسگر گزارش میشود.iso-hw: انتقال ISO با قابلیت تونلسازی دادههای HT مستقیماً از کنترلکننده Bluetooth به فضاساز در DSP صوتی.iso-sw: انتقال ISO بدون قابلیت تونلسازی، زمانی که دادههای IMU ازطریق پشته حسگر گزارش میشود.
حالتهای تأخیر
در مورد صدای کممصرف BT، سازوکار پشته BT برای نشان دادن حالتهای تأخیر پشتیبانیشده به لایه انتزاعی سختافزار صدا و چارچوب صوتی همان سازوکار تعریفشده برای BT کلاسیک (A2DP) است. «لایه انتزاع سختافزار» صوتی حالتهای تأخیر پشتیبانیشده را براساس دستگاه صوتی انتخابشده فعلی گزارش میکند.
پیادهسازیهای A2DP فقط از حالتهای FREE و LOW_LATENCY پشتیبانی میکنند.
درمقابل، برای صدای کممصرف بلوتوث، حالتهای تأخیر زیر در لایه انتزاعی سختافزار صدا تعریف شده است تا از افزودن سازوکارهای انتقال LE-ACL و LE-ISO پشتیبانی کند:
FREE: این مقدار نشان میدهد که هیچ محدودیت خاصی برای تأخیر وجود ندارد. این حالت زمانی استفاده میشود که تأخیر کم پشتیبانی نشود (توسط HAL نشان داده میشود)، یا زمانی که HT فعال نباشد (توسط چارچوب نشان داده میشود).LOW: این مقدار نشاندهنده تأخیر نسبتاً کم (مثلاً کمتر از ۱۰۰ میلیثانیه) سازگار با عملکرد HT است. این حالت زمانی استفاده میشود که از تأخیر کم پشتیبانی شود و HID ازطریق پروتکل ACL منتقل شود (که توسط HAL نشان داده میشود)، یا زمانی که HT فعال است و هیچ حالت تأخیر کم دیگری دردسترس نیست (که توسط چارچوب نشان داده میشود).DYNAMIC_SPATIAL_AUDIO_SOFTWARE: این حالت زمانی استفاده میشود که یکی از شرایط زیر برقرار باشد:- وقتی تأخیر کم پشتیبانی شود، HID ازطریق پروتکل ISO منتقل میشود، و HID نمیتواند به موتور جلوه فضاساز (که با HAL نشان داده میشود) تونلسازی شود.
- وقتی HT فعال باشد و از پروتکل ISO استفاده شود که چارچوب صوتی دادههای HID را به موتور جلوه فضاساز ارائه میدهد (که با چارچوب نشان داده میشود).
در این حالت، کتابخانه محاسباتی HT در چارچوب همه پیشپردازشها را روی دادههای IMU و تطبیق با حرکات تلفن که توسط حسگرهای تلفن نشان داده میشود انجام میدهد.
DYNAMIC_SPATIAL_AUDIO_HARDWARE: این حالت زمانی استفاده میشود که یکی از شرایط زیر برقرار باشد:- وقتی تأخیر کم پشتیبانی میشود، HID ازطریق پروتکل ISO منتقل میشود، و HID میتواند به موتور جلوه فضاساز تونلزده شود (که با لایه انتزاعی سختافزار نشان داده میشود).
- وقتی HT فعال است و از پروتکل ISO استفاده میشود، دادههای HID به موتور جلوه فضاساز تونلزنی میشود (توسط چارچوب نشان داده میشود).
در این حالت، موتور اثر فضاساز دادههای IMU پردازشنشده را مستقیماً از پشته BT یا کنترلکننده BT دریافت میکند. پیادهسازی اثر فضاساز همه پیشپردازشها را روی دادههای IMU و تطبیق با حرکات تلفن که توسط حسگرهای تلفن نشان داده میشود انجام میدهد.
تعداد ثابتهای حالت تأخیر به bluetooth.core.le.dsa_transport_preference
دارایی سیستم در Spatializer.cpp نگاشت میشود.
پشتیبانی از فضاساز
کنترلکننده فضاساز در سرویس خطمشی صوتی، انتخاب پروتکل انتقال HT را ازطریق LE Audio کنترل میکند. پیادهسازی موتور جلوه فضاساز نشاندهنده
پشتیبانی از تونلزنی داده HT با قابلیت HeadTracking.ConnectionMode است.
حالتهای اتصال HT پشتیبانیشده به شرح زیر است:
FRAMEWORK_PROCESSED: چارچوب صوتی دادههای IMU پیشپردازششده را در قالب بردار سر به صحنه به HAL ارائه میدهد. این حالت پیشفرض با حالت فعلی با بلوتوث کلاسیک مطابقت دارد.DIRECT_TO_SENSOR_SW: موتور اثر فضاساز مستقیماً ازطریق پشته نرمافزار حسگر به حسگر متصل میشود. چارچوب صوتی فقط وضعیت فعال حسگر را کنترل میکند. پیادهسازیهای نرمافزاری که از پیشپردازش دادههای IMUlibheadtrackingAOSP یا پیادهسازیهای فضاساز بارگذاریشده DSP استفاده نمیکنند، میتوانند از حالتDIRECT_TO_SENSOR_SWاستفاده کنند.DIRECT_TO_SENSOR_TUNNEL: موتور جلوه فضاساز مستقیماً ازطریق تونلزنی سختافزاری به حسگر متصل میشود. چارچوب صوتی فقط وضعیت فعال بودن حسگر را کنترل میکند. پیادهسازیهای فضاساز با بارگیری DSP میتوانند از حالتDIRECT_TO_SENSOR_TUNNELاستفاده کنند.
انتخاب حالت تأخیر
چارچوب یک حالت تأخیر را از فهرست حالتهای تأخیر پشتیبانیشده که توسط HAL گزارش میشود انتخاب میکند. حالت تأخیر براساس وضعیت فعال بودن HT فعلی، پشتیبانی فضاساز فعلی، و ویژگی سیستم مشخصشده توسط فروشنده که ترتیب اولویت را بین سازوکارهای انتقال برقرار میکند، تنظیم میشود.
این چارچوب از فرایند زیر در selectHeadtrackingConnectionMode_l
برای انتخاب حالت تأخیر استفاده میکند:
- چارچوب، اولویت حملونقل را از
bluetooth.core.le.dsa_transport_preferenceویژگی سیستم بار میکند. - حالتهای تأخیر پشتیبانیشده گزارششده توسط لایه انتزاعی سختافزار صدا براساس فهرست بارگیریشده در مرحله ۱ فیلتر و مرتب میشوند.
- اگر حالت تأخیر کم با بالاترین اولویت
iso-hwباشد و پیادهسازی فضاساز از اتصال مستقیم حسگر پشتیبانی کند (یعنیDIRECT_TO_SENSOR_SWیاDIRECT_TO_SENSOR_TUNNELدر فضاساز تنظیم شده باشد)، حالت تأخیر رویDYNAMIC_SPATIAL_AUDIO_HARDWAREتنظیم میشود. اگر حالت کمتأخیر با بالاترین اولویت
iso-hwباشد و پیادهسازی فضاساز از اتصال مستقیم حسگر پشتیبانی نکند (DIRECT_TO_SENSOR_SWیاDIRECT_TO_SENSOR_TUNNELدر فضاساز تنظیم نشده باشد)، حالت ترجیحی بعدی (که یاiso-swیاle-aclاست) حالت تأخیر را تعیین میکند (که یاDYNAMIC_SPATIAL_AUDIO_SOFTWAREیاLOWاست).اگر حالت ترجیحی بعدی مشخص نشده باشد، سیستم خطای پیکربندی محصول را گزارش میکند.