Docker images containing FFmpeg built from source and pushed to Docker Hub via GitHub Actions.
ffmpeg without installing ffmpeg$ docker run runsascoded/ffmpeg -version
ffmpeg version 4.3.1 Copyright (c) 2000-2020 the FFmpeg developers
built with gcc 8 (Debian 8.3.0-6)
configuration: --prefix=/root/ffmpeg_build --pkg-config-flags=--static --extra-cflags=-I/root/ffmpeg_build/include --extra-ldflags=-L/root/ffmpeg_build/lib --extra-libs='-lpthread -lm' --bindir=/root/bin --enable-gpl --enable-gnutls --enable-libaom --enable-libass --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265
libavutil 56. 51.100 / 56. 51.100
libavcodec 58. 91.100 / 58. 91.100
libavformat 58. 45.100 / 58. 45.100
libavdevice 58. 10.100 / 58. 10.100
libavfilter 7. 85.100 / 7. 85.100
libswscale 5. 7.100 / 5. 7.100
libswresample 3. 7.100 / 3. 7.100
libpostproc 55. 7.100 / 55. 7.100
These Docker images give you access to specific ffmpeg releases, built in GitHub Actions that you can audit.
Any arguments you'd normally pass to ffmpeg can be sent to docker run runsascoded/ffmpeg instead.
However, input and output paths must additionally be mounted into the container. For example, if your inputs and outputs are in your current directory ($PWD), you can just mount it in (here to /mnt, and setting that as the working directory inside the container):
# down-sample `./my_video.mp4` to 10Mbps
$ docker run -v "$PWD:/mnt" -w /mnt runsascoded/ffmpeg -i my_video.mp4 -b:v 10M my_video_10M.mp4
This is analogous to the undockerized ffmpeg command:
ffmpeg -i my_video.mp4 -b:v 10M my_video_10M.mp4
If you run it this way frequently (operating on paths in the current directory), you could define a bash ffmpeg function to abstract the boilerplate away:
ffmpeg() {
docker run -v "$PWD:/mnt" -w /mnt runsascoded/ffmpeg "$@"
}
then pretend you're running a locally-installed ffmpeg, as above:
ffmpeg -i my_video.mp4 -b:v 10M my_video_10M.mp4
See runsascoded/FFmpeg:
Content type
Image
Digest
Size
853.8 MB
Last updated
almost 6 years ago
docker pull runsascoded/ffmpeg