1

我正在尝试构建一个视频录制系统Android 4.2.2,我已经完成了编码部分,它正在使用OMX. 现在我正在研究 Muxer 部分,因为如果我使用 ,视频的码流可能会有些不同FFMpeg,所以我希望使用与原始系统完全相同的 Muxer 工具。所以我想提取 Muxer 的部分StagefrightRecorder,将其编译成 .so 文件,然后JNI在我的应用程序中调用它。但是里面有很多东西StagefrightRecorder,我很困惑。

这种方式能行吗?我可以只提取与 MPEG4Writer 相关的代码吗?谁能给我任何指示?谢谢!

4

1 回答 1

2

如果您在框架的上下文中进行编译,您可以简单地包含相关的头文件并MPEG4Writer直接创建对象。一个很好的例子是命令行实用程序recordVideo,可以从这个文件中观察到。

如果您想编写一个单独的应用程序,那么您需要链接libstagefright.so并包含相关的头文件及其路径。

注意:如果您希望使用标准MPEG4Writer,它的源即MPEG4Writer编码器的源应建模为MediaSource. 作者metadata通过该方法提取实际的比特流read,因此,建议使用标准的内置对象,例如编码器的OMXCodecACodec

于 2014-05-09T04:30:09.360 回答