Merge branch 'master' of git.opendreambox.org:/git/enigma2
[enigma2.git] / lib / python / Plugins / Extensions / DVDBurn / Process.py
index 3cf874c0b3ad16265c1c9d4eb40b107bad986bb5..750e9d9b3ea63643bb5e8aa7409777fb5a8fc49b 100644 (file)
@@ -126,7 +126,7 @@ class DemuxTask(Task):
                        self.currentPID = str(int(line.rstrip()[-6:].rsplit('0x',1)[-1],16))
 
        def haveNewFile(self, file):
-               print "[DemuxTask] produced file:", file
+               print "[DemuxTask] produced file:", file, self.currentPID
                self.generated_files.append(file)
                if self.currentPID in self.relevantAudioPIDs or file.endswith("m2v"):
                        self.mplex_streamfiles.append(file)
@@ -165,7 +165,7 @@ class DemuxTask(Task):
        def cleanup(self, failed):
                if failed:
                        import os
-                       for file in self.generated_files.itervalues():
+                       for file in self.generated_files:
                                os.remove(file)
 
 class MplexTaskPostcondition(Condition):
@@ -220,7 +220,7 @@ class RemoveESFiles(Task):
 
        def prepare(self):
                self.args += ["-f"]
-               self.args += self.demux_task.generated_files.values()
+               self.args += self.demux_task.generated_files
                self.args += [self.demux_task.cutfile]
 
 class DVDAuthorTask(Task):
@@ -368,6 +368,9 @@ class CheckDiskspaceTask(Task):
                self.global_preconditions.append(DiskspacePrecondition(diskSpaceNeeded))
                self.weighting = 5
 
+       def abort(self):
+               self.finish(aborted = True)
+
        def run(self, callback):
                failed_preconditions = self.checkPreconditions(True) + self.checkPreconditions(False)
                if len(failed_preconditions):
@@ -599,7 +602,7 @@ class Menus:
                        menuoutputfilename = job.workspace+"/dvdmenu"+num+".mpg"
                        spumuxTask(job, spuxmlfilename, menubgmpgfilename, menuoutputfilename)
                
-def CreateAuthoringXML_simple(job):
+def CreateAuthoringXML_singleset(job):
        nr_titles = len(job.project.titles)
        mode = job.project.settings.authormode.getValue()
        authorxml = []
@@ -771,7 +774,10 @@ class DVDJob(Job):
                CheckDiskspaceTask(self)
                if self.project.settings.authormode.getValue().startswith("menu") or self.menupreview:
                        Menus(self)
-               CreateAuthoringXML_multiset(self)
+               if self.project.settings.titlesetmode.getValue() == "multi":
+                       CreateAuthoringXML_multiset(self)
+               else:
+                       CreateAuthoringXML_singleset(self)
 
                DVDAuthorTask(self)
                
@@ -788,7 +794,7 @@ class DVDJob(Job):
                                demux = DemuxTask(self, link_name)
                                self.mplextask = MplexTask(self, outputfile=title_filename, demux_task=demux)
                                self.mplextask.end = self.estimateddvdsize
-                               #RemoveESFiles(self, demux)
+                               RemoveESFiles(self, demux)
                        WaitForResidentTasks(self)
                        PreviewTask(self, self.workspace + "/dvd/VIDEO_TS/")
                        output = self.project.settings.output.getValue()