高速USB模式下 UAC2.0
2022-04-11
1662
0
UAC2.0 Win10原生驱动已经支持,同时UAC2.0较UAC1.0有天生的高带宽、低延时的优势。支持32bit 384k的音频格式,同时支持USB High Speed!
为什么要在高速USB模式下运行UAC2.0???
- UAC1.0 不支持 32bit音频格式
- UAC2.0 在USB 全速模式下 ,96K@32bit播放和录制只能单独使用!!
- UAC2.0 在USB全速模式下,不能使用异步模式(linux 可以,但win10不行)
- 基于以上3点,高速USB模式下 UAC2.0才能达到高音质、低延时的目的
UAC2.0 同步模式 & 异步模式
模式 | 说明 | 备注 |
---|---|---|
同步模式(Synchronous) | 发送端和接收端速率Fs与SOF同步 | 发送端和接收端分别以各自的时基运行 |
自适应模式(Adaptive) | 发送端使用显式反馈 | 速率取决与发送端接收端适应发送端的速度 |
异步模式(Asynchronous) | 接收端使用显式反馈 | 速率取决与接收端接收端实时反馈数据速率,发送端依据接收端反馈适时调节发送速率 |
异步模式的必要性
- PC时钟 和 stm32的时钟各自运行,必然存在时钟不同步因素
- 由于时钟不同步,必然导致,或PC发送数据过快,或stm32处理数据过快
- 数据速率不同步,会导致stm32内部buffer上溢或下溢,从而出现播放丢帧或数据混叠
异步模式下 feedback运行原理
- PC 端以PC的时钟基准进行发送数据,此速率表现在USB SOF上
- stm32 以USB SOF为基准(High Speed 125us),测量 I2S 数据实际发送速率(相对USB时钟的samplerate)
- 将测量得到的samplerate,以规定的格式通过feedback端点发送到PC
- PC 根据接收端反馈的samplerate,动态调整数据发送速率
HID人机交互QQ群:564808376
UAC音频QQ群:218581009
UVC相机QQ群:331552032
BOT&UASP大容量存储QQ群:258159197
STC-USB单片机QQ群:315457461
USB技术交流QQ群2:580684376
USB技术交流QQ群:952873936