ubuntu 24.04 FFmpeg编译 带Nvidia 加速记录
apt install nvidia-cuda-toolkit
安装nvcc之后
找不到ffnvcodec
git clone https://git.videolan.org/git/ffmpeg/nv-codec-headers.git
cd nv-codec-headers make && make install
之后还得去官网下载cuda
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/cuda-ubuntu2404.pin
sudo mv cuda-ubuntu2404.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/13.0.2/local_installers/cuda-repo-ubuntu2404-13-0-local_13.0.2-580.95.05-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu2404-13-0-local_13.0.2-580.95.05-1_amd64.deb
sudo cp /var/cuda-repo-ubuntu2404-13-0-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda-toolkit-13-0
cuda安装之后 /usr/local/cuda 会生成这个目录
1.机器上有个老版本的ffmpeg4.3.2 编译参数如下
./configure \--prefix=./install_nvidia \--disable-asm --disable-x86asm \--enable-cuda --enable-cuvid --enable-nvenc \--enable-nonfree --enable-libnpp \--extra-cflags=-I/usr/local/cuda/include \--extra-cflags=-fPIC --extra-ldflags=-L/usr/local/cuda/lib64
一直提示出错找不到nvenc 如上图
后面换成ffmpeg 7.1.2版本 就ok了 如下图 该有的特性都有了
编译出错 提示找不到 nppiResizeSqrPixel_8u_C1R_Ctx 函数
通过
ack "nppiResizeSqrPixel_8u_C1R" /usr
搜索发现头文件在/usr/include目录下
修改编译脚本顺利编译:
make install之后 对应的库文件可执行文件都有了