X-Git-Url: http://git.maemo.org/git/?a=blobdiff_plain;f=src%2Fplayer.py;h=54743c677fe2344837de1883512ead0eb72549fb;hb=b93016cc87de3be7cc151a038d4673550fe9c0a3;hp=61ebf5c28e93c0bb0f095a0676c8d81364c21822;hpb=e713a0eebcc255c16bb8d1728368940bdac6f8d3;p=watersofshiloah diff --git a/src/player.py b/src/player.py index 61ebf5c..54743c6 100644 --- a/src/player.py +++ b/src/player.py @@ -4,6 +4,7 @@ import gobject import util.misc as misc_utils import stream +import call_monitor _moduleLogger = logging.getLogger(__name__) @@ -38,6 +39,9 @@ class Player(gobject.GObject): self._index = index self._node = None + self._calls = call_monitor.CallMonitor() + self._calls.connect("call_start", self._on_call_start) + self._stream = stream.GSTStream() self._stream.connect("state-change", self._on_stream_state) self._stream.connect("eof", self._on_stream_eof) @@ -83,6 +87,8 @@ class Player(gobject.GObject): _moduleLogger.info("play") self._stream.play() + self._calls.start() + def pause(self): _moduleLogger.info("pause") self._stream.pause() @@ -92,6 +98,8 @@ class Player(gobject.GObject): self._stream.stop() self.set_piece_by_node(None) + self._calls.stop() + def back(self): _moduleLogger.info("back") @@ -113,5 +121,10 @@ class Player(gobject.GObject): _moduleLogger.info("Error %s %s" % (error, debug)) self.emit("error", error, debug) + @misc_utils.log_exception(_moduleLogger) + def _on_call_start(self, monitor): + _moduleLogger.info("Call in progress, pausing") + self.pause() + gobject.type_register(Player)