From ca83b91e2993c71d2d8f09b749486ef4d78b4716 Mon Sep 17 00:00:00 2001 From: Johan Kiviniemi Date: Sun, 5 Jan 2014 17:08:37 +0200 Subject: [PATCH 1/2] Fix --msglevel for new mpv release --- syncplay/constants.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/syncplay/constants.py b/syncplay/constants.py index 5d2e3df..3c1b45f 100644 --- a/syncplay/constants.py +++ b/syncplay/constants.py @@ -72,7 +72,8 @@ VLC_MAX_PORT = 55000 #These are not changes you're looking for MPLAYER_SLAVE_ARGS = [ '-slave', '--hr-seek=always', '-nomsgcolor', '-msglevel', 'all=1:global=4:cplayer=4'] -MPV_SLAVE_ARGS = [ '--slave-broken', '--hr-seek=always', '-msglevel', 'all=1:global=4'] +# --quiet works with both mpv 0.2 and 0.3 +MPV_SLAVE_ARGS = ['--slave-broken', '--hr-seek=always', '--no-msgcolor', '--quiet'] VLC_SLAVE_ARGS = ['--extraintf=luaintf','--lua-intf=syncplay','--no-quiet','--no-input-fast-seek'] VLC_SLAVE_NONOSX_ARGS = ['--no-one-instance','--no-one-instance-when-started-from-file'] MPLAYER_ANSWER_REGEX = "^ANS_([a-zA-Z_]+)=(.+)$" From 5a99bb312322aa5a4b7dfdfdae69c9cee2e6e339 Mon Sep 17 00:00:00 2001 From: Johan Kiviniemi Date: Mon, 6 Jan 2014 21:25:29 +0200 Subject: [PATCH 2/2] players/mplayer: Unset TERM to avoid escape sequences At least mpv may output escape sequences which result in syncplay trying to parse something like "\x1b[?1l\x1b>ANS_filename=blah.mkv". Work around this by unsetting TERM. --- syncplay/players/mplayer.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/syncplay/players/mplayer.py b/syncplay/players/mplayer.py index 65007ed..e3c5d6d 100644 --- a/syncplay/players/mplayer.py +++ b/syncplay/players/mplayer.py @@ -206,7 +206,14 @@ class MplayerPlayer(BasePlayer): call.extend(playerController.SLAVE_ARGS) if(args): call.extend(args) - self.__process = subprocess.Popen(call, stdout=subprocess.PIPE, stdin=subprocess.PIPE, stderr=subprocess.PIPE, cwd = os.path.dirname(playerPath)) + # At least mpv may output escape sequences which result in syncplay + # trying to parse something like + # "\x1b[?1l\x1b>ANS_filename=blah.mkv". Work around this by + # unsetting TERM. + env = os.environ.copy() + if 'TERM' in env: + del env['TERM'] + self.__process = subprocess.Popen(call, stdout=subprocess.PIPE, stdin=subprocess.PIPE, stderr=subprocess.PIPE, cwd=os.path.dirname(playerPath), env=env) threading.Thread.__init__(self, name="MPlayer Listener") def run(self):