FFmpeg集成qsv的编译安装
创始人
2024-05-24 04:23:16
0

文章目录

    • FFmpeg集成qsv的编译安装
      • 一、参考
      • 二、编译安装流程
        • 1. LibVA 和 Media-Driver 的安装
        • 2. Intel Media SDK 编译
        • 3. ffmpeg的编译安装
        • 4. 验证安装

FFmpeg集成qsv的编译安装

一、参考

Ubuntu20.04 ffmpeg添加 Intel核显QSV加速支持
视频和视频帧:Intel GPU(核显)的编解码故事

二、编译安装流程

整体依赖关系:
在这里插入图片描述

主要步骤:

  • 安装intel media sdk
    • LibVA 和 Media-Driver 的安装
      ubuntu 19.04之后可以使用apt安装,可通过lsb_release -a命令查看当前系统版本

    • Intel Media SDK 编译安装

  • 编译安装ffmpeg

1. LibVA 和 Media-Driver 的安装

apt-get install -y libmfx1 libmfx-tools libva-dev libmfx-dev intel-media-va-driver-non-free vainfo

环境配置

vim ~/.bashrc
#末尾添加
export LIBVA_DRIVER_NAME=iHD

使用vainfo查看是否安装成功
在这里插入图片描述

2. Intel Media SDK 编译

# 安装依赖
sudo apt-get install git cmake pkg-config meson libdrm-dev automake libtool#下载MDSK源码
git clone https://github.com/Intel-Media-SDK/MediaSDK msdk
cd msdk

需要注意的点:使用vainfo,可以看到安装的libva版本是2.12.0
在这里插入图片描述
通过Releases · Intel-Media-SDK/MediaSDK · GitHub能够查看到MDSK与依赖的libva对照版本,使用git checkout 指定tag切换

如安装的2.12.0 libva版本,则对应下载 Media SDK 21.2.3,使用git checkout intel-mediasdk-21.2.3 切换
在这里插入图片描述

mkdir build && cd build
cmake ..
make
#安装
make installvim ~/.bashrc
#末尾添加
export PKG_CONFIG_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig/
export LIBVA_DRIVERS_PATH=/usr/lib/x86_64-linux-gnu/dri/
export LD_LIBRARY_PATH=/opt/intel/mediasdk/lib/

3. ffmpeg的编译安装

#回归到原始下载msdk的目录,即#下载源码
git clone https://github.com/ffmpeg/ffmpegcd msdk
#编译
./configure --arch=x86_64 --disable-yasm --enable-vaapi --enable-libmfx
make# 安装
sudo make install

编译结果报警告但不影响后续,自行考虑是否修改编译配置

WARNING: The --disable-yasm option is only provided for compatibility and will be removed in the future. Use --enable-x86asm / --disable-x86asm instead.

–disable-yasm选项在未来会被移除,使用–enable-x86asm/–disable-x86asm代替

4. 验证安装

ffmpeg -codecs | grep qsv
在这里插入图片描述
ffmpeg -hwaccels 可查看支持的加速库

在这里插入图片描述

测试解码能力
准备工具:intel_gpu_tools ,通过 apt-get install intel_gpu_tools安装

  • ffmpeg -hwaccel qsv -i 你的视频文件 -f null -
  • ffmpeg -hwaccel vaapi -i 你的视频文件 -f null -
  • ffmpeg -i 你的视频文件 -f null -
  • 新建一个窗口键入intel_gpu_top可以观察gpu使用情况,vaapi和qsv两种方式都会用到

解码器基准

可以粗略作为解码器的基准 fromhttp://trac.ffmpeg.org/wiki/Hardware/VAAPI
ffmpeg -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -i input.mp4 -f null -

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
修复 爱普生 EPSON L4... L4151 L4153 L4156 L4158 L4163 L4165 L4166 L4168 L4...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...