【问题标题】:MP3 Compression i.e converting mp3 file from 256kbps to 128kbps in java [closed]MP3压缩,即在java中将mp3文件从256kbps转换为128kbps [关闭]
【发布时间】:2011-01-03 20:58:43
【问题描述】:

我想实现 mp3 压缩.. 这意味着我想使用 java 编程语言将 256kbps mp3 文件转换为 128 甚至 64kbps mp3 文件..

是否可以使用 JLayer..? 我该怎么做..?

代码 sn-p 会很有用

【问题讨论】:

  • 以上问题你找到解决办法了吗?

标签: java compression mp3 jlayer


【解决方案1】:

如果您正在搜索纯 java 版本的 lame,请查看以下来源: http://jsidplay2.cvs.sourceforge.net/viewvc/jsidplay2/jump3r/

【讨论】:

  • 这真是太好了!尝试将其部署为流式传输...
【解决方案2】:

解码 MP3 很简单。然而,编码 MP3 充满了专利、许可证和一般的法律混乱。 LAME 是一种适应的可能性,但它也存在潜在的诉讼负担。它也是known to be poor at lower bit rates。它是用 C 编写的,所以你必须进行翻译。

【讨论】:

  • 您可以使用 Java Native Access (JNA)。这是从 Java 访问 C 库的一种相当简单的方法。 “相当简单”是指您只需编写一个接口并包含 jna.jar 文件。
  • @Greg:实际上,LameOnJ(请参阅我的回答)正是“蹩脚”库的 Java 包装器,因此无需直接使用 JNA(尽管有可能)。
  • 认为 MP3 编码“直截了当”是一个常见的错误。解码器和编码器的许可费用应由专利联盟支付。软件解码器的基本价格为 0.75 美元,编码器为 2.50 美元(包括解码器许可证)。
  • 专利于 2017 年结束
【解决方案3】:

JLayer 仅用于解码。没有 100% 的 Java 编码解决方案。 LAME 仅以源代码形式正式发布,因此如果您想避免专利侵权,您不能在未购买许可证的情况下将 LAME 二进制文件与您的程序一起发布。

【讨论】:

    【解决方案4】:

    要将 MP3 文件转换为较低比特率的文件,您必须对文件进行解码和重新编码,因此您需要一个 MP3 解码器和一个 MP3 编码器。

    您必须找到一个用于解码/编码 MP3 的 Java 库。一种选择是LameOnJ。它是“蹩脚”的 MP3 编码器的包装器,并使用特定于平台的二进制文件/DLL。

    可能还有纯 Java 解决方案,但我不知道。

    另见MP3 Encoding in Java

    【讨论】:

    • 我不能用JLayer来编码和解码......?
    • 当然可以,你试过了吗?
    猜你喜欢
    • 2011-06-05
    • 1970-01-01
    • 2012-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-06
    • 1970-01-01
    相关资源
    最近更新 更多