动态范围控制(DRC)简介

参考自:https://blog.csdn.net/cyz_2014/article/details/84718528

1、DRC功能介绍

Dynamic Range Control(DRC)动态范围控制提供压缩和放大能力,可以使声音听起来更柔和或更大声,即一种信号幅度调节方式。

DRC广泛应用于音频信号处理领域,例如助听器中最常见的宽动态范围压缩方法(Wide Dynamic Range Compression,WDRC)、音频信号处理中最常用的自动增益控制(Automatic Gain Control,AGC)方法等。动态范围控制,顾名思义,是将输入音频信号的动态范围映射到指定的动态范围。通常映射后的动态范围小于映射前的动态范围,因此称之为动态范围压缩。音频信号可以进行整体的动态范围控制;也可以划分为若干子带分别进行动态范围控制。

一般这里提及的都是数字信号处理里面的概念,对应相类似的模拟信号处理的有ALC(比如SSM2167)或者AGC。当然都是增益调整的模块,就笔者感觉而言,DRC(或者DRP)侧重于从数字域上对增益进行有选择、有目的地调整,以保证最大信号有合适的headroom,中间信号得到合适的amplify,小信号或者底噪被cutoff掉

1.1 动态范围控制可以做的事情

  • 根据环境匹配音频信号电平:也就是杜比volume leveler的作用;
  • 保护ADC使其不会过载:在广播信号发送时,发送器有峰值限制,超过这个峰值会使得发送器过载。动态范围控制可以压缩原始信号的动态,使发送信号的动态范围满足发送器的要求。在音频领域,将数字音频信号送到DAC之前,音频智能功放算法中的DRC可以实现扬声器振幅保护;
  • 优化信息:也就是使音频信号使用到满幅的动态范围;
  • 压制低电平的噪声:DRC的噪声门有一定的降噪效果;

1.2 动态范围控制的类型

  • 动态范围压缩器(Dynamic range compressor):减弱超过给定阈值的大声信号的音量;可以保护硬件,增加整体响度;
  • 动态范围限幅器(Dynamic range limiter):是压缩器的一种,可以限制超过给定阈值的信号;
  • 动态范围扩展器(Dynamic range expander):减弱低于给定阈值的小声信号的音量;可以使得小信号听起来更加小声
  • 噪声门(Noise gate):是扩展器的一种,可以限制低于给定阈值的信号。

2、DRC功能实现

下面是matlab官网给出的DRC block图:
动态范围控制(DRC)简介_第1张图片
动态范围控制(DRC)简介_第2张图片

  • 将原始信号从线性值转换为dB值: x->xdB,所有的DRC系统使用的增益信号都是用dB值进行处理。xdB = 20*log10(x)
  • 增益计算: 通过将dB信号传递到静态特征方程(DRC静态曲线),获取差值gc=xsc-xdB
  • 增益平滑: gc->gs;使用attack time、release time以及hold time作为系数对信号进行平滑。也就是对于台阶信号,增益信号并不是台阶的,使用指数或者对数函数进行平滑过渡。Attack time和release time为对应增益信号从最终值的10%到90%所花费的时间。Hold time是在增益被施加之前的延时周期。为什么会有hold time?因为即使使用很短的attack time,limiter仍然会出现超调量,这可以在增益平滑中使用一个很短的时延来解决,例如300微秒。增益平滑使用的是一阶递归滤波器:gs(n) = (1 − k) · gs(n − 1) + k · gc(n), k=AttackTime,ReleaseTime;
  • 添加make-up gain(对于压缩器和限幅器): gs->gm
  • dB值到线性值的转换: gm->glin
  • 在原始音频信号中应用计算出来的增益信号: y=glin * x

https://cn.mathworks.com/help/audio/examples/multiband-dynamic-range-compression.html
https://cn.mathworks.com/help/audio/ug/dynamic-range-control.html

名词解释:
增益信号:在DRC中要确定对离散信号的每一个样本使用多少增益,也就是给每一个样本值分别乘以一个系数,这个系数就是增益,这个增益序列就是增益信号;增益信号也叫做DRC的控制信号。
RMS:root mean square 均方根。

前面也提到了,DRC的增益调整基本上是三段:对底噪,中等幅度信号,幅度较大的信号的三段不同的处理,比如:

  • 底噪:Cutoff,attenuation
  • 中等幅度信号:Expander
  • 幅度较大,防止削顶的:Limiter

从教科书的用意来讲,它的概念还是很复杂的,下面这幅图详细描述了 Static curve的不同的Gate:
动态范围控制(DRC)简介_第3张图片
上图用到的几个阈值做下说明:

  • LT:Limiter threshold
  • CT:Compressor threshold
  • ET:Expander threshold
  • NT:Noise Gate

稍微复杂的DRC要求拐点部分能平滑过渡。。。所以上面描述的只能称之为 Hard Knee 硬拐点。
动态范围控制(DRC)简介_第4张图片

经过上面的描述,一个DRC应该初具规模了。不过,实际上DRC作用时除了幅度变化方面外,还得考虑时间问题呢。

attack和release时间就是专门做这个的,一般来说,作用一个很大的Gain,是需要时间慢慢加上去的,作用一个较小的G(衰减),也是需要慢慢减下去的,这样能保证平稳过度。

Attack / Release:

代表效果器开始作用的起始时间和停止作用的释放时间。关于这两个概念,
动态范围控制(DRC)简介_第5张图片
图1
动态范围控制(DRC)简介_第6张图片
图2

图 1 和图 2 分别显示的是音频被压缩前和被压缩后的图示画面。在图2 中,我们发现,音频并不是一开始就被压缩的,而是有一个明显的弧度。这个弧度所用的时间就是 Attack(起始时间)。同理,在音频结束压缩之后,也不是马上就恢复到原有的音量的,也有一个弧度。这个弧度所用的时间就是 Release(释放时间)。通过这两个时间的设定,我们可以控制效果器作用的缓冲时间,如果没有这段时间,声音就会听上去不自然。在效果器中,Attack 和 Release 这两个选项的单位通常都是毫秒。

增益平滑举例:

Examine a trivial case of dynamic range compression for a two-step input signal. In this example, the compressor has a threshold of -10 dB, a compression ratio of 5, and a hard knee.
动态范围控制(DRC)简介_第7张图片
动态范围控制(DRC)简介_第8张图片
动态范围控制(DRC)简介_第9张图片

你可能感兴趣的:(音视频基础,音频,音量调节,DRC)