X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/eb047f3299d45a434c6537ab01dfb3656f686f11..45f45f957859201a7d11e8339da70d91d0eab8f7:/lib/python/Plugins/Extensions/DVDBurn/TitleCutter.py diff --git a/lib/python/Plugins/Extensions/DVDBurn/TitleCutter.py b/lib/python/Plugins/Extensions/DVDBurn/TitleCutter.py index 163269c7..61152e8a 100644 --- a/lib/python/Plugins/Extensions/DVDBurn/TitleCutter.py +++ b/lib/python/Plugins/Extensions/DVDBurn/TitleCutter.py @@ -1,6 +1,7 @@ from Plugins.Extensions.CutListEditor.plugin import CutListEditor from Components.ServiceEventTracker import ServiceEventTracker from enigma import iPlayableService, iServiceInformation +from Tools.Directories import fileExists class TitleCutter(CutListEditor): def __init__(self, session, t): @@ -20,18 +21,38 @@ class TitleCutter(CutListEditor): audio = service and service.audioTracks() n = audio and audio.getNumberOfTracks() or 0 if n > 0: + from DVDTitle import ConfigFixedText + from TitleProperties import languageChoices + from Components.config import config, ConfigSubsection, ConfigSubList, ConfigSelection, ConfigYesNo + self.t.properties.audiotracks = ConfigSubList() for x in range(n): i = audio.getTrackInfo(x) - language = i.getLanguage() + DVB_lang = i.getLanguage() description = i.getDescription() + pid = str(i.getPID()) if description == "MPEG": description = "MP2" - self.t.audiotracks.append((language, description)) - print "[DVDBurn getAudioTracks]", self.t.audiotracks - self.t.sVideoType = service.info().getInfo(iServiceInformation.sVideoType) - print "[DVDBurn getVideoType]", self.t.sVideoType + print "[audiotrack] pid:", pid, "description:", description, "language:", DVB_lang + self.t.properties.audiotracks.append(ConfigSubsection()) + self.t.properties.audiotracks[-1].active = ConfigYesNo(default = True) + self.t.properties.audiotracks[-1].format = ConfigFixedText(description) + self.t.properties.audiotracks[-1].language = ConfigSelection(choices = languageChoices.choices, default=languageChoices.getLanguage(DVB_lang)) + self.t.properties.audiotracks[-1].pid = ConfigFixedText(pid) + self.t.properties.audiotracks[-1].DVB_lang = ConfigFixedText(DVB_lang) + sAspect = service.info().getInfo(iServiceInformation.sAspect) + if sAspect in ( 1, 2, 5, 6, 9, 0xA, 0xD, 0xE ): + aspect = "4:3" + else: + aspect = "16:9" + self.t.properties.aspect.setValue(aspect) + self.t.VideoType = service.info().getInfo(iServiceInformation.sVideoType) + + def checkAndGrabThumb(self): + if not fileExists(self.t.inputfile.rsplit('.',1)[0] + ".png"): + CutListEditor.grabFrame(self) def exit(self): + self.checkAndGrabThumb() self.session.nav.stopService() self.close(self.cut_list[:]) @@ -41,4 +62,5 @@ class CutlistReader(TitleCutter): def getPMTInfo(self): TitleCutter.getPMTInfo(self) + TitleCutter.checkAndGrabThumb(self) self.close(self.cut_list[:])