龙空技术网

Linux安装 FFmpeg 和 NVIDA GPU 加速器

麦嘎噔Linux 142

前言:

眼前大家对“ubuntu更新nvm”大致比较看重,咱们都需要剖析一些“ubuntu更新nvm”的相关文章。那么小编同时在网摘上汇集了一些对于“ubuntu更新nvm””的相关文章,希望同学们能喜欢,兄弟们一起来了解一下吧!

FFmpeg是免费和开源的视频转换软件,适用于Linux和类unix系统。然而,在Ubuntu/Debian Linux和其他发行版上,NVIDIA基于硬件的编码在编译时被禁用。所以,自然地,你需要支持NVIDIA的GPU。除此之外,最好在GNU编译器中安装CUDA支持。让我们来看看如何在一个由Ubuntu或Debian Linux驱动的服务器或桌面上一个一个地安装所有组件。

我在Ubuntu Linux 20.04 LTS上测试。我安装了NVIDIA驱动程序版本460和CUDA版本10.1。我的GPU是GeForce GTX 1650。让我们看看如何在Linux上安装支持NVIDIA GPU硬件加速的FFmpeg。

安装FFmpeg与NVIDIA GPU硬件加速Linux

1、首先,确保在Ubuntu或Debian上安装了Nvidia Driver(最新专有驱动程序)。例如:

sudo apt install nvidia-driver-460

2、重启Linux系统:

sudo reboot

3、接下来你需要在Debian或Ubuntu Linux上使用apt命令或apt-get命令安装CUDA工具包:

sudo apt install nvidia-cuda-toolkit

4、要用NVIDIA编译ffmpeg,我们也需要ffnvcodec。克隆git存储库:

mkdir ~/nvidia/ && cd ~/nvidia/git clone 

5、在Ubuntu或Debian上安装ffnvcodec:

cd nv-codec-headers && sudo make install

6、获取ffmpeg源代码,运行:

cd ~/nvidia/git clone  ffmpeg/

7、安装GNU gcc编译器集合和库,运行:

sudo apt install build-essential yasm cmake libtool libc6 libc6-dev unzip wget libnuma1 libnuma-dev

8、配置ffmpeg与NVIDIA GPU支持:

cd ~/nvidia/ffmpeg/./configure --enable-nonfree --enable-cuda-nvcc --enable-libnpp --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64

9、编译、执行:

make -j $(nproc)

10、可执行验证:

ls -l ffmpeg./ffmpeg

11、你现在可以使用-hwaccel cuda开关进行编码。例如:

ffmpeg -y -hwaccel cuda -i input.file output.file
如何查看NVIDIA gpu统计数据和加载而使用ffmpeg

使用以下命令:

nvidia-smi

一定要试试nvtop。NVIDIA GPU状态查看器:

nvtop

结束:

我们转换一个视频格式,不用加速器,mkv 转换到mp4:

time /bin/ffmpeg -y -i /tmp/input.mkv /tmp/out.mp4

使用time命令的输出:

real	1m40.678suser	16m52.159ssys	0m7.821s

现在相同的文件用NVIDIA GPU加速(注意路径,我调用编译版本):

time ~/ffmpeg/ffmpeg -hwaccel cuda -y -i /tmp/input.mkv /tmp/out.mp4

使用time命令的输出:

real	0m28.494suser	1m58.659ssys	0m3.670s

从上您了解了如何在Debian或Ubuntu Linux上安装支持NVIDIA GPU加速硬件的FFmpeg,以加快FFmpeg命令的编码速度。如果能帮助到你请帮我点赞!

标签: #ubuntu更新nvm