一、通用嵌入式底层基础(所有音频岗位前置必备)
1. 编程语言
C 语言(基础核心):指针、内存、位运算、结构体、环形缓冲区、定点运算;
C++(进阶):面向对象封装音频设备 / 通路,Linux 上层应用、DSP 工程常用;
汇编(进阶):ARM NEON SIMD 指令、DSP 汇编,算法加速优化;
Python/MATLAB(进阶):算法仿真、PCM 离线分析、音质测试脚本。
2. 硬件总线与外设驱动基础
I2C:控制 Codec、数字麦寄存器配置;
I2S:标准数字音频传输(飞利浦 / 左对齐 / 右对齐模式,MCLK/BCLK/LRCK 三时钟关系);
TDM:多路音频(车载多麦、多声道功放);
辅助总线:SPI、UART、DMA(音频零拷贝搬运核心,避免 CPU 拷贝卡顿)。
3. 操作系统两大路线(岗位分水岭)
路线 A:RTOS(TWS 耳机、便携录音笔、小型语音模块)
路线 B:Linux MPU(智能音箱、车机、安卓设备、电视)
Linux 内核:中断、dma、设备树、platform 驱动;
用户态:进程 / 线程、管道、mmap 零拷贝、定时器;
编译工具:交叉编译、Make/CMake、固件打包。
二、音频硬件原理(软硬结合核心,不懂硬件调不好音质)
1. 模拟音频基础
拾音器件:模拟麦、MEMS 数字 PDM 麦、骨传导麦;
播放器件:喇叭、D 类 / AB 类功放、单端差分输出;
声学指标:SNR 信噪比、THD 总谐波失真、底噪、阻抗、SPL 声压级、相位、回授环路。
2. Codec 音频编解码芯片
3. 音频时钟体系
4. 硬件音频拓扑
单麦通路、双麦 、环形阵列多麦;
AEC 回声硬件回采 Loopback(播放信号回传给采集端,回声消除必备);
多路混音硬件架构、车载 TDM 多声道布线逻辑。
三、数字音频核心理论(算法底层数学基础)
1. 采样与量化
奈奎斯特采样定理、混叠失真、抗混叠滤波;
通用采样率:8k 、16k 、44.1k、48k 、96k;
位深:16bit、24bit、32bit;定点 Q 格式(嵌入式无浮点硬件必学:Q15/Q31,乘法移位、溢出裁剪)。
2. 时域 & 频域分析
FFT/IFFT 快速傅里叶变换、窗函数(汉宁、汉明);
时域波形、频谱、语谱图分析(定位噪声、回声、失真)。
3. 数字滤波器
4. 音频帧长计算
每帧5ms对应要传输的字节数((采样率*位深)/(8bit*1000ms))*5--->480字节。同理,若是2.5ms帧长,则是240字节。
四、音频编解码(压缩存储 / 传输)
1. 无损编码(音乐播放、录音)
2. 有损语音编码(通话、对讲)
3. 音乐编码
4. 蓝牙专属音频编码(TWS 岗位核心)
配套知识点
五、音频信号处理算法(音频工程师核心竞争力)
1. 语音增强(通话降噪必备)
AEC 声学回声消除:线性自适应滤波 NLMS、NLP 非线性残余抑制、双讲检测 DT;硬件环路延迟匹配是调优关键;
NR 单麦 / 多麦噪声抑制:维纳滤波、频域降噪;
AGC 自动增益:采集端防爆音、播放端音量均衡;
VAD 语音活动检测:区分人声 / 环境噪声,唤醒、降噪开关;
DRC 动态范围压缩:抑制大音量破音、提升小声响度;
去混响:消除房间墙壁反射杂音。
2. 音效算法(耳机、音箱听歌)
3. 多麦阵列算法(智能音箱 / 车载)
BF 波束成形:定向拾取人声,抑制侧面 / 背面噪音;
DOA 声源定位:识别人说话角度;
多麦融合、远近场区分、远距离拾音增强。
4. 配套上层算法
六、两大嵌入式音频软件整体框架(岗位划分核心)
路线 1:RTOS 音频栈(TWS 耳机、小型语音模块)
底层驱动层:PDM2PCM 抽取滤波、I2S/DMA、Codec I2C 驱动;
音频抽象层:统一 Audio Device 读写接口、环形缓冲区 RingBuffer;
通路管理(两大核心通路):
录音通路:麦采集→转 PCM→AEC/NR/VAD→编码; 播放通路:解码→EQ/DRC 音效→Codec DAC 输出喇叭;
蓝牙音频子系统:
协议:A2DP 音乐、HFP 通话 SCO 链路、BLE Audio; 难点:双耳同步、主从切换、低延迟优化、入耳检测联动音频通路;
DSP 异构开发:ARM 跑业务逻辑,DSP 定点运算算法,共享内存核间通信。
路线 2:Linux 嵌入式音频栈(车机、智能音箱、安卓)
1. 内核驱动:ASoC(ALSA System on Chip)
2. 用户层音频库 & 工具
TinyALSA(轻量化,工业嵌入式首选):tinycap 录 PCM、tinyplay 播放、tinymix 调 Codec 增益;
ALSA 标准库 libasound:aplay/arecord/amixer;
配置文件 asound.conf:路由、重采样、混音插件。
3. 音频服务中间件(多音源混音管理)
PulseAudio:传统平板 / 电视多应用音频混音;
PipeWire:新一代低延迟框架,车载主流;
Android AudioFramework:AudioFlinger、AudioRecord/AudioTrack、HAL 硬件抽象层。
4. 上层组件
七、调试、测试、性能优化体系
1. 音质测试工具
PC 离线分析:Audacity(波形 / 频谱)、MATLAB/Librosa(算法仿真复现问题);
嵌入式调试:tinycap dump 原始 PCM、逻辑分析仪抓 I2S/PDM 时序、示波器测时钟抖动;
专业量产仪器:Audio Precision AP 分析仪(测 THD、频响、SNR,音质标定)。
2. 高频故障定位方向
3. 嵌入式音频三大核心优化
算力优化:
浮点数定点化、ARM NEON 加速、分块 10ms 帧处理、DSP 硬件加速;
内存优化:
环形缓冲区防溢出、分片 PCM 处理、减少内存拷贝;
实时 & 低功耗优化:
DMA 零拷贝、中断优先级配置、Codec / 麦动态下电、音频时钟门控。
八、行业主流开源库
语音增强:WebRTC(内置完整 AEC/NR/AGC/VAD,嵌入式标配);
信号处理:CMSIS-DSP(ARM 官方定点 FFT/FIR 库)、KissFFT 轻量傅里叶;
编解码:FFmpeg、libopus、opencore-amr、lame、flac;
Linux 音频:alsa-lib、tinyalsa、PipeWire、BlueZ 蓝牙协议栈;
RTOS 音频:RT-Thread Audio 组件。
End.
全文完。每一次阅读都是心灵上的交流,感谢阅读~
往期干货推荐:
夜雨聆风