本次安装的是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,仅供参考,按照官方步骤会出错 第一步,安装依赖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-utils yum 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版本 查看切换后的版本 g++的版本也要做对应切换第三步:安装LibDRMgit clone https://gitlab.freedesktop.org/mesa/drm.gitdrm 需要用meson编译,执行yum install meson 安装mesoncd drmmeson 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 第五步:安装GMMLibgit 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 这一步会出错执行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++版本太低的问题 手动拷贝一个高版本的libstdc++.so.6到/lib64目录下重新执行./ffmpeg -i xxx.ts -vcodec h264_qsv -acodec aac -f mpegts out.ts 无法创建vaapi 设备,可能是由于虚拟机的问题 查看ffmpeg 支持的h264解码器./ffmpeg -decoders|grep h264查看ffmpeg支持的h264编码器 ./ffmpeg -encoders|grep h264 qsv速度测试(基于i5 8500) ffmpeg -y -hwaccel qsv -c:v h264_qsv -i F:\片源\HD_264\大丈夫_01.ts -vcodec h264_qsv -c:v h264_qsv output.mp4 同样的命令,在不同时候测试,转码效率相差很大,不稳定