1. DSP基础与音频信号处理概述

各位同学,欢迎来到《音频DSP性能优化与降噪算法调校》的第一章。我是你们这门课的主讲,一个在音频DSP领域摸爬滚打了十几年的工程师。今天咱们不聊虚的,直接切入正题——数字信号处理基础、采样定理、量化噪声,以及音频DSP到底能干什么。

说实话,我见过太多人一上来就调算法、跑模型,结果连最基本的采样定理都没搞明白。最后板子跑起来,声音全是锯齿和毛刺,还以为是芯片不行。嗯,咱们先把地基打牢。

1.1 数字信号处理基础

数字信号处理,说白了就是把连续的模拟信号变成离散的数字序列,然后拿数学方法去折腾它。你想想看,现实世界的声音是连续的,但计算机只能处理0和1。所以我们必须做一件事——采样和量化。

我习惯把DSP系统拆成三块:

  • 输入:麦克风拾音,模拟信号进来
  • 处理核心:ADC转换,DSP芯片运算
  • 输出:DAC还原,喇叭放出去

这里面任何一个环节出问题,最终听到的声音都会变味。我在项目中遇到过最典型的例子——ADC的采样时钟抖动,导致整个降噪算法失效。查了三天,最后发现是晶振的电源纹波太大。

核心要点:DSP的本质是“离散化”和“数值计算”。你处理的不是真实的声音,而是声音的“数字影子”。

1.2 采样定理——奈奎斯特的诅咒

采样定理,也叫奈奎斯特采样定理。内容很简单:采样频率必须大于信号最高频率的两倍。否则,就会发生混叠。

为什么会这样?我画个图你就明白了。

采样定理核心逻辑 模拟信号 连续时间,无限精度 采样 fs ≥ 2 × fmax 离散信号 时间离散,幅度连续 fs < 2 × fmax → 混叠(Aliasing) ⚠ 避坑提醒 音频DSP中,人耳可听范围是20Hz-20kHz。 所以采样率至少要用44.1kHz(CD标准),实际项目我常用48kHz或96kHz。

你看,如果采样率不够,高频信号会“伪装”成低频信号混进来。这就是混叠。我曾经在一个ANC(主动降噪)项目里,因为采样率设成了32kHz,结果8kHz以上的噪声全部折叠到低频段,降噪反而变成了增噪。客户差点骂娘。

硬性规则:采样前必须加抗混叠滤波器(低通滤波器),把高于fs/2的频率全部滤掉。这不是建议,是必须。

1.3 量化噪声——精度与代价的博弈

采样把时间离散化了,量化则把幅度离散化。ADC的位数决定了量化精度。16位、24位、32位,位数越高,量化噪声越低。

量化噪声的公式很简单:

量化噪声功率 = Δ² / 12
其中 Δ = 满量程电压 / 2^N
N = ADC位数

每增加1位,信噪比提升约6dB。16位ADC的理论动态范围是96dB,24位是144dB。但实际项目中,受电源噪声、PCB布局、时钟抖动影响,往往要打8折。

ADC位数 理论SNR (dB) 实际可用SNR (dB) 典型应用
16-bit 96 75-85 消费级耳机、麦克风
24-bit 144 110-120 专业音频设备、ANC
32-bit 192 140-150 高端测量仪器、录音棚

我个人的习惯是:做降噪算法,至少用24位ADC。16位在安静环境下勉强够用,但一旦环境噪声大,量化噪声就会和信号噪声混在一起,算法根本分不清哪个是噪声、哪个是量化误差。

小技巧:如果ADC位数不够,可以用过采样+数字滤波来“伪造”高精度。比如用16位ADC跑4倍过采样,等效分辨率能提升1位。我在一个低成本项目里用过这招,效果还不错。

1.4 音频DSP应用场景

音频DSP不是只做降噪。它的应用场景比你想象的广得多。我列几个最常见的:

  • 主动降噪(ANC):前馈、反馈、混合三种架构,核心是自适应滤波器
  • 语音增强:去混响、波束成形、VAD(语音活动检测)
  • 音频编解码:MP3、AAC、Opus,压缩与解压缩
  • 声学回声消除(AEC):通话场景必备,双讲检测是难点
  • 均衡器(EQ):参数均衡、图形均衡,调音师的最爱
  • 动态范围控制:压缩器、限幅器、扩展器

你想想看,现在的TWS耳机、智能音箱、车载音响、会议系统,哪个离得开音频DSP?我去年参与的一个车载项目,光是ANC算法就调了半年。不是因为算法难,而是因为车内声学环境太复杂——座椅材质、乘客数量、车窗开闭都会影响效果。

一句话总结:音频DSP是连接物理声学和数字世界的桥梁。采样定理决定了这座桥的宽度,量化噪声决定了桥面的平整度。搞懂了这两点,后面的算法调校才有意义。