你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

利用 Opus 在 STM32WB 上实现 BLE 全双工语音流

[复制链接]
STMCU小助手 发布时间:2022-8-11 17:14
1. 简介8 q7 D7 r  Z! _% M
在无线蓝牙领域,既能满足超低功耗,又能进行全双工语音通讯,一直是市场上的需求,比如:无线门铃,短距离对讲机等应用。针对 BLE 语音相关的应用场景,ST 推出了FP-AUD-BVLINKWB1 这个软件包供客户评估。
8 ]$ l. Y* r+ |3 k! O# G本文将对这个软件包展开介绍,该软件包主要包含以下特性:3 h, O) L9 D7 l/ G  c5 ]; {, b. J1 l
• 使用 Opus v1.3 编码和解码,通过 BLE 实现全双工立体音频流。
, l# Y: ^# W' I0 `, t6 }# f0 _• 使用自定义 BlueVoiceOPUS 协议,通过 API 即可使用 Opus 功能。
* [0 U- J$ p6 U$ e# G: l. m- d& T( o• 源码包含数字音频捕获和处理。6 v) p4 X) c2 j$ k+ ~9 U
• 可以通过 USB 进行音频流的回放。
8 C% u. S, P9 N; O" S  q• 可使用麦克风扩展板 X-NUCLEO-CCA02M2 + Nucleo 开发板 P-NUCLEO-WB55的组合或者探索板 STM32WB5MM-DK。
9 A* v: N& s" G1 b( j; ?" a• 兼容 STBLESensor App。
+ F# ^3 h9 i+ Z+ i6 Y* V/ e* V, m• 免费开源。, Q, ^% i, o7 j, g
$ i. W$ J* B4 E8 n6 p9 }* |0 i

7 G) s* R1 i1 c$ q2. 软件介绍8 p; E2 E2 d9 u. |
2.1. 软件架构
6 J/ L  D8 b9 [, a& b0 d! i 5IM7@UF%FQGY)VQ~SW8@RKH.png
7 w0 C6 s  c# s; J( ]0 ~
' h% F. P! ^' k6 k7 N- U! b 2 j" ?0 W0 D0 n, z) j. J2 d/ O
• Hardware Abstraction: 硬件抽象层,使用了 STM32 的 HAL 库提供底层的硬件驱动。+ N( Q6 z$ c* ]9 X* _/ Q  Y
• BSP 层:在 HAL 层之上,提供了板级支持包,包含了 SPI, ADC, LED 和 User Button等驱动。, c( {. _: g$ P1 @# I
• Middleware 层:中间件层,主要包含了以下内容:
9 F8 U1 q3 [' `1 \# Z# Go STM32 WPAN:提供 BLE,Thread,Zigbee 等协议相关的接口 API,本应用只使用了 BLE 协议。) K7 J* g/ L+ d* a' `
o USB Device:提供各种不同 USB device 类的实现,本应用中只使用了 USB Audio 类。7 @4 }4 C1 C/ }2 @( V9 v# e
o PDM Lib:提供了数字麦克风 PDM 信号到 PCM 信号转换的软件实现。/ _8 X. X/ J' J( O  z# g
o OPUS:开源第三方的 OPUS 库,版本 v1.3。
1 t8 H" w7 y6 W' l. G: E% @9 j: m" S  S7 E' Y+ L" N. V
2.2. Opus 简介0 u) M# a8 u8 d
Opus 是完全开源免费的高通用性音频编解码协议,由 Internet Engineering Task Force (IETF)标准化。- k& Y+ U! ], M2 f, @7 H
Opus 可以处理广泛的音频应用,包括 IP 语音、视频会议、游戏内聊天,甚至远程现场音乐表演。它可以从低比特率窄带语音缩放到非常高质量的立体声音乐,并且具备以下特点:4 d+ P7 Y: L0 G: H1 w: Q: Y
• 比特率范围:6kb /s 到 510 kb/s
# J) U# Q0 Z" @+ F! g• 采样率范围:8kHz(窄带)到 48kHz(全带) 5 A2 C! U- S4 M4 b# R
• 帧大小: 2.5 ms 到 60 ms/ J- l2 G. j7 c' Q
• 比特率,采样率,可动态调节帧大小
& g7 @9 j0 Q0 q* P• 支持固定比特率(CBR)和可变比特率(VBR)
$ Z6 c2 b' v& C. \* f• 支持语音和音乐
* E. n+ ~' r0 h7 C5 Z, K! x7 K• 支持单声道和立体声& g" [* \. Q' F8 e4 y  W
• 最多支持 255 个通道/ m* v- U- [+ w0 k) z
• 良好的鲁棒性和丢包隐藏能力$ b9 K9 |1 l  ?6 }  y& E- K  J
• 支持浮点和定点
( d# V# q" ^8 n$ x6 H9 u  ~0 z8 F; G: t  E
0 {) j" C& K; D
8 o! t3 @8 B! Z# i) j$ A7 k
/ v, [4 K2 c3 J" G0 r* Q, N  t完整版请查看:附件
9 C1 p  Y  C6 @5 v4 Y8 Y1 M7 L5 ^! u! k* F, e/ p, ~

LAT1156_利用Opus在STM32WB上实现BLE全双工语音流_v1.0.pdf

下载

890.28 KB, 下载次数: 8

收藏 评论0 发布时间:2022-8-11 17:14

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版