以前使用酷狗音乐的时候,每次开启自定义音效,酷狗播放的声音就会忽大忽小。当时不懂什么原因,直到我自己开发软件才搞明白。
酷狗使用的是对一组数据归一化的算法,这组数据不是仅是歌曲的一小部分,为避免和酷狗一样的问题,搞了对一首歌曲全部数据归一化的算法。
我还有一个小问题,就是网易音乐之类的软件是用用的什么算法?为什么可以没有噪音?
手机发表,有误请见谅
1
skallz 14 小时 46 分钟前
b 站有做,视频声音保持一致的音量,不知道怎么做的,可以搜一下 b 站有没有出技术文章,哈哈
|
2
ccpp132 13 小时 2 分钟前 1
根据音频的响度给音频加 limiter 改变音量。平台搞这种搞的不好的话,对音频工作者来说是一种灾难
|
3
linearxian 12 小时 52 分钟前
本科毕业了吗
|
4
factionstrue OP |
5
azure233 10 小时 56 分钟前
搞音乐的应该懂 现在有各种不同的效果器来处理声音 压缩器 限制器等等 最重要的是看平均响度而不是峰值响度 所以单纯的归一化并不能平衡声音响度
|
6
SuancaiFish 10 小时 52 分钟前
可以用 upwards/downwards compressor ,但是,应该考虑不应该是,平衡两首歌之间的响度差别么,一首歌,他的响度峰值都是制作人设计好的,和情绪起伏一样,也没必要改动
|
7
ccpp132 10 小时 38 分钟前
@factionstrue @factionstrue 音频处理是一个水很深的领域,发展了很多年了。国外一般会找有经验的工程师来参与相关算法的设计,音频质量的控制比较复杂,还要考虑人耳听觉的特性,加上很多人都听不太出来好坏。国内也不太重视这些。
你感兴趣的话可以在 b 站搜[捣鼓音符的小胖] 他做了一系列关于控制音频响度的科普,我感觉对非相关专业人士来说足够全面了。 |
8
fgodt 10 小时 26 分钟前 1
简单来说所有音频处理都有一个类似 agc 的模块,每个平台将响度控制在一个合适的值(类似-3db ),超过了 1 的值,在音频领域可以用很多方式来解决 1.动态压缩可以参考 apple 的 dynamics processor ,2. limiter
|
9
linearxian 7 小时 13 分钟前
@factionstrue 你要是想平衡响度,那就去翻翻数字信号处理的书,或者看看论文,比如基于心理响度,做个贝叶斯优化。不要在这里胡乱发帖,以为做个基于阈值规则的除以电平最大值,就跑来发帖,还硬要写英语,最后还沾沾自喜“Nevertheless, from a user experience perspective, I think this remains the best solution available.”,很难不想让人不来怼你。另外,IIR 是用来做 EQ 的,不是用来调音量的。
|
10
factionstrue OP @linearxian 我就是做 EQ 的啊,只不过归一化算法解决了噪音问题,会带来声音响度变化的问题,我设计的算法解决了这个声音响度变化的问题。
`I chose to use an IIR filter to implement the audio equalizer` 我现在的问题是:不使用归一化算法如何解决噪音? |
11
azure233 6 小时 0 分钟前 1
看了你的更新 这部分逻辑恰恰就是削波失真 hardclip 的原理 你说的会引起噪音其实就是因为波形超出了信号范围 音频被削波了 所以通常都会引入 limiter 来防止出现削波的情况 ![hardclip]( https://forum.renoise.com/uploads/default/original/2X/6/67da09029747bc86340de35d71bb6f6074288abb.png)
|
12
factionstrue OP @azure233 好像就这个原因,我明天看看。
|
13
kp1nz 3 小时 13 分钟前
不妨看一下 Sound Lock
https://www.3appes.com/sound-lock/ |