
1. 简介 在无线蓝牙领域,既能满足超低功耗,又能进行全双工语音通讯,一直是市场上的需求,比如:无线门铃,短距离对讲机等应用。针对 BLE 语音相关的应用场景,ST 推出了FP-AUD-BVLINKWB1 这个软件包供客户评估。 本文将对这个软件包展开介绍,该软件包主要包含以下特性: • 使用 Opus v1.3 编码和解码,通过 BLE 实现全双工立体音频流。 • 使用自定义 BlueVoiceOPUS 协议,通过 API 即可使用 Opus 功能。- G3 t. G. s9 Q, s3 d8 T% ? • 源码包含数字音频捕获和处理。6 ~/ E- H. d* y- E, {% m4 D • 可以通过 USB 进行音频流的回放。 • 可使用麦克风扩展板 X-NUCLEO-CCA02M2 + Nucleo 开发板 P-NUCLEO-WB55的组合或者探索板 STM32WB5MM-DK。 • 兼容 STBLESensor App。 1 }8 {% b2 J8 O( z: s • 免费开源。 2. 软件介绍 2.1. 软件架构( Q2 @3 H4 s6 ]+ T8 m: M7 ` ![]() - I+ {) ]3 l; Y • Hardware Abstraction: 硬件抽象层,使用了 STM32 的 HAL 库提供底层的硬件驱动。! X( }2 H _/ B$ r • BSP 层:在 HAL 层之上,提供了板级支持包,包含了 SPI, ADC, LED 和 User Button等驱动。# A& j+ A, U* q5 L* ^+ `$ k0 ]! ] • Middleware 层:中间件层,主要包含了以下内容:6 n3 y6 W+ Y. }- r# \0 z o STM32 WPAN:提供 BLE,Thread,Zigbee 等协议相关的接口 API,本应用只使用了 BLE 协议。+ m% i+ \: H: r9 h6 @, f o USB Device:提供各种不同 USB device 类的实现,本应用中只使用了 USB Audio 类。1 \5 w' ~- ^$ V- u/ p4 d) o4 A o PDM Lib:提供了数字麦克风 PDM 信号到 PCM 信号转换的软件实现。 o OPUS:开源第三方的 OPUS 库,版本 v1.3。 2.2. Opus 简介9 O0 g' o* t/ X8 {* `1 C Opus 是完全开源免费的高通用性音频编解码协议,由 Internet Engineering Task Force (IETF)标准化。( ?: J, c/ h6 }5 }2 \- ~' u Opus 可以处理广泛的音频应用,包括 IP 语音、视频会议、游戏内聊天,甚至远程现场音乐表演。它可以从低比特率窄带语音缩放到非常高质量的立体声音乐,并且具备以下特点: • 比特率范围:6kb /s 到 510 kb/s U3 F8 x" t+ g( o6 r • 采样率范围:8kHz(窄带)到 48kHz(全带) , Y5 N% E# s2 v N • 帧大小: 2.5 ms 到 60 ms9 n$ N+ I. s f) J! S( s3 v • 比特率,采样率,可动态调节帧大小: k9 M1 n0 b O" p3 F: P' A+ J6 h • 支持固定比特率(CBR)和可变比特率(VBR) • 支持语音和音乐 • 支持单声道和立体声 • 最多支持 255 个通道 • 良好的鲁棒性和丢包隐藏能力8 {" r! x* y. q/ b • 支持浮点和定点 " ~& R* z% S8 p/ B* a @ 完整版请查看:附件+ T! G3 o q+ d/ P |
LAT1156_利用Opus在STM32WB上实现BLE全双工语音流_v1.0.pdf
下载890.28 KB, 下载次数: 6
【NUCLEO-WB09KE评测】+3.蓝牙广播
Nucleo-STM32WB09KE测评-蓝牙调试并使用OLED显示数据
【NUCLEO-WB09KE评测】创建BLE工程和开启调试信息
【NUCLEO-WB09KE评测】+2.串口打印
【NUCLEO-WB09KE评测】+5.实现标准电量服务
【NUCLEO-WB09KE评测】BLE例程HeartRate及工具探索
STM32WB系列MCU低功耗测试
Nucleo-STM32WB09KE测评--IIC传感器读取
【NUCLEO-WB09KE评测】+4.蓝牙控制LED
【NUCLEO-WB09KE评测】+1.点灯