基于意法半導體STM32WBA55G-DK1 無線藍牙LE audio解決方案
低功耗藍牙 音訊是一項新功能,可透過低功耗藍牙進行音訊串流。
本文引用地址:http://www.biyoush.com/article/202406/460255.htm現在幾乎所有藍牙裝置都在使用藍牙低功耗。需要雙模式控制器透過經典藍牙傳輸音訊的音訊串流裝置除外。藍牙特別興趣小組 (Bluetooth? SIG) 提出了一種透過藍牙低功耗啟用和增強音訊串流的解決方案。
經典藍牙(BR/EDR) 音訊已經是當今世界上最常用的音訊無線系統。下一代藍牙低功耗音訊即將到來。與傳統的藍牙相比,低功耗藍牙降低了功耗,并為音訊串流帶來了全新的可能性。
其中之一是Auracast?廣播音訊。 Auracast? 是新的藍牙標準。它使聽眾能夠向多個用戶共享音訊。它是根據以下三個基本原理定義的:
分享您的音訊:Auracast? 廣播可讓您邀請其他人分享您的音訊體驗,并拉近我們之間的距離
讓世界變得安靜:Auracast? 廣播音訊讓您能夠在公共場所充分享受電視節(jié)目,解除曾經的靜音并創(chuàng)造更完整的觀看體驗
聽到最好的聲音:Auracast? 廣播讓您可以在任何地方聽到最好的聲音。
有關 Bluetooth? 低功耗音訊和 Auracast? 的更多資訊: [1] [2] [3] [4]
STMicroElectronics 推出的 STM32WBA 可透過 STM32 實現藍牙?低功耗音訊。透過STM32WBA55G-DK開發(fā)套件,使用者可以存取嵌入式藍牙?低功耗音訊軟體,從而允許用戶對其進行測試和使用。有四個可用的演示,可以在用例設定檔中找到。這些應用程式包含在 STM32CubeWBA MCU 套件中。
2. LC3編解碼器
藍牙低功耗音訊基于新的音訊編解碼器:LC3,用于低復雜性通訊編解碼器。它是由弗勞恩霍夫 (Fraunhofer)設計的。這款編解碼器可以在藍牙低功耗音訊產品中免費使用,這意味著藍牙低功耗音訊是完全可互通的,而不依賴供應商特定的編解碼器。
LC3 帶來了新的質量,高于經典藍牙音訊上使用的強制編解碼器。這款編解碼器主要是為嵌入式產品設計的,具有較低的復雜性和較低的記憶體占用,但仍具有較高的品質。
LC3:
通道獨立:可設定/用于單聲道或立體聲流
適用于音樂和語音(從窄帶:8kHz 到全帶:48kHz)
與行動編解碼器完美配合(減少音訊損失)。
允許非常低的延遲(在音訊設定檔中定義)
將 LC3 與經典藍牙音訊的典型編解碼器進行比較:
LC3 的品質比 SBC 高得多,但復雜性更高
LC3 的品質比 OPUS 更好,但復雜性更低
LC3 的品質低于 LDAC 或 aptX(及其無損版本),因為它們的復雜性要高得多。
有關 LC3 及其在我們解決方案中的整合的相關資訊可以在這里找到:LC3 編解碼器。
如果您需要更多信息,請參閱以下由藍牙 SIG 進行的有關 LC3 的一些研究: [5] [6]
3.鏈路層和同步通道Link Layer and isochronous channels
藍牙低功耗音訊也基于藍牙 5.2 選擇的功能:同步通道。這是鏈路層功能。此功能允許透過新連接傳輸:同步流。
有兩種類型的同步流:
連接同步串流(CIS):使用戶能夠透過藍牙連線獲得音訊串流。這是處理藍牙低功耗音訊的經典方法(一臺設備一個連接,例如耳機)。透過兩個 CIS,使用者可以將同步音訊串流傳輸到兩個不同的裝置(用于耳塞或助聽器)
廣播等時流(BIS):使用戶能夠向任何能夠接收該音訊串流的接收器廣播一個或兩個音訊串流。它不需要連接,這意味著可以有無限數量的接收器。
這兩種類型的同步流為藍牙低功耗添加了新功能:
它定義了整個串流媒體時間的系統延遲(沒有任何漂移)。此延遲低于經典藍牙音訊。
同時它也定義了重傳。應用程式可以請求優(yōu)先考慮盡可能低的延遲的系統(這可能會導致由于最小重傳而丟失一些資料包),或者優(yōu)先考慮更好的品質的系統(這確保接收所有資料包,但可能導致更高的延遲)。
將同步串流與經典藍牙音訊進行比較,可以注意到一些重要的差異:
HFP/HSP | A2DP | 帶有 BAP 的藍牙 LE 音頻 |
---|---|---|
資料透過 SCO(面向同步連線)傳送 | 資料透過 ACL(面向異步連線)傳送 | 資料透過同步資料流(CIS 或 BIS)發(fā)送 |
數據是連續(xù)的 | 數據是連續(xù)的 | 資料按時間戳同步 |
SCO中沒有重傳 | 所有資料包都會被傳輸,如果鏈路品質較差,則會導致無限重傳 | 數據可以重傳,但有時間有效性,過了一定時間就過時了 |
延遲始終相同但未定義 | 延遲未定義,可能會有一些滯后或漂移。 | 延遲始終在系統中定義,并且在串流傳輸期間不能更改。 |
它使發(fā)送者能夠以無線電方式“傳輸”音訊。為了透過 ACL 連線啟動單播音訊串流,單播用戶端和服務器交換有關串流品質、重傳、音訊通道數量(單聲道/立體聲)和延遲的資訊。
除了同步頻道之外,Bluetooth? 低功耗音訊還需要兩個功能:
擴展廣告:例如,它可以提供公開某些音訊功能所需的更多信息
定期廣告:此功能啟用廣告,這是周期性的而不是隨機的。觀察者可以同步獲取一些信息,并查看一段時間內的任何變化。
4.音訊簡介
現在,藍牙低功耗音訊的基礎(LC3 和同步通道)已啟用,藍牙SIG 開發(fā)了一個全新的框架,能夠配置所有類型的音訊串流:
音訊框架的基礎是音訊串流管理,由基本音訊設定檔 (BAP) [7]定義。它是藍牙?低功耗音訊的強制性設定檔。它定義了流類型、配置、功能、品質、延遲等。
BAP 與三種服務一起使用:
發(fā)布的音訊功能服務(PACS)Published audio capabilities service:用于公開設備的音訊功能。
音訊串流控制服務(ASCS)Audio stream control service :啟用設定單播流。
廣播音訊掃描服務(BASS)Broadcast audio scan service:允許請求客戶端代表服務器掃描廣播音訊串流。
BAP 定義了兩種類型的串流:單播和廣播,如下所列。
5.單播Unicast
單播是基于連線的同步串流 (CIS) 的連線音訊串流。這意味著透過單播,您可以透過 CIS 建立連接的音訊串流。要建立單播流,首先需要一個 ACL 連線來透過 GATT 和 LLCP 交換所有有用資訊。單播分為兩個角色:
單播客戶端:建立與單播服務器的連接,發(fā)現其功能并配置音訊流。該角色由智能手機、筆記型電腦、電視等使用。
單播服務器:通告其角色,公開其功能,接受單播服務器設定音訊串流。耳機、揚聲器、某些助聽器、某些耳塞甚至麥克風都可以使用此角色。
此外,單播客戶端可以同步串流傳輸到兩個單播服務器。
為了透過 ACL 連線啟動單播音訊串流,單播用戶端和服務器交換有關串流品質、重傳、音訊通道數量(單聲道/立體聲)和延遲的資訊。
流可以是
單向(用于音樂)或雙向(用于通話)。這稱為音頻流的拓撲。它們是由單播客戶端從單播服務器公開的內容中選擇的。 BAP 規(guī)格中列出了所有可能的拓樸。[7]
低品質或高品質。單播客戶端還根據單播服務器公開的內容選擇品質。所有這些可能性也列在 BAP 規(guī)格中。[7]
低延遲或高可靠性。這是在單播客戶端和單播服務器之間交換的。 BAP 規(guī)范中對此進行了描述。[7]
主要用例是:
1 部電話連接到 1 個耳機/揚聲器(請參閱圖 5.1)
1 支手機連接 2 個耳塞/助聽器(見圖 5.2)
圖 5.1 帶耳機的單播
圖 5.2 使用某些耳塞進行單播
6.播出 Broadcast
廣播是一種非連接的音訊串流,基于廣播等時流(BIS)。任何能夠掃描并同步到該音訊串流的接收器都可以聽到它。這是一個新的用例,允許無限數量的用戶收聽相同的音訊串流。
它可以是手機上與朋友分享的音樂,也可以是直接翻譯成另一種語言的會議通知,也可以是直接在耳塞中接收的火車通知。
該流是公開的,但可以加密,并且需要密碼才能同步。由于串流是廣播的,因此只能是單向的。
BAP 還增加了另一個功能。由于廣播沒有連接,用戶需要一種方法來直接在接收器上同步到串流。但大多數時候,這些設備沒有任何螢幕或按鈕太少,無法有效地選擇音訊串流。這個角色稱為廣播助理,可以是電話,例如控制聽力設備。手機將掃描所選流的資訊并將其發(fā)送到聽力設備。
廣播定義了四種角色:
廣播來源:建立BIS并透過擴展廣告和定期廣告來廣告所有資訊。
廣播接收器:掃描廣告找到廣播來源,并同步接收音訊串流
掃描委托者:公開其功能并等待廣播助理接收廣播源的一些資訊和命令。掃描委托者還具有廣播接收器角色,以同步到所選的廣播來源。
廣播助理:掃描廣告尋找廣播來源,發(fā)現掃描委托人功能。它將廣播來源的資訊傳送給掃描委托者。
主要用例是:
1 部電話/筆記型電腦/電視將相同的音訊傳送到多個音訊裝置。
公共場所向任何想要透過藍牙接收的人發(fā)布 1 個公告。
1 段為聽力損失人士播放的影片或會議,或翻譯成其他語言。
以下是火車站向任何人廣播的公告范例。揚聲器(或任何音訊設備)可以將自身同步到廣播來源(請參閱圖 6.1)?;虻靡嬗诰哂袕V播助理角色的智能手機(見圖 6.2)。
圖6.2 直播助手架構
7.遠端控制設定檔 Remote control profiles
通用音訊框架也定義了新的設定檔來控制一些音訊連結進程:
現在音訊串流已啟動,裝置需要其他設定檔來設定收聽部分。我們在聽音樂、打電話嗎?這就是這些其他配置文件的作用,增加了與任何設備的更多互通性。
媒體控制設定檔(MCP)Media control profile 及其服務((通用)媒體控制服務 - GMCS 和 MCS):外圍設備將能夠透過任何操作來控制中央設備:啟動、暫停、播放、停止媒體以及讀取一些資訊如曲目名稱、曲目位置、下一首曲目等。
呼叫控制設定檔(CCP) Call control profile及其服務((通用)電話承載服務 - GTBS 和 TBS):外設能夠執(zhí)行電話可以執(zhí)行的任何操作:接聽、拒絕、保持、終止呼叫,并且還可以查看一些諸如呼叫者姓名、訊號、提供者等資訊。
協調集識別設定檔(CSIP) Coordinated set identification profile及其服務(協調集識別服務 - CSIS):它使多個裝置能夠識別為協調集(例如耳塞或音響系統)。有了這種訊息,中央設備就能夠連接到該組的所有設備并將它們配置在一起,以進行音訊串流和控制。[10]
麥克風控制設定檔(MICP)Microphone control profile 及其服務(麥克風控制服務 - MICS):它允許使用者控制音訊輸入選擇及其屬性,例如音量偏移、靜音和取消靜音等[11]
音量控制設定檔(VCP)Volume control profile 及其服務(音量控制服務 - VCS、音量偏移控制服務 - VOCS、音訊輸入控制服務 - AICS):它允許使用者控制音訊串流的音量、偏移量、目前音量音量位置、靜音和取消靜音等。[12]
通用音訊設定檔( CAP)Common audio profile 能夠透過以下所有設定檔控制 BAP,從而建立處理音訊串流的完整框架。它可以將呼叫或媒體的某些命令與音訊串流的開始/停止連結起來,或讀取其資訊(音樂標題、呼叫者姓名...)。也可以將指令連結在一起放在一組協調的耳機中(如兩個耳塞)。[13]
有關配置文件及其參數/可能性的更多詳細資訊在架構和整合中列出。
8.用例簡介
CAP 上方是使用案例設定檔。他們定義了一些功能和程序,以便能夠與盡可能多的設備進行互動。
公共廣播設定檔(PBP)Public broadcast profile:為公共廣播(例如公告)和接收者(任何使用者)而制作。它僅使用廣播串流。[14]
2 個使用 PBP 制作的應用程式已經可用:STM32WBA 公共廣播設定檔
電話和媒體音訊設定檔(TMAP)Telephony and media audio profile:專為呼叫和媒體用例而設計,它可以使用廣播和單播。[15]
2 個使用 TMAP 制作的應用程式已經可用:STM32WBA 電話和媒體音訊設定文件
助聽器設定檔(HAP)Hearing aid profile:專為助聽器用例而設計。[16]
游戲音訊設定檔(GMAP)Gaming audio profile:專為游戲用例而設計。[17]
評論