From e5a9615bcacd7e77c89e223fd9c2623b49d6cd21 Mon Sep 17 00:00:00 2001 From: "Adrian C. (anrxc)" Date: Wed, 20 Oct 2010 02:46:59 +0200 Subject: play: added basic MPlayer support from dplay --- play | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) mode change 100644 => 100755 play diff --git a/play b/play old mode 100644 new mode 100755 index eb9634f..a4b6f4c --- a/play +++ b/play @@ -1323,6 +1323,17 @@ class TimeOffsetPlayer(Player): head = max(self.length, tail) - tail self.set_position(head, head+tail, [head, tail]) +# ------------------------------------------ +class TimeOffsetPlayerMplayer(Player): + re_progress = re.compile("^A:.*?(\d+)\.\d \([^)]+\) of (\d+)\.\d") + + def parse_buf(self): + match = self.re_progress.search(self.buf) + if match: + curS, totS = map(string.atoi, match.groups()) + position, length = curS, totS + self.set_position(position, length, [position, length]) + # ------------------------------------------ class NoOffsetPlayer(Player): @@ -1695,7 +1706,8 @@ PLAYERS = [ NoOffsetPlayer("mikmod -q -p0 %s", "\.(mod|xm|fm|s3m|med|col|669|it|mtm)$"), NoOffsetPlayer("xmp -q %s", "\.(mod|xm|fm|s3m|med|col|669|it|mtm|stm)$"), NoOffsetPlayer("play %s", "\.(aiff|au|cdr|mp3|ogg|wav)$"), - NoOffsetPlayer("speexdec %s", "\.spx$") + NoOffsetPlayer("speexdec %s", "\.spx$"), + TimeOffsetPlayerMplayer("mplayer %s", "^http://|\.(mp[123]|m4a|ogg|flac|spx|mp[cp+]|mod|xm|fm|s3m|med|col|669|it|mtm|stm|aiff|au|cdr|wav|wma)$") ] MACRO = {} -- cgit v1.2.3