从 mp3 文件中删除特定频率

Posted

技术标签:

【中文标题】从 mp3 文件中删除特定频率【英文标题】:Remove a specific frequency from mp3 file 【发布时间】:2012-06-18 10:43:12 【问题描述】:

我想知道有哪些方法可以使用 C# 从 mp3 或 wav 文件中删除特定频率。

我希望有一个库或示例,我可以在其中输入 mp3(或任何其他格式,将我的音轨转换为所需的任何格式)和从文件中删除的单个频率(或频率列表)。

如果在 C# 中没有这样做的方法,我也会接受使用其他语言的解决方案。

我更喜欢使用免费或开源库的解决方案。

【问题讨论】:

这样做的目的是什么? 作为反盗版措施,今年发行的一些专辑采样了棕色噪音 查看 FFT:***.com/questions/170394/… 你需要做的是建立一个过滤器。请注意,数字音乐水印并非如此简单。如果您尝试删除水印,您会非常失望地发现不知道原始密钥是不可能的。大多数水印服务都使用扩频,这让事情变得非常困难。 我不推荐 FFT。为什么?除非您正在处理短文件,否则您将不得不对数据进行分块并在每个块上执行 OLA(重叠/添加)。一般来说,对于这样的事情,时域滤波是解决方案,但这取决于您要消除的频率的具体程度。 【参考方案1】:

我建议将您的 MP3 转换为 PCM,然后使用时域过滤器。

一种基本方法是使用此处描述的陷波滤波器:

http://www.musicdsp.org/files/Audio-EQ-Cookbook.txt

使用这样的实现:

http://musicdsp.org/showArchiveComment.php?ArchiveID=174

【讨论】:

以上是关于从 mp3 文件中删除特定频率的主要内容,如果未能解决你的问题,请参考以下文章

是否可以根据频率以编程方式编辑声音文件?

用js获取mp3文件频率数据

如何从 .wav 文件中提取特定频率范围?

Python - 删除范围之间的特定频率

在声音文件 xcode 中查找单个频率

如何获得声音文件特定频率的功率?