From e4de7f1ecb4fad03583de9f2fc8d5ea00818b378 Mon Sep 17 00:00:00 2001 From: edde746 <86283021+edde746@users.noreply.github.com> Date: Tue, 7 Apr 2026 15:01:52 +0200 Subject: [PATCH] fix(tv): reduce live stream reconnect delay for faster fallback --- lib/screens/video_player_screen.dart | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/lib/screens/video_player_screen.dart b/lib/screens/video_player_screen.dart index b82f63b8..cfebe074 100644 --- a/lib/screens/video_player_screen.dart +++ b/lib/screens/video_player_screen.dart @@ -2376,18 +2376,11 @@ class VideoPlayerScreenState extends State with WidgetsBindin p.seek(pos); } - /// Configure MPV/FFmpeg options for live streaming resilience. - /// Enables automatic reconnection on EOF and network errors. + /// Configure MPV options for live streaming. + /// The official Plex Media Player does not set client-side reconnect options — + /// reconnection is handled by the server's transcoder on the input side. Future _setLiveStreamOptions() async { - final p = player!; - // FFmpeg HTTP protocol reconnection - await p.setProperty( - 'stream-lavf-o', - 'reconnect=1,reconnect_streamed=1,reconnect_on_network_error=1,reconnect_delay_max=30', - ); - // Demuxer: retry up to 1000 times on stream reload failures - await p.setProperty('demuxer-lavf-o', 'max_reload=1000'); - await p.setProperty('force-seekable', 'no'); + await player!.setProperty('force-seekable', 'no'); } /// The current playback position as an absolute epoch second (for live TV time-shift).