将音频减去另一个音频

信息处理 声音的 人工智能
2022-02-02 23:48:20

假设我有一个军鼓样本,并且该军鼓用于歌曲中,¿ 有一种算法或工具可以检测军鼓的声音并将其减去,也就是说,取消它的相位还是消除它?

结果将是没有军鼓声的歌曲。

这也适用于(手风琴小号或任何其他乐器)

3个回答

这真是一个很难的问题。如果您可以使用原始小军鼓,并且后期处理(效果、声像、母带处理)的数量适中,您可以使用自适应滤波器将其中的一些提取出来。

有一些商业插件可以做这种事情,但它们都有自己的优点和缺点,所以这取决于你的具体需求

这是一个“简单”问题的一个很好的例子,它很容易描述到很难解决,我没有看到直接的解决方案,但会在这里放一些东西,因为这个问题被碰到了。

在通信系统领域,存在干扰消除的概念。这个想法是发射器试图与接收器通信,但也可能存在一些干扰信号。你可以这样建模:

r(t)=s(t)+i(t)+w(t)

在哪里s(t)是“感兴趣的信号”(你的音乐没有小鼓),i(t)是干扰信号(小军鼓),以及w(t)是噪音。干扰消除是在接收器处估计干扰、重新创建干扰并将其从中减去的过程r(t)所以希望你只剩下s(t)+w(t). 但是,因为取消并不完美,即。干扰信号没有完美地重新创建,您实际上只剩下s(t)+(i(t)i^(t))+w(t), 在哪里i^(t)是估计的干扰。

这种事情似乎适合您的需求,那么问题出在哪里?这种干扰消除技术几乎完全依赖于能够非常准确地估计干扰信号参数。并且估计很大程度上依赖于能够写出干扰信号的方程对于军鼓来说,这是很难做到的(我认为),并且会产生奇怪的声音结果。

另一种选择,也许如果你观察到小军鼓占据了音乐其余部分没有的频率,你可以尝试过滤。我不认为这会很有希望。

别的东西:把鼓手放在离乐队其他人足够远的地方,用麦克风阵列设置你的录音室,然后在鼓手的方向放置一个漂亮的零点!...

如果您的歌曲是通过触发已知样本生成的(例如使用 MIDI 音序器)并且没有应用效果(压缩器),那么问题应该相对简单。

对于具有细微变化的真实乐器的情况...... 没那么多。一些盲源分离的机器学习变体?