支持硬件编解码器的FFMPEG



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

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

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

我已经在网上找过了,但是我找不到我想要的答案。我希望有人能给我一些建议。

提前感谢!

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

您的硬件似乎不支持本地方式的股票libavcodec驱动程序。如果你能获得libavcodec的源代码补丁或公开支持的解码加速api之一的驱动程序,你可以获得加速解码。

换句话说,您应该询问您的HW提供商

最新更新