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显示有算力占用。

相关推荐
源远流长jerry8 分钟前
在 Ubuntu 22.04 上配置 Soft-RoCE 并运行 RDMA 测试程序
linux·服务器·网络·tcp/ip·ubuntu·架构·ip
lay_liu29 分钟前
Linux安装redis
linux·运维·redis
寂柒2 小时前
序列化与反序列化
linux·网络
lay_liu2 小时前
ubuntu 安装 Redis
linux·redis·ubuntu
li星野2 小时前
[特殊字符] Linux/嵌入式Linux面试模拟卷
linux·运维·面试
JiMoKuangXiangQu3 小时前
Linux 锁 (4) - seqlock
linux·seqlock
xlp666hub4 小时前
如果操作GPIO可能导致休眠,那么同步机制绝不能采用spinlock
linux·面试
RisunJan4 小时前
Linux命令-mkbootdisk(可建立目前系统的启动盘)
linux·运维·服务器
朽棘不雕5 小时前
Linux工具(上)
linux·运维·服务器
BestOrNothing_20155 小时前
Ubuntu 22.04 下调整 VS Code 界面及字体教程
linux·vscode·ubuntu22.04·界面调整