Quality Gate's encoder for Jellyfin: pre-encodes a library into 720p HEVC, H.264 or AV1 versions.
873
Your whole Jellyfin library, also in 720p
quality-gate-encoder watches a Jellyfin library and adds a 720p copy beside every film and episode, so phones and remote viewers direct play the copy instead of making the server transcode live for each stream. It runs as a Docker container on Linux, encodes on an Intel or NVIDIA GPU or in software, leaves the original file untouched, and Jellyfin lists the copy as a second version of the same title. The Quality Gate plugin is optional: it caps chosen users at the 720p copy and tells the encoder which titles to make first.
- 720p copy beside it; Jellyfin shows both as versions of one title, never as a duplicate..tmp and are renamed once verified.docker run -d --name quality-gate-encoder --restart always \
--device /dev/dri:/dev/dri \
-v /srv/media/movies:/app/source \
-v /srv/media/movies-720p:/app/destination \
-e HW_ENCODING_TYPE=intel \
-e SYMLINK_TARGET_PREFIX=/srv/media/movies-720p \
drumsergio/quality-gate-encoder:1.5.12
SYMLINK_TARGET_PREFIX is the destination folder as Jellyfin sees it, and the source mount must be writable, because the - 720p link is written beside each original. It worked when docker logs quality-gate-encoder shows Encoding succeeded and Created version symlink, and the film's page in Jellyfin gets a Version menu with a 720p entry. The image is linux/amd64 only; drop --device to encode in software, and Getting started has Docker Compose, NVIDIA and the switch from drumsergio/jellyfin-encoder (releases under the old name until 2027-03-31).
jellyfin-encodercompare_encodes.py, the coverage reportWith the plugin: One library, two qualities and Encode priority on the Quality Gate side.
Content type
Image
Digest
sha256:04565071e…
Size
272.8 MB
Last updated
2 days ago
docker pull drumsergio/quality-gate-encoder