Skip to content

MediaFlick Desktop v0.1.4

Choose a tag to compare

@github-actions github-actions released this 19 Jun 23:15
· 488 commits to main since this release

Added

  • Added a just test recipe for running the Rust test suite.

Changed

  • Moved mpv episode transition handling into a dedicated playback transition module.
  • Changed mpv lifecycle management to warm a hidden idle IPC process when an executable is configured and to reuse it until the configured mpv path changes or the app exits.
  • Changed external mpv raise handling to rely on mpv's own --focus-on=all support on Linux/macOS plus a temporary IPC ontop pulse instead of Win32 window activation.
  • Updated the Rust cef crate to v149 (#10 by @renovate).

Fixed

  • Fixed next-episode handoff snapshots reusing the previous episode's final playback position before the new mpv file finished loading.
  • Fixed late Jellyfin play-session context not being merged into active mpv playback reports after an external-player handoff.
  • Fixed the external-player backdrop remaining above Jellyfin Web after stopping playback from mpv during an auto-started next episode.
  • Fixed stale mpv EOF/mark-watched stop events from ending the newly started next episode by correlating WebUI stop handling with playback IDs and Jellyfin item/session identifiers.
  • Fixed mpv session supervision so the configured idle IPC process is polled, restarted after process or IPC loss, reconnected once before media handoff commands fail, and cancelled cleanly during app shutdown.
  • Fixed cold and slow mpv startup being treated as unavailable too quickly by extending IPC/media readiness waits, logging when mpv exits before creating its IPC pipe, and keeping watched-next handoffs on the existing mpv IPC session while ignoring stale browser stop commands.
  • Fixed automatic next-episode playback after mpv reaches EOF by keeping the warm mpv handoff protected and emitting Jellyfin Web's stopped player event with ended stop details.
  • Fixed mpv q/window-close handling to stop only the current file, keep the warm mpv process alive, and restart the idle process if it exits unexpectedly while the app is running.
  • Fixed external mpv focus after Jellyfin playback loads by retrying window activation as the player window appears.
  • Fixed app shutdown so the controller waits for the warm external mpv.exe process to quit or be killed before the app exits.
  • Fixed Jellyfin Web playstate synchronization after mpv-driven q, w, and EOF stops by preserving final player state until Jellyfin handles the stopped event.
  • Fixed the external-player backdrop/white-background layering by keeping the synthetic player backdrop above Jellyfin's page background while placing the video OSD above it.