github jellyfin/jellyfin-mpv-shim v3.0.0pre8
Pre-Release 8: MPV-Based UI (Early Preview)

pre-releaseone day ago

This pre-release changes the main UI to use the same window as MPV, making MPV Shim a more polished desktop player experience. It also supports display mirroring for the normal UI and both the library browser and player can be driven entirely with keyboard/remote cast navigation controls.

Changes:

  • Switch to new mpv-based library browser UI.
  • MPV OSC UI can now be driven via keyboard.
    • Defaults are still mpv controls, press ENTER to switch to UI mode.
    • You can still switch to the classic MPV OSC if you prefer via settings.
  • Display mirroring and remote UI control support.
  • Improvements to player lifecycle to make playback more robust.
    • Playback errors are better handled now, instead of the player silently breaking and hanging for 30 seconds.
    • You can also now optionally request a transcode on direct playback failure.
  • Performance improvements to homescreen loading times.

This changes how the UI works considerably. All UI is now rendered inside of MPV, tkinter is not used anymore. For Linux users, this has a substantial benefit of not requiring custom tkinter builds on Flatpak and means that the entire UI should be Wayland compatible. No compromise to the playback pipeline was made, unlike past approaches with Jellyfin Media Player which required redirecting video output through another UI, with a significant performance and rendering cost.

To install this pre-release on Linux, use:

pip install --upgrade --force-reinstall "jellyfin-mpv-shim[all]@git+https://github.com/jellyfin/jellyfin-mpv-shim@local-ui-mpvtk"
image image image image

Development was assisted using AI. Please note this is a preview build for users to test and experiment with, stability is not guaranteed, this will need extensive QA on my part before it becomes a production release.

Don't miss a new jellyfin-mpv-shim release

NewReleases is sending notifications on new releases.