在 Ubuntu 20.04 上自动构建支持 NVidia 加速的 FFMPEG

在 Ubuntu 20.04 上自动构建支持 NVidia 加速的 FFMPEG

我正在尝试自动部署带有 nvidia gpu 的服务器以进行视频转码,并且需要从具有 nvcc 支持的源代码构建 ffmpeg。

我已经让 bash 脚本运行到我尝试构建 ffmpeg 的阶段。我以 root 用户身份运行该脚本,但需要确保所有用户都可以使用 ffmpeg。

这是脚本的这一部分...

printf "Installing FFMPEG with Nvidia Support\n"
  cd /root/tmp/build
  git clone https://github.com/FFmpeg/nv-codec-headers.git nv-codec-headers
  cd nv-codec-headers && make install


mkdir /root/tmp/build/ffmpeg_sources
cd /root/tmp/build/ffmpeg_sources && \
wget -O ffmpeg-snapshot.tar.bz2 https://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2 && \
tar xjvf ffmpeg-snapshot.tar.bz2 && \
cd ffmpeg && \
    PATH="$HOME/bin:$PATH" \
    PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" \
    ./configure \
  --prefix="$HOME/build/ffmpeg_build" \
  --pkg-config-flags="--static" \
  --extra-cflags="-I$HOME/build/ffmpeg_build/include" \
  --extra-ldflags="-L$HOME/build/ffmpeg_build/lib" \
  --extra-libs="-lpthread -lm" \
  --ld="g++" \
  --bindir="/usr/bin" \
  --enable-gpl \
  --enable-cuda-nvcc \
  --extra-cflags=-I/usr/local/cuda/include \
  --extra-ldflags=-L/usr/local/cuda/lib64 \
  --enable-gnutls \
  --enable-libaom \
  --enable-libass \
  --enable-libfdk-aac \
  --enable-libfreetype \
  --enable-libmp3lame \
  --enable-libx264 \
  --enable-libx265 \
  --enable-nonfree && \
PATH="$HOME/bin:$PATH" make && \
make install && \
hash -r

一切正常,直到运行配置,进程就终止了

make: *** [ffbuild/common.mak:78: libavfilter/vf_premultiply.o] Terminated

每次似乎都不一样,但如果我手动运行它,它似乎可以工作。

是什么原因造成的?

相关内容