CentOS硬解码+ffmpeg+Nvidia硬解码

0.yum换源:

bash 复制代码
  mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
  wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
  yum install wget
  curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
  cd  /etc/yum.repos.d/
  ll
  yum install wget
  yum install lrzsz

1.环境配置:

bash 复制代码
  yum update -y
  yum install -y     epel-release     git     wget     yasm     nasm     pkgconfig     gcc     gcc-c++     make     autoconf     automake     libtool     zlib-devel     bzip2     bzip2-devel     freetype-devel     gnutls-devel     libvorbis-devel     libX11-devel     libXfixes-devel     x264-devel     cmake3     libvpx-devel     SDL2-devel     opencv-devel     libass-devel     openjpeg2-devel
  yum -y install autoconf automake make gcc gcc-c++   libass-devel freetype-devel SDL2-devel libtheora-devel   libtool libva-devel libvdpau-devel libvorbis-devel   libxcb-devel texinfo zlib-devel
  yum -y install yasm   x264-devel x265-devel   libvpx-devel fdk-aac-devel   lame-devel opus-devel
  yum -y install glew glew-devel freeglut freeglut-devel   libXmu-devel libGLU-devel

  wget https://archive.mozilla.org/pub/opus/opus-1.3.1.tar.gz
  tar -xzf opus-1.3.1.tar.gz
  cd opus-1.3.1
  ./configure
  make
  make install

2.下载 nv-codec-headers

bash 复制代码
  tar zxvf nv-codec-headers-old-sdk-9.1.zip 
  unzip nv-codec-headers-old-sdk-9.1.zip 
  yum install unzip
  unzip nv-codec-headers-old-sdk-9.1.zip 
  cd nv-codec-headers-old-sdk-9.1
  make
  make install

3.下载 ffmpeg

bash 复制代码
  wget http://ffmpeg.org/releases/ffmpeg-4.2.10.tar.gz && tar zxvf ffmpeg-4.2.10.tar.gz
  ll
  cd ffmpeg-4.2.10
  export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
  ./configure --prefix=/usr/local/ffmpeg   --disable-asm   --disable-x86asm   --enable-cuda   --enable-cuvid   --enable-nvenc   --enable-nonfree   --enable-gpl   --enable-libx264   --enable-libx265   --enable-shared   --enable-libass   --enable-libfdk-aac   --enable-libfreetype   --enable-libmp3lame   --enable-libopus   --enable-libtheora   --enable-libvorbis   --enable-librtmp
  make
  make install
  ffmpeg
  ffmpeg -hwaccels

4.验证rtsp流

bash 复制代码
  ffmpeg -hwaccel cuvid -c:v h264_cuvid -i rtsp://admin:1qazXSW@@192.168.20.154/h264/ch1/main/av_stream -f null -

验证本地视频

bash 复制代码
  ffmpeg -hwaccel cuda -c:v h264_cuvid -i MyVideo_1.mp4 -f null -
  ffmpeg -hwaccel cuda -c:v h264_cuvid -i MyVideo_1.mp4 -f mp4 output.MP4 #保存视频 

能成功用cuda硬解码视频流:top显示cpu占用率明显下降,nvidia-smi显示有算力占用。

相关推荐
深紫色的三北六号4 小时前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash8 小时前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI18 小时前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行1 天前
Linux和window共享文件夹
linux
木心月转码ing2 天前
WSL+Cpp开发环境配置
linux
崔小汤呀3 天前
最全的docker安装笔记,包含CentOS和Ubuntu
linux·后端
何中应3 天前
vi编辑器使用
linux·后端·操作系统
何中应3 天前
Linux进程无法被kill
linux·后端·操作系统
何中应3 天前
rm-rf /命令操作介绍
linux·后端·操作系统
何中应3 天前
Linux常用命令
linux·操作系统