feat(music): mpv audio playback engine with gapless queue service
Audio-only mpv core on every platform (dedicated com.plezy/mpv_audio_player channels): parameterized android/windows/ linux mpv plugins and a new apple MpvAudioPlayerCore, all skipping video/window paths (vid=no, audio-display=no, gapless-audio=weak). MusicPlaybackService drives an in-memory queue with shuffle/repeat, file-loaded-event gapless arming (property edges coalesce and the android bridge drops them), per-track progress reporting, OS media controls, audio focus, sleep timer, and error auto-skip. PlaybackCoordinator enforces one live native player: starting video disposes the audio core first.
This commit is contained in:
@@ -30,6 +30,10 @@ class MainFlutterWindow: NSWindow {
|
||||
MpvPlayerPlugin.register(
|
||||
with: flutterViewController.registrar(forPlugin: "MpvPlayerPlugin"))
|
||||
|
||||
// Register the audio-only MPV player plugin for music playback
|
||||
MpvAudioPlayerPlugin.register(
|
||||
with: flutterViewController.registrar(forPlugin: "MpvAudioPlayerPlugin"))
|
||||
|
||||
// Register window utils plugin for dynamic titlebar/fullscreen control from Dart
|
||||
WindowUtilsPlugin.register(
|
||||
with: flutterViewController.registrar(forPlugin: "WindowUtilsPlugin"))
|
||||
|
||||
Reference in New Issue
Block a user