From 6b2e03aba8a054fd727d831a45582c413fa34a02 Mon Sep 17 00:00:00 2001 From: h-banii <121690516+h-banii@users.noreply.github.com> Date: Thu, 22 Feb 2024 03:51:08 -0300 Subject: [PATCH] Fix(mpv): Escape separators on audio tracks and subtitles --- animdl/core/cli/helpers/players/mpv.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/animdl/core/cli/helpers/players/mpv.py b/animdl/core/cli/helpers/players/mpv.py index 3e54357e..01efbde1 100644 --- animdl/core/cli/helpers/players/mpv.py +++ animdl/core/cli/helpers/players/mpv.py @@ -37,6 +37,11 @@ def play( args = (self.executable, *self.args, stream_url) if audio_tracks is not None: + audio_tracks = map( + lambda audio_track: audio_track.replace(self.path_joiner, f"\{self.path_joiner}"), + audio_tracks + ) + args += ( f"{self.opts_spec['audios']}={self.path_joiner.join(audio_tracks)}", ) @@ -56,6 +61,11 @@ def play( ) if subtitles is not None: + subtitles = map( + lambda subtitle: subtitle.replace(self.path_joiner, f"\{self.path_joiner}"), + subtitles + ) + args += ( f"{self.opts_spec['subtitles']}={self.path_joiner.join(subtitles)}", ) From a4bd1857a04918708181600199016959645863b5 Mon Sep 17 00:00:00 2001 From: h-banii <121690516+h-banii@users.noreply.github.com> Date: Thu, 22 Feb 2024 03:52:00 -0300 Subject: [PATCH] Fix(mpv): Edge case when subtitles and audio_tracks are empty --- animdl/core/cli/helpers/players/mpv.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/animdl/core/cli/helpers/players/mpv.py b/animdl/core/cli/helpers/players/mpv.py index 01efbde1..6568abfd 100644 --- animdl/core/cli/helpers/players/mpv.py +++ animdl/core/cli/helpers/players/mpv.py @@ -36,7 +36,7 @@ def play( ): args = (self.executable, *self.args, stream_url) - if audio_tracks is not None: + if audio_tracks: audio_tracks = map( lambda audio_track: audio_track.replace(self.path_joiner, f"\{self.path_joiner}"), audio_tracks @@ -60,7 +60,7 @@ def play( f"{self.opts_spec['media-title']}={title}", ) - if subtitles is not None: + if subtitles: subtitles = map( lambda subtitle: subtitle.replace(self.path_joiner, f"\{self.path_joiner}"), subtitles