FFmpeg 调用 MediaCodec 硬解码到 Surface 上

这是关于 FFmpeg 和 MediaCodec 爱恨情仇系列的第三篇文章了。

之前写了 FFmpeg 调用 MediaCodec 进行硬解码的内容。

FFmpeg 调用 Android MediaCodec 进行硬解码

另外也给出了 FFmpeg 的编译脚本,轻松搞定编译问题。

老生常谈-FFmpeg 的编译问题轻松搞定

众所周知,MediaCodec 的解码能力不仅可以解码出 YUV 数据,还能直接解码到 Surface 上。

在短视频领域中,MediaCodec 解码到 Surface 上的能力反而更加常用,这样就能将画面转到 OES 纹理上,从而进行后续各种渲染操作。

之前介绍的 FFmpeg 调用 MediaCodec 进行硬解码只是解码出了 Buffer 数据,没有把解码到 Surface 上的能力用起来。

再看了更多资料之后,发现 FFmpeg 调用 MediaCodec 已经可以解码到 Surface 上。

具体参考的是这篇邮件内容:

[FFmpeg-devel] [PATCH] lavc/mediacodec: add hwaccel support

在这里面详细介绍了这种能力,挑重点截图一下:

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值