FFMPEG具有硬件编解码器支持

时间:2011-08-30 01:03:34

标签: android ffmpeg codec

我在Android 2.2上使用ffmpeg构建了一个简单的媒体播放器。硬件是基于arm cortex-a8的1GHz处理器,512 MB RAM。我的性能很低,大约15 FPS的800x600 mp4视频。关于如何提高性能,我有几个问题

  • 如何使用目标设备上提供的硬件编解码器。如何配置ffmpeg以使用可用的硬件解码器? GPU或图形驱动程序是否必须公开一些标准API,例如OpenMax IL?

  • 构建ffmpeg时应该启用哪些选项,以便可以针对目标硬件进行优化?就像是: --cpu=cortex=a8 --extra-cflags="-mfpu=neon" ...

我已经环顾网了,但我找不到我要找的答案。我希望有人可以就此提出建议。

提前致谢!

1 个答案:

答案 0 :(得分:3)

libav / ffmpeg中必须有适合您硬件的特定代码。现在,我可以看到对某些硬件解码器以及具有暴露VPAPI或VDPAU(主要是NVidia)API的驱动程序的硬件的支持。

stock libavcodec drivers似乎不支持您的硬件。如果您可以获得libavcodec的源补丁或暴露其中一个支持的解码加速API的驱动程序,您可以获得加速解码。

换句话说,您应该询问您的硬件提供商。