java - 对 Java 的 MP3/声音库有什么好的建议吗?

标签 java audio mp3 signal-processing

我正在寻找库:

  • 读取和写入元数据(例如 mp3 和所有文件中的 ID3v2 标签)
  • 将压缩后的音频数据转换为原始音频数据,如果可能,将原始音频数据转换为 mp3、ogg、aac、...
  • 对音频数据进行数字处理(能量、音色、梅尔频率倒谱系数 - MFCC、FFT、LPC、自相关、小波等)

我已经知道并且不满足于:

  • JMF:来自 Sun,读取 mp3 并将其转换为 WAV。但不读取元数据,也不提供任何高级数字处理功能。
  • FMJ :具有相同限制的 JMF 的替代实现。
  • jAudio :不稳定,虽然有潜力,但目前维护得不好。
  • Marsyas :在数字处理中正是我所希望的,但在 C++ 中。也许一些端口/集成已经可用?
  • JID3 : 元数据的 API,但似乎已经死了(最后发布 2005/12/10)。
  • JLayer : 用于阅读和播放的 API,也死了(最后更新 2004/11/28)。
  • MetaMusic :程序的API很简洁,但没有官方独立的开源项目。因此没有社区、 future 的支持和所有...
  • Light Dev : 一些有趣的功能,但并不完整。

这是我自己的一些调查发现的。我将非常感谢所有的意见、建议、批评......

最佳答案

JLayer 应该做你需要的一切。它没有死,它只是稳定的。作者在很久以前就完成了,MP3 格式从那以后就没有太大的变化。你会注意到他的 MP3SPI代码库更新一些。 MP3SPI 所做的是将 JLayer 的功能转换为 JavaSound API。因此,您可以获取任何 JavaSound 代码,将 MP3SPI 添加到类路径中,并期望 MP3 文件将开始工作。这很漂亮。 :)

关于java - 对 Java 的 MP3/声音库有什么好的建议吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/86083/

相关文章:

Java 将对象转换为字节数组的高效方法

java - 在 Java 中将 iCal 转换为 HTML 或纯文本

java - 无法实例化 sun.tools.attach.WindowsAttachProvider

ffmpeg - 混合超过 1000 个 mp3 的声音不好/我可以使用 FFmpeg 合并 1000 个 mp3 吗?

Java/JAudiotagger : Mp3 wrong ID3 tag size

java - 用于覆盖 XML 定义的 Bean 注释 - Spring

linux - aplay/alsaplayer - 声音不适用于普通用户

javascript - 扬声器输入的示波器在几秒钟后停止渲染

android - 适用于 Android 的 HTML5 中的视频和音频标签

python - 使用 Python 分割 MP3 音频文件