预先准备
在已经安装过cuda的前提下,没装过看我Ubuntu16.04安装cuda+cudann+tensorflow,注意只看cuda安装章节就好了。
首先你看下装好的驱动版本满不满足nvidia-video-codec-sdk的要求,比如截止到本文之前,sdk8.2需要NVIDIA Linux display driver 396.24 or newer具体什么需求参考上述链接,里面也有相应的下载地址
如果之前已经安装过cuda或者nvidia驱动,可以通过下列命令来查看驱动版本,具体看弹出命令行左上角
nvidia-smi
1
我的是下面这个,满足要求
NVIDIA-SMI 396.24
更新驱动(非必须步骤)
其实一开始我的驱动是384.xx版本的,不满足要求,就直接下载了一个NVIDIA-Linux-x86_64-396.24.run,然后
chmod 777 NVIDIA-Linux-x86_64-396.24.run
1
关闭图形界面(参考该博客)
sudo /etc/init.d/lightdm stop
1
然后
./NVIDIA-Linux-x86_64-396.24.run
1
各种yes各种continue,就安装好了,之后重启图形界面
sudo /etc/init.d/lightdm start
1
下载ffmpeg
https://git.ffmpeg.org/ffmpeg.git
1
进入到里面
cd ./ffmpeg
1
配置
./configure --enable-cuda --enable-cuvid --enable-nvenc --enable-nonfree --enable-libnpp --extra-cflags=-I/usr/local/cuda-9.0/include --extra-ldflags=-L/usr/local/cuda-9.0/lib64
1
注意/usr/local/cuda-9.0/lib64是你cuda的安装路径,不同版本可能略有区别,一定要改成你自己的,然后
make -j 10
1
等待一会,如果没有出错,之后就可以在ffmpeg目录中放个视频(如1.mkv)测试一下
测试
./ffmpeg -y -hwaccel cuvid -c:v h264_cuvid -vsync 0 -i 1.mkv -vf scale_npp=1920:1072 -vcodec h264_nvenc 1.mp4 -vf scale_npp=1280:720 -vcodec h264_nvenc 2.mp4
1
安装正确的话,上面命令顺畅进行,并在当前目录下生成1.mp4和2.mp4
一些安装错误
nasm/yasm not found or too old. Use –disable-x86asm for a crippled build.
sudo apt install yasm
1
ERROR: cuda requested, but not all dependencies are satisfied: ffnvcodec
git clone https://git.videolan.org/git/ffmpeg/nv-codec-headers.git
make
sudo make install
1
2
3
这个注意进去那个git链接看下,似乎会根据sdk的版本而更新
./ffmpeg: error while loading shared libraries: libnppig.so.9.0: cannot open shared object file: No such file or directory
这个就是因为上面那个nv-codec-headers错误没有和最前面提到的驱动版本相匹配,比如前面的nv-codec-headers版本是基于sdk8.2的,而8.2目前为之需要的驱动版本是396.24,具体解决回去看前面
点赞 1
————————————————
版权声明:本文为CSDN博主「hiudawn」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/hiudawn/article/details/82261498
来源:CSDN
作者:mengzhengjie
链接:https://blog.csdn.net/mengzhengjie/article/details/104536478