【问题标题】:Java library for extracting audio information from MP3 files用于从 MP3 文件中提取音频信息的 Java 库
【发布时间】:2011-03-16 14:51:28
【问题描述】:

是否有任何免费可用的库(Java 媒体框架除外)可用于从 MP3 文件中提取比特率(例如 128 kbps、VBR)和音频质量(例如 44.1KHz、立体声)?

我想要一个可以合并到我的应用程序 jar 中的独立库,也可以部署在只有 Java 1.5 可用且我无法升级它们或添加任何大型 Java 库的旧 Mac 上。

澄清一下:我不会播放、转码或对音频流本身做任何事情,我只对元数据感兴趣。

【问题讨论】:

  • 我有一个库/代码可以做到这一点,但是网上有很多例子告诉你如何从文件中读取 MP3 信息。

标签: java audio mp3


【解决方案1】:

我承认我对 MP3 文件了解不多,但您可以从the format specification 看到所需的所有信息都在文件的 32 位长标题中。

您可以使用FileInputStream 打开 MP3,读取文件的前 4 个字节,然后使用一些简单的二进制掩码检索您需要的信息。恕我直言,为此使用专门的库有点矫枉过正。

【讨论】:

  • 不只是读取前4个字节,还要验证数据也是MPEG帧。
【解决方案2】:

看看JAudioTagger,简单易用,你要找的数据在MP3AudioHeader类中,有getBitRate()之类的方法

【讨论】:

    【解决方案3】:

    您可以使用 LAMEOnJ 库:

    这个java库很轻,但是你必须在目标计算机上安装LAMELib

    【讨论】:

      【解决方案4】:

      我不是 Java 程序员,但我很确定您可以将 mp3 文件读入字节数组,然后查看 http://www.mp3-tech.org/programmer/frame_header.html 了解帧信息。

      【讨论】:

        【解决方案5】:

        format specification 向您展示了 MPEG (mp3) 标头中包含的内容。您可以编写代码来检索此标头。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2020-12-19
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-09-05
          • 1970-01-01
          • 1970-01-01
          • 2022-08-13
          相关资源
          最近更新 更多