在android上构建编码器(FFMPEG)

在android上构建编码器(FFMPEG),ffmpeg,h.264,Ffmpeg,H.264,我需要在android上构建一个编码器。正在尝试将摄像头捕获的视频流编码为h.264 我有libffmpeg.so文件,但我不知道如何使用它 我是新手。有人能给出一些建议吗?要在Android上使用FFMPEG库,您必须集成与OMX相同的组件 对于ffmpeg编译和OMX生成,您可以参考以下链接: 一旦您准备好了OMX组件,就必须将其集成到Android中,方法是将其包含在media\u codecs.xml中。如果您希望始终调用特定编码器,请确保您的编解码器是列表中注册的第一个编解码器 对于编

我需要在android上构建一个编码器。正在尝试将摄像头捕获的视频流编码为
h.264

我有
libffmpeg.so
文件,但我不知道如何使用它


我是新手。有人能给出一些建议吗?

要在Android上使用
FFMPEG
库,您必须集成与
OMX
相同的组件

对于
ffmpeg
编译和
OMX
生成,您可以参考以下链接:

一旦您准备好了
OMX
组件,就必须将其集成到Android中,方法是将其包含在
media\u codecs.xml
中。如果您希望始终调用特定编码器,请确保您的编解码器是列表中注册的第一个编解码器

对于编码器,你将要考虑几个重要的点。 One,如果希望优化系统,则可能需要避免将帧从源(相机、曲面或其他源)复制到
OMX
编码器组件的输入端口。因此,您的编解码器必须支持通过元数据传递缓冲区(参考:)。如果您需要有关此主题的更多信息,请提出单独的问题

2,编码器必须支持标准的
OMX
索引和一些新索引。例如,对于
Miracast
,引入了一个新的索引
prependSPSPPStoIDRFrames
,它通过
getExtensionIndex
得到支持。作为参考,你可以参考

除上述索引外,编码器还将获得一个新的请求,请求使用
FALSE
布尔值启用
enablegraphicsbuffers
。这两个索引最重要的一点是确保调用这两个索引时,
OMX
组件不会失败


通过这些修改,您应该能够将编码器集成到
Stagefright
框架中。

AOSP
发行版中,已经有内置的H.264编码器。你不能利用同样的吗?您是专门寻找基于
FFMPEG
的编码器还是任何编码器?谢谢您,Ganesh。实际上我需要设计一个特定的h.264编码器。我将更改编码器的一些细节。我认为修改ffmpeg比内置编码器更容易。我对此不确定。我说得对吗?再次感谢。如果您需要一些特定的输入,我认为定制编码器是一个好主意。我将尝试根据此输入回答您的查询。