Direct Play checks
Every file in your library folders goes through ffprobe and is compared with what Plex can Direct Play: codec, profile, HEVC level, bit depth, colour metadata, audio and subtitles.
Prismarr finds every file Plex would have to transcode and converts it once, on your NVIDIA GPU, so the server never has to.
The web interface uses the layout you already know from your other self-hosted media tools: a sidebar, a toolbar and tables that tell you what happened.
Progress, ETA, GPU temperature and space saved, on the desktop or on your phone.
The Library tracks every file. Failed and interrupted encodes wait under Wanted, one click from a retry.
New imports and upgrades are queued and encoded automatically, ahead of any library run that is already going. The webhook URL is on the Connect page.
History shows the space saved on every file. Runs shows every pass over the library and what it did.
Every option is in Settings with a short explanation. Show Advanced reveals the rest.
System shows health checks and disk space, the scheduled tasks and when they run next, and an event log of everything that happened.
Video to HEVC, audio to AAC, subtitles to SRT, all in MKV. Anything that already plays directly is left alone.
Every file in your library folders goes through ffprobe and is compared with what Plex can Direct Play: codec, profile, HEVC level, bit depth, colour metadata, audio and subtitles.
Video is encoded to HEVC on your NVIDIA GPU, with libx265 as a software fallback. Encodes are capped to the GPU's NVENC engines and throttle on temperature and memory.
Work happens on a copy on a scratch drive. Every output's codecs, length and frames are checked against the source before it replaces the original.
Pressed Stop, hit CTRL-C or shut the PC down? The encode is saved and continues from where it stopped on the next run.
Sonarr, Radarr and Plex webhooks send new imports and upgrades straight to the queue. If a library run is already going, they jump ahead of it.
On Windows 10/11 it starts at logon from a Startup-folder shortcut. On Linux it runs as a systemd user service.
Prismarr runs on Windows 10/11 and Linux. Pick your platform.
Install Python 3.10 or newer from python.org. Check it with:
py --versionInstall FFmpeg (it includes ffprobe) and note its bin folder, for example P:\Apps\FFMPEG\bin.
Download the latest release zip from the Releases page and extract it.
In the extracted folder, start Prismarr:
py prismarr.pyOpen http://127.0.0.1:9876 in your browser and set your library folders in Settings → Library.
Optional Start Prismarr at logon (adds a Startup-folder shortcut):
py prismarr.py --install-autostartInstall Python 3.10 or newer from your distribution's packages or python.org. Check it with:
python3 --versionInstall FFmpeg (it includes ffprobe). On Debian or Ubuntu, for example:
sudo apt install ffmpegDownload the latest release zip from the Releases page and extract it.
In the extracted folder, start Prismarr:
python3 prismarr.pyOpen http://127.0.0.1:9876 in your browser and set your library folders in Settings → Library.
Optional Run it as a systemd user service so it starts automatically:
python3 prismarr.py --install-autostart| Component | Needed | Notes |
|---|---|---|
| Python 3.10 or newer | Required | Windows 10/11 or Linux. |
| FFmpeg / ffprobe | Required | Used to check and convert every file. |
| NVIDIA GPU with NVENC | Recommended | Software encoding works, but much more slowly. |
| Plex Media Server | Required | The library Prismarr prepares for Direct Play. |
| Sonarr and Radarr | Optional | Their webhooks queue new imports and upgrades automatically. |
Questions, bugs and what's new.
Documentation and community links are coming soon.