动态范围规划(调整)Dynamic Range Control的一些心得(二)
来源:互联网 发布:kik软件 编辑:程序博客网 时间:2024/06/10 19:26
上次基本上提到的动态范围调整的一些基本概念,模块图等,这次继续说它的原理。
如果简单的说一个DRC,应该很快就可以说完,但随着分析的深入,如果考虑 soft knee,attack time,release time,RMS peak detect
这些细节问题,DRC就变得一个较为复杂的事情了.....
不过相对于音频算法的其他模块,AEC,NR来讲,这个算是最简单模块了,因为至少它处理的还只是 线性域
接着上次也提到了,DRC的增益调整基本上是三段:对底噪,中等幅度信号,幅度较大的信号的三段不同的处理,比如:
底噪~Cutoff,attenuation
中等幅度信号:Expander
幅度较大,防止削顶的:Limiter
左图: OutPut level vs Input level ,右图:Weighting level vs input level ,X轴Y轴的dB可以简单的理解为 dBFs
上图用到的几个阈值做下说明
LT~ Limiter threshold
CT~Compressor threshold
ET~ Expander threshold
NT~Noise Gate
如果从实际使用角度出发,所以我觉得一个合适的DRC三段就可以了,不能太复杂,用于语音信号的典型的一个DRC如下:
稍微复杂的DRC要求拐点部分能平滑过渡。。。所以上面描述的只能称之为 Hard Knee 硬拐点
matlab (https://cn.mathworks.com/help/audio/ug/dynamic-range-control.html) 官网给出这个可以参考
估计大家看到这也就明白了,用一个二次曲线去连接两端的直线。连接是有要求的,
1、连接两个线段需要光滑链接
2、需要连接点处导数也一致
显然对于noise gate那端的曲线链接方式,自己都可以推导出来是:
按照这两个公式可以写出对应的代码,我们将soft和hard knee的两个图叠在一起: 下图是W=6的情况
Soft和hard knee的问题解决下,下一次再讨论一下 attack 和 release的问题。
这里面补充几个主流音频分析软件的DRC,GUI让大家感受下:
AuditionDRC
AudacityDRC.png
GoldWaveDRC.png
- 动态范围规划(调整)Dynamic Range Control的一些心得(二)
- 动态范围规划(调整)Dynamic Range Control的一些心得(一)
- 动态范围规划(调整)Dynamic Range Control的一些心得(三)
- 动态范围规划(调整)Dynamic Range Control的一些心得(四)
- camera 高动态范围(High-Dynamic Range,简称HDR)
- HDR(High Dynamic Range Imaging)在摄影中指高动态范围成像
- 概念术语之 high dynamic range(HDR)高动态范围
- 漫谈算法(二) 动态规划 Dynamic Programming
- 漫谈算法(二) 动态规划 Dynamic Programming
- 漫谈算法(二) 动态规划 Dynamic Programming
- 动态规划(Dynamic Programming)
- 动态规划(Dynamic Programming)
- 动态规划(dynamic programming)
- 动态规划(Dynamic Programming)
- 动态规划(Dynamic Programming)的一些事一些情
- 调整队形(动态规划)
- Dynamic range compression/Dynamic range control
- ASP.NET Futures初探——动态数据控件(Dynamic Data Control):深入一些
- kotlin 官方学习教程之基础语法
- 循环获取子类递归
- 谈谈深度学习中的 Batch_Size
- SD--如何在输出控制中增加自定义字段
- 如何通过jsoup获得图片地址 demo
- 动态范围规划(调整)Dynamic Range Control的一些心得(二)
- Android 9-patch 九图的制作与使用
- [leetcode]61. Rotate List
- 关于第八届浪潮杯(山东省赛)
- nand 关键知识点
- Ubuntu 14.04安装Matlab2012a
- SQL使用SELECT *的坏处
- SAPUI5 (36)
- 虚拟机Ubuntu无损扩展分区(目录)容量的方法