diff options
author | Adrian C. (anrxc) <anrxc@sysphere.org> | 2010-10-20 02:46:59 +0200 |
---|---|---|
committer | Adrian C. (anrxc) <anrxc@sysphere.org> | 2010-10-20 02:46:59 +0200 |
commit | e5a9615bcacd7e77c89e223fd9c2623b49d6cd21 (patch) | |
tree | c122eed226ed3577c4432e3721fa37829a7c82b9 | |
parent | 637af57205f76584913163341fd8d094f50bd27d (diff) | |
download | play-e5a9615bcacd7e77c89e223fd9c2623b49d6cd21.tar.xz |
play: added basic MPlayer support from dplay
-rwxr-xr-x[-rw-r--r--] | play | 14 |
1 files changed, 13 insertions, 1 deletions
@@ -1324,6 +1324,17 @@ class TimeOffsetPlayer(Player): 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): def parse_buf(self): @@ -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 = {} |