Description

Quality Gate is a Jellyfin plugin that caps the video height each user can be served: 480p, 720p, 1080p, 1440p or 4K, per user or as a default for everyone. The cap is measured on the file's real video stream, so a rename, a re-encode or a symlink does not get around it. Media above the cap arrives as a capped transcode, or as a smaller version of the same item when one exists, and the original file is refused.

Jellyfin's own limit is a bitrate for remote clients, not a height: a low-bitrate 4K file passes it, and a viewer on the local network is not limited at all. Quality Gate checks pixels, for every client, on every route that hands out video, with one documented exception (a legacy HLS segment route).

Features:

  • Per-user policies: assign one per user, set a default for everyone else, or mark a user unrestricted.
  • A capped user cannot direct-play, stream, download or fetch the original file.
  • Smaller copies play as they are: keep a 720p encode beside each original and capped viewers get it without a transcode.
  • Optional version grouping shows Film.mkv and Film - 720p.mkv as one film with two versions, in movies libraries.
  • API keys and anonymous requests can be held to a policy of their own.
  • A different intro video per policy, and a log line for every decision naming the user, the cap and the policy.

It is not DRM, and if the plugin fails to load every user is unrestricted, so check that it stays Active.

Documentation: https://geiserx.github.io/quality-gate/

License: GPL-3.0-or-later

Share this plugin

Embed Badge

Add this badge to your README to link back to your hub page:

Listed on JellyWatch Hub

Installation Instructions

Needs Jellyfin 12.

  1. In Jellyfin, go to Dashboard > Plugins > Repositories and add https://geiserx.github.io/quality-gate/manifest.json.
  2. Install QualityGate from the catalogue and restart Jellyfin.
  3. Confirm the plugin shows Active, then open Dashboard > Plugins > QualityGate, add a policy with a Maximum Resolution, assign a user under User Access and save.

Comments (0)

No comments yet. Be the first to share your thoughts!

High-availability NVMe VPS to self-host Jellyfin or Emby with 99.9% uptime.

Get started with Onidel

Details

QualityGate

jellyfinby Sergio_Fernndez 16
GitHub Stars 17
Approved
Submitted

Links

Website Visit

Similar Plugins

Intro Skipper

4254

Fingerprint audio to automatically detect and skip intro and outro segments in Jellyfin episodes.

Trailers4Jellyfin

3835

this plugin automates the download and selection of the latest trailers and allows you to link with cinema mode to play the trailers before your movie to complete the cinema at home experience

Discontinue Watching

2341

Remove items from Continue Watching without resetting watch progress, with optional auto-hide.

Cinema Mode

1814

Enables Jellyfin Cinema Mode with local trailers and pre-rolls before your main feature.