一、USB Audio Class(UAC)协议概述

USB Audio Class是USB协议族中专门定义音频设备通信标准的协议类,UAC1.0于1998年发布,目前主流设备多基于UAC2.0。UAC协议规定了USB音频设备在USB总线上的描述符结构、采样率协商机制和音频数据传输格式。操作系统内置的UAC驱动使得符合UAC标准的音频设备可以实现免驱即插即用,这是BP-8913等USB声卡模组的技术基础。

二、BP-8913在系统音频链路中的定位

通用PC和嵌入式系统的板载音频Codec通常针对多媒体娱乐场景优化,ADC/DAC的THD+N指标和抗干扰设计难以满足高质量语音通话需求。BP-8913作为外置USB声卡模组,其核心价值在于为语音通话应用提供更高质量的音频I/O接口——外置设计隔离了PC内部开关电源的高频噪声对模拟音频链路的干扰。

从信号链路角度,BP-8913接收麦克风的模拟信号,经内部ADC量化后通过USB UAC协议传输至主机;主机侧的通话软件对数字音频流进行处理后,将播放数据通过USB回传至BP-8913,经DAC转换为模拟信号驱动外接耳机或喇叭。这一链路中,BP-8913扮演了音频Codec和USB桥接的双重角色。

三、UAC免驱即插即用的实现机制

UAC设备在上电并连接到USB主机后,操作系统通过GET_DESCRIPTOR请求读取设备的标准描述符和音频类特定描述符,从中获知设备的音频格式支持能力(采样率、位深、通道数等),并加载对应的内核模式驱动。应用程序通过标准Windows Core Audio API或ALSA/PulseAudio等跨平台接口访问音频设备,无需设备厂商提供专用驱动程序。

这一机制对语音通话设备厂商的意义在于:固件开发完成后,产品可以在任何支持UAC的主流操作系统上直接使用,无需为每个操作系统单独开发驱动。但这也意味着设备厂商无法通过自定义驱动实现超出UAC协议规定范围的功能(如设备特定的参数配置接口)。

四、与语音处理模块的组合应用

BP-8913作为纯USB声卡(无语音处理算法),通常需要与具备AEC/ENC功能的语音处理模块(如A-59F、AU-60等)组合使用,才能在PC端实现高质量通话。组合方案中,BP-8913负责USB音频I/O,语音处理模块负责麦克风信号的AEC/ENC处理后再输出至BP-8913。这种分工设计使各模块专注于自身擅长的功能,简化了单模块的设计复杂度。

五、总结

BP-8913的核心定位是提供USB免驱的高质量音频I/O接口,适合作为PC端语音通话系统的音频前端。对于有DSP语音处理需求的方案,应将BP-8913与具备AEC/ENC功能的语音处理模组级联使用,以获得完整的通话增强能力。

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐