LIBVIDSTAB_VERSION: GNU General Public License (GPL) version 2.
FREETYPE_VERSION: GNU General Public License (GPL) version 2.
FDKAAC_VERSION: Liberal but not a license of patented technologies.
XVID_VERSION: GNU General Public Licence (GPL) version 2.
LAME_VERSION: GNU Lesser General Public License (LGPL) version 2.1.
FFMPEG_VERSION: GNU Lesser General Public License (LGPL) version 2.1.
Run container using "-runtime=nvidia" flag and use supported ffmpeg hwaccel optionsĭocker run -runtime=nvidia jrottenberg/ffmpeg:4.4-nvidia -i INPUT -c:v nvenc_h264 -preset hq OUTPUTĭocker run -runtime=nvidia jrottenberg/ffmpeg:4.4-nvidia -hwaccel cuvid -c:v h264_cuvid -i INPUT -vf scale_npp=-1:720 -c:v h264_nvenc -preset slow OUTPUT See what's inside the beastĭocker run -it -entrypoint= 'bash ' jrottenberg/ffmpeg:4.4-ubuntuįor i in ogg amr vorbis theora mp3lame opus vpx xvid fdk x264 x265 do echo $i find /usr/local/ -name * $i * done Keep up to date.
Install nvidia latest drivers on host machine.
Supports nvenc only on all ffmpeg versions, and hardware decoding and scaling on ffmpeg >= 4.0 Thanks to ShaulMyplay for the nvidia based variant Use nvidia hardware acceleration enabled build
Run ffmpeg with the correct parameters, this is the same as when running ffmpeg natively.
You can run vainfo (part of vainfo package on Ubuntu) to determine whether your graphics card has been recognized correctly.
Have the Intel drivers up and running on your host.
Run the container with the device attached /dev/dri from your host into the container :ĭocker run -device /dev/dri:/dev/dri -v $(pwd):$(pwd) -w $(pwd) jrottenberg/ffmpeg:4.4-vaapi.
You can install the latest build of this image by running docker pull jrottenberg/ffmpeg:$-vaapi It compiles FFmpeg from sources following instructions from the Compilation Guide. This project prepares a minimalist Docker image with FFmpeg.