FFmpeg集成qsv的编译安装

news/2024/7/10 22:24:08 标签: ffmpeg

文章目录

    • 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 install

vim ~/.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/

ffmpeg_69">3. ffmpeg的编译安装

#回归到原始下载msdk的目录,即

#下载源码
git clone https://github.com/ffmpeg/ffmpeg

cd 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 -


http://www.niftyadmin.cn/n/50086.html

相关文章

FPGA纯verilog代码实现图像对数变换,提供工程源码和技术支持

目录1、图像对数变换理论2、log系数的matlab生成3、FPGA实现图像对数变换4、vivado与matlab联合仿真5、vivado工程介绍6、上板调试验证并演示7、福利:工程代码的获取1、图像对数变换理论 对数变换可以将图像的低灰度值部分扩展,显示出低灰度部分更多的细…

MD5加密是什么?为什么不可解密?

MD5是一种我们日常开发中经常使用到的加密方式,它使用起来操作简单且不可逆向解密。那么MD5到底是什么呢?又为什么不可逆呢?下面就来为大家介绍一下MD5加密的原理。 1.什么是MD5加密 MD5消息摘要算法(MD5 Message-Digest Algorithm),一种被广…

前端插件重磅来袭

“你值得拥有”专栏系列上新啦,今日推出“手写前端插件”项目,作为一个前端中高级工程师,手写前端树形菜单插件、弹出层插件、日历插件、分页插件、选项卡插件、进度条插件等是必备的技能,让你的前端技术百尺竿头更进一步&#xf…

Linux文件,目录IO类系统调用总结与示例

tags: C Syscall Linux 写在前面 无论是做网络编程还是系统编程, 逃不开的一个内容就是C系统调用的学习, 正如C的STL一样, 学习OS也有如下的三步骤: 会使用: 熟悉API懂原理: 分析源码写扩展: 实际开发 现在就来熟悉一下系统调用吧. 环境Ubuntu x86_64. 源码部分也参考了apu…

财报解读:业务复苏迹象明显,中国中免能否重写增长神话?

2月3日,中国中免披露2022年度业绩快报,2022年总营收为544.63亿元,同比下降19.52%;实现归属于上市公司股东的净利润50.25亿元,同比下降47.95%。来源:中国中免2022年度业绩快报业绩近乎腰斩,但从长…

【深度学习基础7】预训练、激活函数、权重初始化、块归一化

一、Unsupervised Pre-training 得益于 Hinton and Salakhutdinov 在 2006 年的开创性工作— 无监督预训(unsupervised pre-training);在《Reducing the dimensionality of data with neural networks.》这篇论文中,他们在 RBMs 中引入无监督预训练,下面我们将在Autoenco…

MySQL数据库

1.MySQL的MyISAM与InnoDB两种存储引擎在,事务、锁级别,各自的适用场景? 1.1事务处理上方面 MyISAM:强调的是性能,每次查询具有原子性,其执行数度比InnoDB类型更快,但是不提供事务支持。 InnoDB:提供事务…

【分享】解读时间同步(NTP网络授时服务器)的重要性

【分享】解读时间同步(NTP网络授时服务器)的重要性 【分享】解读时间同步(NTP网络授时服务器)的重要性 在我们还很小的时候,就被教育要有时间观念。上个世纪末,成年人每隔一段时间就会守在电视机前&#xf…