Author: dmeyer
Date: Mon Apr 17 11:17:32 2006
New Revision: 1403
Added:
trunk/player/src/generic.py
Modified:
trunk/player/src/__init__.py
trunk/player/test/play.py
Log:
add generic player class
Modified: trunk/player/src/__init__.py
==============================================================================
--- trunk/player/src/__init__.py (original)
+++ trunk/player/src/__init__.py Mon Apr 17 11:17:32 2006
@@ -1,3 +1,2 @@
from base import *
-import xine
-import mplayer
+from generic import Player
Added: trunk/player/src/generic.py
==============================================================================
--- (empty file)
+++ trunk/player/src/generic.py Mon Apr 17 11:17:32 2006
@@ -0,0 +1,27 @@
+import xine
+import mplayer
+from base import *
+
+class Player(object):
+ def __init__(self):
+ object.__setattr__(self, 'player', None)
+
+ def open(self, mrl):
+ if self.player:
+ self.player.stop()
+ self.player = None
+ cls = get_player_class(mrl)
+ if not cls:
+ raise PlayerError("No supported player found to play %s", mrl)
+ object.__setattr__(self, 'player', cls())
+ return self.player.open(mrl)
+
+ def __getattr__(self, attr):
+ if not self.player:
+ raise PlayerError("No mrl loaded")
+ return getattr(self.player, attr)
+
+ def __setattr__(self, attr, value):
+ if not self.player:
+ raise PlayerError("No mrl loaded")
+ return setattr(self.player, attr, value)
Modified: trunk/player/test/play.py
==============================================================================
--- trunk/player/test/play.py (original)
+++ trunk/player/test/play.py Mon Apr 17 11:17:32 2006
@@ -9,11 +9,6 @@
print "Usage: %s [videofile]" % sys.argv[0]
sys.exit(0)
-cls = kaa.player.get_player_class(sys.argv[1])
-if not cls:
- print "No supported player found to play:", sys.argv[1]
- sys.exit(0)
-
def handle_lirc_event(code, player):
lirc_map = { "exit": "q", "menu": "m", "select": "space",
"up": "up", "down": "down", "left": "left", "right": "right",
@@ -133,10 +128,10 @@
-player = cls()
+player = kaa.player.Player()
+player.open(sys.argv[1])
player.delay = 0
print "Playing file with '%s' player" % player.get_player_id()
-player.open(sys.argv[1])
player.signals["start"].connect(dump_info, player)
player.play()
player.get_window().set_fullscreen()
-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
_______________________________________________
Freevo-cvslog mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freevo-cvslog