1. 主流程,参考官网

https://developer.nvidia.com/ffmpeg

2. CUDA-Toolkit 与驱动版本对应表

3. GPU 各型号功能及特性支持matrix

https://developer.nvidia.com/video-encode-decode-gpu-support-matrix

4. 驱动安装

没有装驱动的装驱动,装驱动的通过nvidia-smi 命令查看当前的驱动版本

没有驱动的,从官网下载指定型号驱动并安装
https://www.nvidia.com/download/index.aspx?lang=en-us

5. CUDA-Toolkit ,根据驱动下载对应版本

https://developer.nvidia.com/cuda-downloads


安装:

sh cuda_10.0.130_410.48_linux

由于已经装过驱动了,第一个选no

6. 下载nv-codec-header

git clone https://git.videolan.org/git/ffmpeg/nv-codec-headers.git
cd nv-codec-headers && sudo make install && cd –## 通过pkg-config 验证ffnvcodec,如果找不到,把ffnvcodec.pc路径添加到PKG_CONFIG_PATH
pkg-config --modversion ffnvcodec## Note 一定要安装pkg-config, 不然ffmpeg 获取不到nv-codec版本号会出错

nv-codec-header 与驱动版本对应关系

nv-codec-header version driver version
9.1 >435.21
9.0 >418.30
8.2 >396.24 (optional CUA 10 >410.48)

7. 下载ffmpeg

 https://git.ffmpeg.org/ffmpeg.git## 我测试用的4.2

8. 编译选项

最基本的配置,最少的依赖

#--prefix为安装,自行修改
./configure --prefix=${workspace}/install/x86 --enable-cuda --enable-cuvid --enable-nvenc --enable-nonfree --disable-lzma --disable-zlib --disable-sdl2  --disable-ffplay --disable-avdevice --enable-shared --extra-cflags=" -fPIC "

9. ffnvcodec 出错

ffnvcodec条件不满足,90%的原因是nv-codec-header版本号没有获取到或者找不到头文件
保证两点: 1. pkg-config 已安装2. nv-codec-header 已安装

10. nv-codec 总结

(1). cuda 环境库

libcuda.so
libcudart.so
##只有这两个库
libnvidia-fatbinaryloader.so
## 跟加载库相关的库,这个很重要,不然会提示,不能加载libcuda.so,或者找不到libcuda.so.1

(2). nv-codec 环境库

libnvcuid.so
## 只有这一个库

(3). 贴上一个完整nvidia环境库截图,驱动版本410.78

11. ffmpeg 编程选择解码即可

+         // H264
+        // m_pVideoCodec = avcodec_find_decoder_by_name("h264_cuvid");
+       //H265
+        // m_pVideoCodec = avcodec_find_decoder_by_name("hevc_cuvid");
确保上述的库存在,运行过程如果找不到库, 添加库路径到LD_LIBRARY_PATH,或ld.conf中

ffmpeg nvidia nv-codec编译及运用相关推荐

  1. FFMPEG NVIDIA硬件加速总结

    目录 1.NVDIA概述 2.FFmpeg集成到GPU 3.FFmpeg uses Video Codec SDK 4.ffmpeg对NVIDIA GPU的编译步骤 4.1configure命令 4. ...

  2. 基于 FFMPEG 的音频编解码(一):Hello FFMPEG,安装与编译

    Hello FFMPEG 基于 FFMPEG 的音频编解码(一):Hello FFMPEG,安装与编译 基于 FFMPEG 的音频编解码(二):音频解码 基于 FFMPEG 的音频编解码(三):音频编 ...

  3. ffmpeg安装之linux编译安装

    转发自白狼栈:查看原文 关于ffmpeg的安装,有的人可能要折腾很久,甚至折腾一个礼拜,究其原因,基本都是编译安装惹的祸. 我们提供4种安装方式,最复杂的莫过于centos7上的编译安装. ffmpe ...

  4. NVIDIA VIDEO CODEC SDK开发资源下载

    NVIDIA VIDEO CODEC SDK开发资源下载 NVIDIA VIDEO CODEC SDK开发资源下载网址: https://developer.nvidia.com/nvidia-vid ...

  5. IMX8 ffmpeg和opencv组件编译

    IMX8MINI linux 编译组件 FFMPEG: root@imx8mmevk:/bin# ffmpeg --version ffmpeg version N-97346-g07ecc46 Co ...

  6. 【FFmpeg笔记】03-Win10编译ffmpeg4.2.1(For Android)

    Table of Contents 一.安装适用于 linux 的 Windows 子系统 二.下载 Android NDK 三.准备 ffmpeg 源文件 3.1 下载 ffmpeg 四.编写编译脚 ...

  7. FFmpeg集成qsv的编译安装

    文章目录 FFmpeg集成qsv的编译安装 一.参考 二.编译安装流程 1. LibVA 和 Media-Driver 的安装 2. Intel Media SDK 编译 3. ffmpeg的编译安装 ...

  8. ffmpeg利用NVIDIA硬件加速编译

    引言 前面有水另外两篇不同的ffmpeg编译的博文,主要是针对不同的命令与相关的调用形式,如果只是在shell命令下直推视频,普通编译加搭建srs3就好了,而如果是需要配合python或者其它编程语言 ...

  9. ffmpeg Nvidia硬件加速总结

    0. 概述 FFmpeg可通过Nvidia的GPU进行加速,其中高层接口是通过Video Codec SDK来实现GPU资源的调用.Video Codec SDK包含完整的的高性能工具.源码及文档,支 ...

最新文章

  1. 程序员Web面试之前端框架等知识
  2. redis linux 文件位置,Linux下Redis的安装和部署
  3. 1.1 sql注入分类与详解
  4. GY歌谣之读懂每行代码(飞智)
  5. Firefox不支持input手动填写后的getAttribute(value),只能用.value(Firefox 3.5.5 Windows)。bug?...
  6. Android面试,View绘制流程以及invalidate()等相关方法分析
  7. 刷卡读取信息自动录入表格_人事自动化管理系统.xls
  8. 微信“再罚”今日头条;马云:没有女性就没有阿里;有赞强推 996 工作制 | 极客头条...
  9. SQlite数据库的C编程接口(六) 返回值和错误码(Result Codes and Error Codes) ——《Using SQlite》读书笔记
  10. 《数字孪生体技术白皮书》重磅发布(附完整版下载)
  11. 维纳滤波及其简单实现
  12. Mac M1版电脑安装ps、pr
  13. 前端基础入门课程推荐
  14. 盘点阿里巴巴 33 个牛逼的开源项目,你用过哪几个?
  15. MyBatis-Plus 如何自动生成代码
  16. 【云原生】Docker高级篇之网络、compose、可视化、监控
  17. 陈敏 Java课设实验报告
  18. 树莓派 无线网卡服务器,树莓派(Raspberry Pi)USB无线网卡配置方法
  19. C语言读取GPT分区信息
  20. redis查看集合中元素的数量,scard

热门文章

  1. 权限管理命令-其他权限管理命令
  2. 网络篇之三次握手(ACK)
  3. 深圳内推 | 粤港澳大湾区数字经济研究院招聘NLP算法研究员/实习生
  4. 盗版猖獗、开发难……VR游戏进阶之路“道阻且长”
  5. Cass7.0使用的感受
  6. 微信公众号编辑器排名
  7. python如何横向输出_PYTHON小工具-竖排表格内容转横向输出
  8. MATLAB写的三维魔方解算GUI 两种算法(Thistlethwaite算法和Kociemba算法)
  9. Windows Server 2012 R2 分布式文件系统(DFS)-深博-专题视频课程
  10. 服务器如何新建计算机用户名和密码,服务器上创建本地用户账户的操作步骤