参考自: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图:

  • 将原始信号从线性值转换为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:

上图用到的几个阈值做下说明:

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

稍微复杂的DRC要求拐点部分能平滑过渡。。。所以上面描述的只能称之为 Hard Knee 硬拐点。

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

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

Attack / Release:

代表效果器开始作用的起始时间和停止作用的释放时间。关于这两个概念,

图1

图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)简介相关推荐

  1. 进程控制概念简介 多线程上篇(三)

    进程控制 进程的基本数据信息是操作系统控制管理进程的数据集合,这些信息就是用来控制进程的,此处我们说的进程控制就是进程的管理. 比如进程有状态,那么进程的创建.终止,状态的切换,这都不是进程自主进行的 ...

  2. Apache Shiro权限控制框架简介

    Apache Shiro权限控制框架简介 要想实现权限控制,可以自己写代码实现,蓄力都的权限控制可以通过过滤器Filter实现,细粒度的权限控制是基于代理对象结合自定义的注解和反射技术来实现,反射技术 ...

  3. 第二章 机器人系统与控制需求简介

    第二章 机器人系统与控制需求简介 2.1 工业机器人的系统组成 机械本体:精密减速机.伺服电机.伺服驱动器.控制系统(核心零部件) 控制柜 示教盒 2.2 机器人本体结构与传动方式简介 四大家族:AB ...

  4. 基于Modbus RTU协议的开关量控制采集简介

    一.什么是开关量控制采集 所谓的开关量控制采集就是通过458/232接口发送控制命令,实现读取开关量输入或者控制开关量输出的通断. 二.开关量输入采集和开关量输出控制 1.  开关量输入采集就是将一个 ...

  5. (计算机组成原理)第七章输入和输出系统-第一节:I/O系统基本概念和I/O控制方式简介

    文章目录 一:I/O系统的基本组成 (1)I/O硬件和I/O软件 (2)I/O指令和通道指令 二:I/O控制方式 三:通道控制方式 现代计算机结构大致分为 主机和 I/O设备(外设),I/O的意思就是 ...

  6. MOS与三极管的控制使用简介

    1.型号图片记忆 NPN,PNP,N沟道,P沟道图片与型号的记忆方法:图片上箭头都是由P→N:      栅极(gate--g,也叫做门极),源极(source--s), 漏极(drain--d). ...

  7. 伺服速度控制模式接线图_电动缸的三种控制方式简介及控制接线图

    最内的PID环就是电流环,此环完全在伺服驱动器内部进行,通过霍尔装置检测驱动器给电机的各相的输出电流,负反馈给电流的设定进行PID调节,从而达到输出电流尽量接近等于设定电流,电流环就是控制电机转矩的, ...

  8. BLDC控制方案简介

    BLDC定位方案 功能描述:采用注入脉冲方式判断转子位于哪个扇区 实现方案:三相六方向上的脉冲注入 偶数项为电流ADC采样, 奇数项与偶数项方向,做抵消用, 第一轮 导通UH VL WL,注入时间30 ...

  9. ADAS方案设计成功关键:图像处理技术

    ADAS方案设计成功关键:图像处理技术 时间:2015-05-15 来源: 作者: 标签: ADAS    驾驶警示    驾驶辅助   自去年Google公司的无人驾驶汽车被颁发车牌上路实测以来,人 ...

  10. 内置 DSP,回音消除,噪音抑制全双工通话芯片—ATH8809

    一, 概述      ATH8809 是一款基于 DSP 独特高效的算法,而具备消除回音,压制噪音功能的芯片,它可以有效解决各类数 字通讯产品上免提通话中的回音.啸叫问题,以及环境背景噪音,在合理的结 ...

最新文章

  1. 【视频】显示器固定参数struct fb_fix_screeninfo中char id[16]说明
  2. Java 100(三)
  3. 常见花材的固定的方法有哪些_旋流器常见的故障及处理方法有哪些?
  4. satd残差_RDO、SAD、SATD、λ相关概念【转】
  5. 【英语学习】【WOTD】gargantuan 释义/词源/示例
  6. redis日志_面试题之Redis如何保证系统宕机数据不会丢失?
  7. Codeforces Gym 100338H High Speed Trains 组合数学+dp+高精度
  8. [转载] 基本概念:java中的访问修饰符
  9. 谈谈目前我对区块链(Blockchain)的认识
  10. Hive中NULL和''
  11. Laravel 2017 年度调查报告
  12. 计算机组成模型机的视频教学,3CPU 3设计模型机 罗克露计算机组成原理课件(绝对与网上视频教程同步).pdf...
  13. 什么是Cat.1,Cat.1和4G之间的区别
  14. Hive-内置函数:根据身份证规则从身份证号提取年龄和性别
  15. Anaconda安装虚拟环境
  16. [个人笔记][遗传算法] 遗传算法的python实现
  17. 群晖笔记一:使用Hyper Backup在多个硬盘间备份重要资料
  18. 基于android的日程管理系统的设计与实现,基于Android的日程管理系统的设计与实现-电子与通信工程专业论文.docx...
  19. vscode中文插件失效解决方法
  20. gradle 之 zip

热门文章

  1. 爱查快递API使用讲解
  2. Python:实现binomial distribution二项分布算法(附完整源码)
  3. 阿里云因发现Log4j2 核弹级漏洞,未及时上报,被工信部处罚。。
  4. 2020 5 PON
  5. 张开翅膀,放飞梦想,让光彩无限绽放!
  6. 17track包裹单个物流轨迹抓取(一)
  7. 红米NOTE3解账户锁刷机包(2015617)双网通
  8. 紫川,网络小说的登峰造极之作
  9. Excel如何删除指定区域中重复值只保留一个
  10. ps钢笔工具的详细讲解