error handling for unsupported video stream types
[enigma2.git] / lib / python / Plugins / Extensions / MediaPlayer / plugin.py
index 8ef1f2fe5433664701aa9b17f8e98f24408ecc0d..27cf1d5e7a39848dcfb1482ade7487372078417f 100644 (file)
@@ -176,7 +176,8 @@ class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoB
 
                self.__event_tracker = ServiceEventTracker(screen=self, eventmap=
                        {
-                               iPlayableService.evUpdatedInfo: self.__evUpdatedInfo
+                               iPlayableService.evUpdatedInfo: self.__evUpdatedInfo,
+                               iPlayableService.evUser+11: self.__evDecodeError
                        })
 
        def doNothing(self):
@@ -217,6 +218,12 @@ class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoB
                print "[__evUpdatedInfo] title %d of %d (%s)" % (currenttitle, totaltitles, sTitle)
                self.readTitleInformation()
 
+       def __evDecodeError(self):
+               currPlay = self.session.nav.getCurrentService()
+               sVideoType = currPlay.info().getInfoString(iServiceInformation.sVideoType)
+               print "[__evDecodeError] video-codec %s can't be decoded by hardware" % (sVideoType)
+               self.session.open(MessageBox, _("This Dreambox can't decode %s video streams!") % sVideoType, type = MessageBox.TYPE_INFO,timeout = 10 )
+
        def delMPTimer(self):
                del self.rightKeyTimer
                del self.leftKeyTimer