我正在编写一个需要解码H.264(AVC)比特流的应用程序。我发现/ frameworks / base / media / libstagefright / codecs / avc中存在AVC编解码器源,有谁知道如何在Android应用程序中访问这些编解码器?我想这是通过JNI,但不清楚如何做到这一点。
经过一番调查后,我认为一种方法是在Android源代码中创建自己的类和JNI接口,以便在Android应用程序中使用CODECS。 另一种不需要在Android源代码中进行任何更改的方法是在我的应用程序中包含CODECS作为共享库,使用NDK。对这些有何想法?哪种方式更好(如果可行)?
我没有找到关于Stagefright的更多信息,如果有人能指出一些,那会很棒吗?我正在开发Android 2.3.3。
任何评论都非常感谢。谢谢!
答案 0 :(得分:3)
Stagefright不支持基本的H.264解码。但它确实有H.264解码器组件。从理论上讲,可以使用这个库。但实际上,由于其依赖性,将其用作独立库将很难。
最佳方法将用于JNI包装的独立h.264解码器(如ffmpeg提供的解码器)。