如何在Android内解码Android中的MP3?

Sam*_*ber 7 mp3 android decode

我正在开发一款可让用户选择MP3音频文件的应用.然后我的应用程序处理该文件.

对于此处理,应用程序需要解码音频文件以获得原始PCM输出.

要解码MP3,我有两个选择:

  1. 使用Android系统解码MP3并获取PCM数据.
  2. 在手机上自己解码MP3,无需支付MP3许可费.

我的问题是#1在技术上是否可行?对于#2,手机上的MP3许可证是否也涵盖了应用程序?

Geo*_*its 2

据我所知,Android 没有提供解码 MP3 的方法。

我过去使用过JLayer ,并且可以推荐它用于 MP3 处理。将 NDK 与 C++ 库一起使用可能会更快,但如果您希望将其保留为 Java,那么我会使用它。它仍然比实时更快,大约 30 秒即可解码平均比特率 3 分钟 MP3 的所有帧。这是 Galaxy S(1GHz) 的情况,因此任何较新的手机速度都会更快。

就许可而言,我无法帮助您。JLayer 本身是 LGPL,但 MP3 许可的世界比废机油还要模糊。经过几天的寻找具体答案后,我放弃了,然后就这么做了。整个世界对于谁首先拥有该许可证似乎存在分歧。