ffmpeg集成qsv

本次安装的是intel-mediasdk-20.5.1github下载地址https://github.com/Intel-Media-SDK/MediaSDK/releases/tag/intel-mediasdk-20.5.1官方给出的安装步骤https://01.org/linuxmedia/quickstart/ffmpeg-vaapi-qsv-installation-environment,仅供参考,按照官方步骤会出错ffmpeg集成qsv第一步,安装依赖yum install -y gcc gcc-c++ autoconf automake m4 libpciaccess-devel epel-release cmake3 pciutils bison flex elfutils-libelf-devel bc openssl-devel python-make xorg-x11-server-devel libXfont2-devel expat- devel libXrandr-devel nasm git SDL2 SDL2-devel第二步,升级gcc和g++,这里使用scl来管理gcc和g++版本(必须要升级gcc和g++, 4.8.5版本的gcc和g++编译会有问题)

yum install centos-release-scl scl-utils-build scl-utilsyum install devtoolset-7-gcc-c++.x86_64 devtoolset-8-gcc-c++.x86_64 devtoolset-9-gcc-c++.x86_64 devtoolset-10-gcc-c++.x86_64

关于scl使用参考https://blog.csdn.net/lianshaohua/article/details/90205986执行scl enable devtoolset-8 bash将gcc版本切换到8.3版本查看切换后的版本ffmpeg集成qsvg++的版本也要做对应切换ffmpeg集成qsv第三步:安装LibDRMgit clone https://gitlab.freedesktop.org/mesa/drm.gitdrm 需要用meson编译,执行yum install meson 安装mesoncd drm

meson builddir/ninja -C builddir/ install第四步:安装2D Driver(xf86-video-intel)git clone https://gitlab.freedesktop.org/xorg/driver/xf86-video-intel.gitcd xf86-video-intel./autogen.shmake -j4make install第五步:安装GMMLib**git clone https://github.com/intel/gmmlib.gitcd gmmlib/git checkout intel-gmmlib-20.4.1 (切换到20.4.1 tag,这一步很重要,各个仓库的版本存在对应关系)

mkdir buildcd buildcmake3 ..make -j4make install第六步:安装VAAPI and Video Driver(libva)*git clone https://github.com/intel/libva.gitcd libvagit checkout 2.10.0./autogen.shmake -j4make install第七部:安装Libva-Utilsgit clone https://github.com/intel/libva-utils.gitcd libva-utilsgit checkout 2.10.0./autogen.sh 这一步会出错

ffmpeg集成qsv执行export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig重新执行./autogen.shmake -j4make install第八步:安装Video Drivergit clone https://github.com/intel/media-driver.gitcd media-drivergit checkout -b intel-media-20.4 origin/intel-media-20.4mkdir buildcd buildcmake3 ..make -j4make install第九步:安装media sdkgit clone https://github.com/Intel-Media-SDK/MediaSDK.gitcd MediaSDKgit checkout -b intel-mediasdk-20.5 origin/intel-mediasdk-20.5mkdir buildcd buildcmake3 ..make -j4make install第十步:安装libmfx第十一步:编译ffmpeggit clone https://gitee.com/mirrors/ffmpeg.gitexport PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/opt/intel/mediasdk/lib64/pkgconfig/cd ffmpeg./configure --enable-encoder=h264_qsv --enable-decoder=h264_qsv --enable-libmfxmake -j4make install执行./ffmpeg -i xxx.ts -vcodec h264_qsv -acodec aac -f mpegts out.ts测试,出现报错libstdc++.so.6找不到GLBCXX_3.4.20,这是由于gcc和g++版本太低的问题ffmpeg集成qsv手动拷贝一个高版本的libstdc++.so.6到/lib64目录下重新执行./ffmpeg -i xxx.ts -vcodec h264_qsv -acodec aac -f mpegts out.tsffmpeg集成qsv无法创建vaapi 设备,可能是由于虚拟机的问题

***查看ffmpeg 支持的h264解码器./ffmpeg -decoders|grep h264ffmpeg集成qsv查看ffmpeg支持的h264编码器 ./ffmpeg -encoders|grep h264ffmpeg集成qsvqsv速度测试(基于i5 8500)ffmpeg -y -hwaccel qsv -c:v h264_qsv -i F:片源HD_264大丈夫_01.ts -vcodec h264_qsv -c:v h264_qsv output.mp4ffmpeg集成qsv

ffmpeg集成qsv同样的命令,在不同时候测试,转码效率相差很大,不稳定

原文链接: https://www.cnblogs.com/lvyunxiang/p/15806424.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/185721

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月12日 上午10:58
下一篇 2023年2月12日 上午10:58

相关推荐