2

我正在编写一个需要解码 H.264(AVC) 比特流的应用程序。我发现 /frameworks/base/media/libstagefright/codecs/avc 中存在 AVC 编解码器源,有人知道如何在 Android 应用程序中访问这些编解码器吗?我想这是通过 JNI,但不清楚如何做到这一点。

经过一番调查,我认为一种方法是在 Android 源代码中创建我自己的类和 JNI 接口,以便在 Android 应用程序中使用 CODECS。另一种不需要对 Android 源代码进行任何更改的方法是将 CODECS 作为共享库包含在我的应用程序中,使用 NDK。对这些有什么想法吗?哪种方式更好(如果可行)?

我没有找到太多关于Stagefright的信息,如果有人能指出一些,那就太好了?我正在 Android 2.3.3 上开发。

任何意见都非常感谢。谢谢!

4

1 回答 1

3

Stagefright 不支持基本的 H.264 解码。但是它确实有 H.264 解码器组件。理论上,这个库是可以使用的。但实际上,由于它的依赖性,很难将其用作独立库。

最好的方法是使用 JNI 包装的独立 h.264 解码器(如 ffmpeg 可用的解码器)。

于 2011-07-15T08:33:21.233 回答