java音频滤波器

java音频滤波器,java,audio,frequency,Java,Audio,Frequency,我正在用java开发一个简单的音频播放器。我唯一需要的高级功能是频率滤波器。它不一定是一个功能齐全的均衡器功能,在特定的频率范围内具有不同的增益:一个低通滤波器可以将频率削减到高于指定值就足够了 我研究了哪个有均衡器,但它只适用于MP3数据,而我将播放的文件是OGG 浏览各种答案,我发现ffmpeg包装器类似于或可能是一种解决方案。但我没有找到任何教程,甚至没有找到如何使用ffmpeg处理频率过滤的起点 另外,JMF被描述为实现这样一个函数的有效选择,但我发现没有什么足够具体。 这是UBC温哥华

我正在用java开发一个简单的音频播放器。我唯一需要的高级功能是频率滤波器。它不一定是一个功能齐全的均衡器功能,在特定的频率范围内具有不同的增益:一个低通滤波器可以将频率削减到高于指定值就足够了

我研究了哪个有均衡器,但它只适用于MP3数据,而我将播放的文件是OGG

浏览各种答案,我发现ffmpeg包装器类似于或可能是一种解决方案。但我没有找到任何教程,甚至没有找到如何使用ffmpeg处理频率过滤的起点

另外,JMF被描述为实现这样一个函数的有效选择,但我发现没有什么足够具体。


这是UBC温哥华JASS项目的JavaDoc。非商业用途是免费的。您应该能够使用它实现大多数类型的过滤器。请检查URL以获得实际的源代码下载。

我发现了一个名为

它基于javax.sound,用于创建10/15/25/31频段均衡器。它可以在PCM数据上工作(不像其他的MP3),所以我希望我可以在OGG上工作。我唯一关心的是输出质量,这在我的一些测试中不是很好。我必须调查

我最终将使用此解决方案(用于windows应用程序):

它利用了Windows Vista和更高版本上可用的音频处理对象技术。我的应用程序只需要编辑一个配置文本文件,APO完成其余的工作


显然,它取决于平台,我必须安装一个外部应用程序才能使我的过滤器正常工作,但在我的情况下,这是可以接受的,而且很容易实现。

如果您有PCM音频数据,您可以实现自己的过滤器。虽然这是一项通常由工程师执行的任务,但您可以使用“食谱”资源,例如此或此感谢。我花了几个小时来分析这个有趣的项目,但据我所知,它只提供对声音的频率成分的过滤。我无法对加载的音频文件应用相同的过滤器。我很高兴被证明是错误的,但看起来JASS并不是我所需要的。我已经在对PCM数据执行过滤的实际项目中使用了它。它工作得非常好…尤其是双四元滤波器,它非常简单,可以自己实现。这里有更多的链接来帮助你:---这个网站对于获取你的双四元组的系数非常有用。。。还有:。。。因为你想做一个EQ。我在代码中使用了两个站点的内容,在实践中效果也很好。