ffmpeg windows QSV 解码 编译

       网上有很多ffmpeg的编译,也有介绍包换QSV编解码的博客,但是我尝试过,都有点小问题(可能是环境的问题)。根据文档上介绍,编译环境为mingw64;需要编译libmfx库。编译libmfx需要ming64 toolchain + --host=i686-w64-ming32。但是我在官网上下载的ming64中没有交叉编译工具,下载的交叉编译器可以编译libmfx,但是无法和ffmpeg一起编译(报错)。

      经过多次尝试,发现如下环境是可以正常编译的:

      1. msys2 (之所以用msys2 是因为他的工具集比较全,如果缺少的话可以使用pscman 来下载)

      2. ffmpeg 3.1.3 (之前的版本都有问题)

      说了这么多废话,下面开始介绍如何ffmpeg + QSV。

       1. msys2 环境搭建。

       1)在官网上下载msys2(http://msys2.github.io/)

        2) 下载autotools 。使用pacman -Sl | grep auto。查看提供的auto*工具,把列出的工具都安装上。安装命令 pacman -S *** (例如安装automake:pacman -S automake)。

3) 安装pkg-config工具:pacman -S pkg-config

  4)安装编译工具:pacman -S i686-w64-ming32  (具体忘记了,使用 pacman -Sl | grep i686 查看一下,如果是 64位,使用x86_64)

        2. 编译libmfx。 ./config;make;make install 。默认安装在/usr/local/lib下。

        3. 编译ffmpeg。 添加--enable-libmfx选项。设置PKG_CONFIG_PATH变量(默认安装的话  export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig)。make;make install。


         可以正确的编译,测试的时候发现一个问题,在使用Qsv解码器的时候(使用方法  avcond_find_decoder_by_name("h264_qsv"));使用GPU-z查看发现并没有使用GPU。直接封装IntelSDK 的测试程序,使用GPU-z查看发现是使用GPU的。目前还是没有找到问题所在!!!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值