Encoder and filtering setup within Docker
docker | ||
Dockerfile | ||
LICENSE | ||
README.md |
A Dockerfile featuring several video encoding / processing / filtering utilities.
Build and run
$ DOCKER_BUILDKIT=1 docker build -t encoder .
$ docker run -it --rm -v /path/to/mount/on/container:/mnt encoder
If you want to use newer VapourSynth API4 instead of API3, use this command instead of the first one:
$ DOCKER_BUILDKIT=1 docker build -t encoder --target encoder-vapoursynth4 .
Included tools
Tool | Kind | Notes |
---|---|---|
ffmpeg | General Tools | static build from latest release. Can be accessed via $ ffmpeg |
ffmpeg-git | General Tools | static build from git snapshot. Can be accessed via $ ffmpeg-git |
x264 stable | H.264 Encoder | x264, the best and fastest H.264 encoder. Can be accessed via $ x264 |
x264 master | H.264 Encoder | Can be accessed via $ x264-dev |
x265 3.5 | H.265 / HEVC Encoder | Can be accessed via $ x265 |
Kvazaar v2.2.0 | H.265 / HEVC Encoder | Can be accessed via $ kvazaar |
uvg266 v0.4.1 | H.266 / VVC Encoder | Can be accessed via $ uvg266 or $ uvg266-10bit |
vvenc v1.9.0 | H.266 / VVC Encoder | Fraunhofer Versatile Video Encoder (VVenC). Can be accessed via $ vvencapp or $ vvencFFapp |
VTM 21.2 | H.266 / VVC Encoder/Decoder | VTM reference software for VVC. Can be accessed via $ VTMEncoder or $ VTMDecoder |
aom v3.7.0-rc1 | AV1 Encoder/Decoder | Can be accessed via $ aomenc or $ aomdec |
SVT-AV1 v1.6.0 | AV1 Encoder/Decoder | Can be accessed via $ SvtAv1EncApp or $ SvtAv1DecApp |
rav1e p20230815 | AV1 Encoder | Can be accessed via $ rav1e |
Av1an 0.4.1 | Encoding Tools | Cross-platform command-line AV1 / VP9 / H.265 / H.264 encoding framework with per scene quality encoding. Can be accessed via $ av1an |
xeve v0.4.3-3890dae6 | MPEG-5 EVC Encoder | eXtra-fast Essential Video Encoder, MPEG-5 EVC (Essential Video Coding). Can be accessed via $ xeveb or $ xeve |
revc master | MPEG-5 EVC Encoder/Decoder | Can be accessed via $ revce or $ revcd |
VapourSynth R55-API3 | Processing Tools | VapourSynth API3. Can be accessed via $ vspipe |
VapourSynth R62 | Processing Tools | VapourSynth API4. Can be accessed via $ vspipe . Requires using custom docker build target command. |
FDK-AAC master | AAC-LC/HE/HEv2 Encoder | Fraunhofer FDK AAC code from Android. Can be accessed via $ aac-enc |
Sushi | Subtitle Syncing | Automatic shifter for SRT and ASS subtitle based on audio streams. Can be accessed via $ sushi |
vmaf v2.3.1 | Processing Tools | Perceptual video quality assessment based on multi-method fusion. Can be accessed via $ vmaf |
MKVToolNix 78.0 | Matroska Tools | Creating and working with Matroska files. |
MediaInfo v23.07 | General Tools | Convenient unified display of the most relevant technical and tag data for video and audio files. |
VapourSynth API3 Extras
Tool | Kind | Notes |
---|---|---|
VapourSynth-TDeintMod r10.1 | Plugin | TDeint filter for VapourSynth |
fmtconv r28 | Plugin | Format conversion tools for Vapoursynth and Avisynth+ |
vapoursynth-mvtools | Plugin | Motion compensation and stuff |
VapourSynth-FFT3DFilter 64323f0 | Plugin | VapourSynth port of FFT3DFilter |
znedi3 r2.1 | Plugin | nnedi3 filter |
descale r7 | Plugin | VapourSynth plugin to undo upscaling |
flash3kyuu_deband | Plugin | A deband library and filter for avisynth/vapoursynth |
VapourSynth-BM3D r9 | Plugin | BM3D denoising filter for VapourSynth |
VapourSynth-DFTTest r7 | Plugin | DFTTest filter for VapourSynth |
VapourSynth-Yadifmod r10.1 | Plugin | Yadifmod filter for VapourSynth |
ffms2 ef243a | Plugin | An FFmpeg based source library and Avisynth/VapourSynth plugin for easy frame accurate access |
havsfunc 3b6a80 | Functions | Holy's ported AviSynth functions for VapourSynth |
mvsfunc 90e185 | Functions | mawen1250's VapourSynth functions |
fvsfunc 29ced9 | Functions | Small collection of VapourSynth functions |
muvsfunc 6158bf | Functions | Muonium's VapourSynth functions |
VapourSynth API4 Extras
TODO: build new table