Beispiel #1
0
 def playPhysicalCB(self, answer):
     if answer == True:
         harddiskmanager.setDVDSpeed(harddiskmanager.getCD(), 1)
         self.FileBrowserClosed(
             harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD()))
     else:
         self.session.openWithCallback(self.FileBrowserClosed, FileBrowser)
Beispiel #2
0
def play(session, **kwargs):
	from Screens import DVD
	if (os.path.exists(os.path.join(harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD()), "VIDEO_TS"))
			or os.path.exists(os.path.join(harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD()), "video_ts"))):
		session.open(DVD.DVDPlayer, dvd_device=harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD()))
	else:
		return
 def __init__(self, project, imagepath):
     Job.__init__(self, _("Burn DVD"))
     self.project = project
     self.menupreview = False
     from Tools.Directories import getSize
     if imagepath.endswith(".iso"):
         PreviewTask(self, imagepath)
         burnargs = [
             "-Z", "/dev/" + harddiskmanager.getCD() + '=' + imagepath,
             "-dvd-compat"
         ]
         if getSize(imagepath) / (1024 * 1024) > self.project.MAX_SL:
             burnargs += ["-use-the-force-luke=4gms", "-speed=1", "-R"]
     else:
         PreviewTask(self, imagepath + "/VIDEO_TS/")
         volName = self.project.settings.name.getValue()
         burnargs = ["-Z", "/dev/" + harddiskmanager.getCD(), "-dvd-compat"]
         if getSize(imagepath) / (1024 * 1024) > self.project.MAX_SL:
             burnargs += ["-use-the-force-luke=4gms", "-speed=1", "-R"]
         burnargs += [
             "-dvd-video", "-publisher", "Dreambox", "-V", volName,
             imagepath
         ]
     tool = "growisofs"
     BurnTask(self, burnargs, tool)
Beispiel #4
0
def play(session, **kwargs):
	from Screens import DVD
	if (os.path.exists(os.path.join(harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD()), "VIDEO_TS"))
			or os.path.exists(os.path.join(harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD()), "video_ts"))):
		session.open(DVD.DVDPlayer, dvd_device=harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD()))
	else:
		return
Beispiel #5
0
def menu(menuid, **kwargs):
	if menuid == "mainmenu":
		global detected_DVD
		if detected_DVD is None:
			cd = harddiskmanager.getCD()
			if cd and os.path.exists(os.path.join(harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD()), "VIDEO_TS")):
				detected_DVD = True
			else:
				detected_DVD = False
			if onPartitionChange not in harddiskmanager.on_partition_list_change:
				harddiskmanager.on_partition_list_change.append(onPartitionChange)
		if detected_DVD:
			return [(_("DVD Player"), play, "dvd_player", 46)]
	return []
Beispiel #6
0
	def __init__(self, project, imagepath):
		Job.__init__(self, _("Burn DVD"))
		self.project = project
		self.menupreview = False
		if imagepath.endswith(".iso"):
			PreviewTask(self, imagepath)
			burnargs = [ "-Z", "/dev/" + harddiskmanager.getCD() + '='+imagepath, "-dvd-compat" ]
		else:
			PreviewTask(self, imagepath + "/VIDEO_TS/")
			volName = self.project.settings.name.getValue()
			burnargs = [ "-Z", "/dev/" + harddiskmanager.getCD(), "-dvd-compat" ]
			burnargs += [ "-dvd-video", "-publisher", "Dreambox", "-V", volName, imagepath ]
		tool = "/bin/growisofs"
		BurnTask(self, burnargs, tool)
Beispiel #7
0
def menu(menuid, **kwargs):
	if menuid == "mainmenu":
		global detected_DVD
		if detected_DVD is None:
			cd = harddiskmanager.getCD()
			if cd and os.path.exists(os.path.join(harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD()), "VIDEO_TS")):
				detected_DVD = True
			else:
				detected_DVD = False
			if onPartitionChange not in harddiskmanager.on_partition_list_change:
				harddiskmanager.on_partition_list_change.append(onPartitionChange)
		if detected_DVD:
			return [(_("DVD player"), play, "dvd_player", 46)]
	return []
Beispiel #8
0
def isCDdevice():
	cd = harddiskmanager.getCD()
	if cd:
		file_path = harddiskmanager.getAutofsMountpoint(cd)
		if (os.path.exists(os.path.join(file_path, "VIDEO_TS")) or os.path.exists(os.path.join(file_path, "video_ts"))) and isCdromMount(file_path):
			return file_path
	return ""
Beispiel #9
0
def isCDdevice():
	cd = harddiskmanager.getCD()
	if cd:
		file_path = harddiskmanager.getAutofsMountpoint(cd)
		if (os.path.exists(os.path.join(file_path, "VIDEO_TS")) or os.path.exists(os.path.join(file_path, "video_ts"))) and isCdromMount(file_path):
			return file_path
	return ""
Beispiel #10
0
 def hotplugCB(self, dev, media_state):
     print("[DVD] hotplugCB", dev, media_state)
     if dev == harddiskmanager.getCD():
         if media_state == "1":
             self.scanHotplug()
         else:
             self.physicalDVD = False
Beispiel #11
0
 def hotplugCB(self, dev, media_state):
     print '[hotplugCB]', dev, media_state
     if dev == harddiskmanager.getCD():
         if media_state == '1':
             self.scanHotplug()
         else:
             self.physicalDVD = False
Beispiel #12
0
	def conduct(self):
		if self.project.settings.output.getValue() == "iso":
			CheckDiskspaceTask(self)
		CreateStructureTask(self)
		for i, title in enumerate(self.titles):
			RemuxTask(self, title, i)
		CreateIndexTask(self)
		CreateMobjTask(self)
		for i, title in enumerate(self.titles):
			CreateMplsTask(self, title, i)
			CreateClpiTask(self, title, i)
			CopyThumbTask(self, title.inputfile, i)
		CreateMetaTask(self, self.project)
		output = self.project.settings.output.getValue()
		volName = self.project.settings.name.getValue()
		tool = "growisofs"
		if output == "medium":
			self.name = _("Burn Bludisc")
			burnargs = [ "-Z", "/dev/" + harddiskmanager.getCD(), "-dvd-compat", "-use-the-force-luke=tty"]
		elif output == "iso":
			tool = "genisoimage"
			self.name = _("Create Bludisc ISO file")
			isopathfile = getISOfilename(self.project.settings.isopath.getValue(), volName)
			burnargs = [ "-o", isopathfile ]
		burnargs += [ "-udf", "-allow-limited-size", "-publisher", "Dreambox", "-V", volName, self.workspace ]
		BurnTask(self, burnargs, tool)
		RemoveWorkspaceFolder(self)
Beispiel #13
0
	def hotplugCB(self, dev, media_state):
		print "[DVD] hotplugCB", dev, media_state
		if dev == harddiskmanager.getCD():
			if media_state == "1":
				self.scanHotplug()
			else:
				self.physicalDVD = False
Beispiel #14
0
 def hotplugCB(self, dev, media_state):
     print '[hotplugCB]', dev, media_state
     if dev == harddiskmanager.getCD():
         if media_state == '1':
             self.scanHotplug()
         else:
             self.physicalDVD = False
Beispiel #15
0
 def conduct(self):
     if self.project.settings.output.getValue() == "iso":
         CheckDiskspaceTask(self)
     CreateStructureTask(self)
     for i, title in enumerate(self.titles):
         RemuxTask(self, title, i)
     CreateIndexTask(self)
     CreateMobjTask(self)
     for i, title in enumerate(self.titles):
         CreateMplsTask(self, title, i)
         CreateClpiTask(self, title, i)
         CopyThumbTask(self, title.inputfile, i)
     CreateMetaTask(self, self.project)
     output = self.project.settings.output.getValue()
     volName = self.project.settings.name.getValue()
     tool = "growisofs"
     if output == "medium":
         self.name = _("Burn Bludisc")
         burnargs = [
             "-Z", "/dev/" + harddiskmanager.getCD(), "-dvd-compat",
             "-use-the-force-luke=tty"
         ]
     elif output == "iso":
         tool = "genisoimage"
         self.name = _("Create Bludisc ISO file")
         isopathfile = getISOfilename(
             self.project.settings.isopath.getValue(), volName)
         burnargs = ["-o", isopathfile]
     burnargs += [
         "-udf", "-allow-limited-size", "-publisher", "Dreambox", "-V",
         volName, self.workspace
     ]
     BurnTask(self, burnargs, tool)
     RemoveWorkspaceFolder(self)
Beispiel #16
0
 def update(self, dev="", action=""):
     self["space_label"].text = _("Please wait... Loading list...")
     self["info"].text = ""
     self["details"].setText("")
     self.Console = Console()
     cmd = "dvd+rw-mediainfo /dev/" + harddiskmanager.getCD()
     self.Console.ePopen(cmd, self.mediainfoCB)
Beispiel #17
0
	def conduct(self):
		if self.project.settings.output.value == "iso":
			CheckDiskspaceTask(self)
		nr_titles = len(self.project.titles)
		for self.i in range(nr_titles):
			title = self.project.titles[self.i]
			filename = title.inputfile.rstrip("/").rsplit("/",1)[1]
			link_name =  self.workspace + filename
			LinkTS(self, title.inputfile, link_name)
			CopyMeta(self, title.inputfile)

		output = self.project.settings.output.value
		volName = self.project.settings.name.value
		tool = "growisofs"
		if output == "dvd":
			self.name = _("Burn DVD")
			burnargs = [ "-Z", "/dev/" + harddiskmanager.getCD(), "-dvd-compat" ]
			if self.project.size/(1024*1024) > self.project.MAX_SL:
				burnargs += [ "-use-the-force-luke=4gms", "-speed=1", "-R" ]
		elif output == "iso":
			tool = "genisoimage"
			self.name = _("Create DVD-ISO")
			isopathfile = getISOfilename(self.project.settings.isopath.value, volName)
			burnargs = [ "-o", isopathfile ]
		if self.project.settings.dataformat.value == "iso9660_1":
			burnargs += ["-iso-level", "1" ]
		elif self.project.settings.dataformat.value == "iso9660_4":
			burnargs += ["-iso-level", "4", "-allow-limited-size" ]
		elif self.project.settings.dataformat.value == "udf":
			burnargs += ["-udf", "-allow-limited-size" ]
		burnargs += [ "-publisher", "Dreambox", "-V", volName, "-follow-links", self.workspace ]
		BurnTask(self, burnargs, tool)
		RemoveDVDFolder(self)
 def update(self, dev="", action=""):
     self["space_label"].text = _("Please wait... Loading list...")
     self["info"].text = ""
     self["details"].setText("")
     self.Console = Console()
     cmd = "dvd+rw-mediainfo /dev/" + harddiskmanager.getCD()
     self.Console.ePopen(cmd, self.mediainfoCB)
 def __init__(self, job, extra_args=[]):
     Task.__init__(self, job, ("RW medium format"))
     self.toolbox = job.toolbox
     self.postconditions.append(DVDformatTaskPostcondition())
     self.setTool("dvd+rw-format")
     self.args += ["/dev/" + harddiskmanager.getCD()]
     self.end = 1100
     self.retryargs = []
Beispiel #20
0
	def hotplugCB(self, dev, media_state):
		if dev == harddiskmanager.getCD():
			if media_state == "1":
				from Components.Scanner import scanDevice
				devpath = harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD())
				self.cdAudioTrackFiles = []
				res = scanDevice(devpath)
				list = [ (r.description, r, res[r], self.session) for r in res ]
				if list:
					(desc, scanner, files, session) = list[0]
					for file in files:
						if file.mimetype == "audio/x-cda":
							self.cdAudioTrackFiles.append(file.path)
			else:
				self.cdAudioTrackFiles = []
				if self.isAudioCD:
					self.clear_playlist()
Beispiel #21
0
	def __init__(self, job, extra_args=[]):
		Task.__init__(self, job, ("RW medium format"))
		self.toolbox = job.toolbox
		self.postconditions.append(DVDformatTaskPostcondition())
		self.setTool("dvd+rw-format")
		self.args += [ "/dev/" + harddiskmanager.getCD() ]
		self.end = 1100
		self.retryargs = [ ]
Beispiel #22
0
	def hotplugCB(self, dev, media_state):
		if dev == harddiskmanager.getCD():
			if media_state == "1":
				from Components.Scanner import scanDevice
				devpath = harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD())
				self.cdAudioTrackFiles = []
				res = scanDevice(devpath)
				list = [(r.description, r, res[r], self.session) for r in res]
				if list:
					(desc, scanner, files, session) = list[0]
					for file in files:
						if file.mimetype == "audio/x-cda":
							self.cdAudioTrackFiles.append(file.path)
			else:
				self.cdAudioTrackFiles = []
				if self.isAudioCD:
					self.clear_playlist()
Beispiel #23
0
	def askLeavePlayer(self):
		choices = [(_("Exit"), "exit"), (_("Continue playing"), "play")]
		if True or not self.physicalDVD:
			choices.insert(1,(_("Return to file browser"), "browser"))
		if self.physicalDVD:
			cur = self.session.nav.getCurrentlyPlayingServiceReference()
			if cur and not cur.toString().endswith(harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD())):
			    choices.insert(0,(_("Play DVD"), "playPhysical" ))
		self.session.openWithCallback(self.exitCB, ChoiceBox, title=_("Leave DVD Player?"), list = choices)
Beispiel #24
0
	def askLeavePlayer(self):
		choices = [(_("Exit"), "exit"), (_("Continue playing"), "play")]
		if True or not self.physicalDVD:
			choices.insert(1,(_("Return to file browser"), "browser"))
		if self.physicalDVD:
			cur = self.session.nav.getCurrentlyPlayingServiceReference()
			if cur and not cur.toString().endswith(harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD())):
			    choices.insert(0,(_("Play DVD"), "playPhysical" ))
		self.session.openWithCallback(self.exitCB, ChoiceBox, title=_("Leave DVD Player?"), list = choices)
Beispiel #25
0
	def askLeavePlayer(self):
		if self.autoplay:
			self.exitCB((None,"exit"))
			return
		choices = [(_("Exit"), "exit"), (_("Continue playing"), "play")]
		if self.physicalDVD:
			cur = self.session.nav.getCurrentlyPlayingServiceOrGroup()
			if cur and not cur.toString().endswith(harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD())):
				choices.insert(0,(_("Play DVD"), "playPhysical"))
		self.session.openWithCallback(self.exitCB, ChoiceBox, title=_("Leave DVD player?"), list=choices)
Beispiel #26
0
	def askLeavePlayer(self):
		if self.autoplay:
			self.exitCB((None,"exit"))
			return
		choices = [(_("Exit"), "exit"), (_("Continue playing"), "play")]
		if self.physicalDVD:
			cur = self.session.nav.getCurrentlyPlayingServiceOrGroup()
			if cur and not cur.toString().endswith(harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD())):
				choices.insert(0,(_("Play DVD"), "playPhysical" ))
		self.session.openWithCallback(self.exitCB, ChoiceBox, title=_("Leave DVD player?"), list = choices)
Beispiel #27
0
def onPartitionChange(action, partition):
	print "[@] onPartitionChange", action, partition
	if partition != harddiskmanager.getCD():
		global detected_DVD
		if action == 'remove':
			print "[DVDplayer] DVD removed"
			detected_DVD = False
		elif action == 'add':
			print "[DVDplayer] DVD Inserted"
			detected_DVD = None
Beispiel #28
0
	def __init__(self, project, imagepath):
		Job.__init__(self, _("Burn DVD"))
		self.project = project
		self.menupreview = False
		from Tools.Directories import getSize
		if imagepath.endswith(".iso"):
			PreviewTask(self, imagepath)
			burnargs = [ "-Z", "/dev/" + harddiskmanager.getCD() + '='+imagepath, "-dvd-compat" ]
			if getSize(imagepath)/(1024*1024) > self.project.MAX_SL:
				burnargs += [ "-use-the-force-luke=4gms", "-speed=1", "-R" ]
		else:
			PreviewTask(self, imagepath + "/VIDEO_TS/")
			volName = self.project.settings.name.value
			burnargs = [ "-Z", "/dev/" + harddiskmanager.getCD(), "-dvd-compat" ]
			if getSize(imagepath)/(1024*1024) > self.project.MAX_SL:
				burnargs += [ "-use-the-force-luke=4gms", "-speed=1", "-R" ]
			burnargs += [ "-dvd-video", "-publisher", "Dreambox", "-V", volName, imagepath ]
		tool = "growisofs"
		BurnTask(self, burnargs, tool)
Beispiel #29
0
def onPartitionChange(action, partition):
    print "[@] onPartitionChange", action, partition
    if partition != harddiskmanager.getCD():
        global detected_DVD
        if action == 'remove':
            print "[@] DVD removed"
            detected_DVD = False
        elif action == 'add':
            print "[@] DVD Inserted"
            detected_DVD = None
Beispiel #30
0
 def __init__(self, project, imagepath):
     Job.__init__(self, _("Burn DVD"))
     self.project = project
     self.menupreview = False
     if imagepath.endswith(".iso"):
         PreviewTask(self, imagepath)
         burnargs = [
             "-Z", "/dev/" + harddiskmanager.getCD() + '=' + imagepath,
             "-dvd-compat"
         ]
     else:
         PreviewTask(self, imagepath + "/VIDEO_TS/")
         volName = self.project.settings.name.getValue()
         burnargs = ["-Z", "/dev/" + harddiskmanager.getCD(), "-dvd-compat"]
         burnargs += [
             "-dvd-video", "-publisher", "Dreambox", "-V", volName,
             imagepath
         ]
     tool = "/bin/growisofs"
     BurnTask(self, burnargs, tool)
Beispiel #31
0
    def conduct(self):
        CheckDiskspaceTask(self)
        if self.project.settings.authormode.getValue().startswith(
                "menu") or self.menupreview:
            Menus(self)
        if self.project.settings.titlesetmode.getValue() == "multi":
            CreateAuthoringXML_multiset(self)
        else:
            CreateAuthoringXML_singleset(self)

        DVDAuthorTask(self)

        nr_titles = len(self.project.titles)

        if self.menupreview:
            PreviewTask(self, self.workspace + "/dvd/VIDEO_TS/")
        else:
            for self.i in list(range(nr_titles)):
                self.title = self.project.titles[self.i]
                link_name = self.workspace + "/source_title_%d.ts" % (self.i +
                                                                      1)
                title_filename = self.workspace + "/dvd_title_%d.mpg" % (
                    self.i + 1)
                LinkTS(self, self.title.inputfile, link_name)
                demux = DemuxTask(self, link_name)
                self.mplextask = MplexTask(self,
                                           outputfile=title_filename,
                                           demux_task=demux)
                self.mplextask.end = self.estimateddvdsize
                RemoveESFiles(self, demux)
            WaitForResidentTasks(self)
            PreviewTask(self, self.workspace + "/dvd/VIDEO_TS/")
            output = self.project.settings.output.getValue()
            volName = self.project.settings.name.getValue()
            if output == "medium":
                self.name = _("Burn DVD")
                tool = "growisofs"
                burnargs = [
                    "-Z", "/dev/" + harddiskmanager.getCD(), "-dvd-compat"
                ]
                if self.project.size / (1024 * 1024) > self.project.MAX_SL:
                    burnargs += ["-use-the-force-luke=4gms", "-speed=1", "-R"]
            elif output == "iso":
                self.name = _("Create DVD-ISO")
                tool = "genisoimage"
                isopathfile = getISOfilename(
                    self.project.settings.isopath.getValue(), volName)
                burnargs = ["-o", isopathfile]
            burnargs += [
                "-dvd-video", "-publisher", "Dreambox", "-V", volName,
                self.workspace + "/dvd"
            ]
            BurnTask(self, burnargs, tool)
        RemoveWorkspaceFolder(self)
Beispiel #32
0
	def scanHotplug(self):
		devicepath = harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD())
		if pathExists(devicepath):
			from Components.Scanner import scanDevice
			res = scanDevice(devicepath)
			list = [ (r.description, r, res[r], self.session) for r in res ]
			if list:
				(desc, scanner, files, session) = list[0]
				for file in files:
					if file.mimetype == "video/x-dvd":
						print "[DVD] physical dvd found:", devicepath
						self.physicalDVD = True
						return
		self.physicalDVD = False
Beispiel #33
0
	def scanHotplug(self):
		devicepath = harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD())
		if pathExists(devicepath):
			from Components.Scanner import scanDevice
			res = scanDevice(devicepath)
			list = [ (r.description, r, res[r], self.session) for r in res ]
			if list:
				(desc, scanner, files, session) = list[0]
				for file in files:
					if file.mimetype == "video/x-dvd":
						print "[DVD] physical dvd found:", devicepath
						self.physicalDVD = True
						return
		self.physicalDVD = False
Beispiel #34
0
	def conduct(self):
		CheckDiskspaceTask(self)
		if self.project.settings.authormode.value.startswith("menu") or self.menupreview:
			Menus(self)
		if self.project.settings.titlesetmode.value == "multi":
			CreateAuthoringXML_multiset(self)
		else:
			CreateAuthoringXML_singleset(self)

		DVDAuthorTask(self)

		nr_titles = len(self.project.titles)

		if self.menupreview:
			PreviewTask(self, self.workspace + "/dvd/VIDEO_TS/")
		else:
			hasProjectX = os.path.exists('/usr/bin/projectx')
			print "[DVDJob] hasProjectX=", hasProjectX
			for self.i in range(nr_titles):
				self.title = self.project.titles[self.i]
				link_name =  self.workspace + "/source_title_%d.ts" % (self.i+1)
				title_filename = self.workspace + "/dvd_title_%d.mpg" % (self.i+1)
				LinkTS(self, self.title.inputfile, link_name)
				if not hasProjectX:
					ReplexTask(self, outputfile=title_filename, inputfile=link_name).end = self.estimateddvdsize
				else:
					demux = DemuxTask(self, link_name)
					self.mplextask = MplexTask(self, outputfile=title_filename, demux_task=demux)
					self.mplextask.end = self.estimateddvdsize
					RemoveESFiles(self, demux)
			WaitForResidentTasks(self)
			PreviewTask(self, self.workspace + "/dvd/VIDEO_TS/")
			output = self.project.settings.output.value
			volName = self.project.settings.name.value
			if output == "dvd":
				self.name = _("Burn DVD")
				tool = "growisofs"
				burnargs = [ "-Z", "/dev/" + harddiskmanager.getCD(), "-dvd-compat" ]
				if self.project.size/(1024*1024) > self.project.MAX_SL:
					burnargs += [ "-use-the-force-luke=4gms", "-speed=1", "-R" ]
			elif output == "iso":
				self.name = _("Create DVD-ISO")
				tool = "genisoimage"
				isopathfile = getISOfilename(self.project.settings.isopath.value, volName)
				burnargs = [ "-o", isopathfile ]
			burnargs += [ "-dvd-video", "-publisher", "Dreambox", "-V", volName, self.workspace + "/dvd" ]
			BurnTask(self, burnargs, tool)
		RemoveDVDFolder(self)
def menu(menuid, **kwargs):
	if menuid == "mainmenu":
		global detected_DVD
		if detected_DVD is None or detected_DVD:
			cd = harddiskmanager.getCD()
			if cd and (os.path.exists(os.path.join(harddiskmanager.getAutofsMountpoint(cd), "VIDEO_TS"))
					or os.path.exists(os.path.join(harddiskmanager.getAutofsMountpoint(cd), "video_ts"))):
				print("[DVDPlayer] Mountpoint is present and is", harddiskmanager.getAutofsMountpoint(cd))
				detected_DVD = True
			else:
				detected_DVD = False
			if onPartitionChange not in harddiskmanager.on_partition_list_change:
				harddiskmanager.on_partition_list_change.append(onPartitionChange)
		if detected_DVD:
			return [(_("DVD player"), play, "dvd_player", 46)]
	return []
Beispiel #36
0
def menu(menuid, **kwargs):
	if menuid == "mainmenu":
		global detected_DVD
		if detected_DVD is None or detected_DVD:
			cd = harddiskmanager.getCD()
			if cd and (os.path.exists(os.path.join(harddiskmanager.getAutofsMountpoint(cd), "VIDEO_TS"))
					or os.path.exists(os.path.join(harddiskmanager.getAutofsMountpoint(cd), "video_ts"))):
				print "[DVDplayer] Mountpoint is present and is", harddiskmanager.getAutofsMountpoint(cd)
				detected_DVD = True
			else:
				detected_DVD = False
			if onPartitionChange not in harddiskmanager.on_partition_list_change:
				harddiskmanager.on_partition_list_change.append(onPartitionChange)
		if detected_DVD:
			return [(_("DVD player"), play, "dvd_player", 46)]
	return []
Beispiel #37
0
def filescan_open(list, session, **kwargs):
	from Screens import DVD
	if len(list) == 1 and list[0].mimetype == "video/x-dvd":
		cd = harddiskmanager.getCD()
		if cd and (os.path.exists(os.path.join(harddiskmanager.getAutofsMountpoint(cd), "VIDEO_TS"))
				or os.path.exists(os.path.join(harddiskmanager.getAutofsMountpoint(cd), "video_ts"))):
			print "[DVDplayer] found device /dev/%s", " mount path ", harddiskmanager.getAutofsMountpoint(cd)
			session.open(DVD.DVDPlayer, dvd_device="/dev/%s" %(harddiskmanager.getAutofsMountpoint(cd)))
			return
	else:
		dvd_filelist = []
		for x in list:
			if x.mimetype == "video/x-dvd-iso":
				dvd_filelist.append(x.path)
			if x.mimetype == "video/x-dvd":
				dvd_filelist.append(x.path.rsplit('/',1)[0])
		session.open(DVD.DVDPlayer, dvd_filelist=dvd_filelist)
Beispiel #38
0
def filescan_open(list, session, **kwargs):
	from Screens import DVD
	if len(list) == 1 and list[0].mimetype == "video/x-dvd":
		cd = harddiskmanager.getCD()
		if cd and (os.path.exists(os.path.join(harddiskmanager.getAutofsMountpoint(cd), "VIDEO_TS"))
				or os.path.exists(os.path.join(harddiskmanager.getAutofsMountpoint(cd), "video_ts"))):
			print "[DVDplayer] found device /dev/%s", " mount path ", harddiskmanager.getAutofsMountpoint(cd)
			session.open(DVD.DVDPlayer, dvd_device="/dev/%s" %(harddiskmanager.getAutofsMountpoint(cd)))
			return
	else:
		dvd_filelist = []
		for x in list:
			if x.mimetype == "video/x-dvd-iso":
				dvd_filelist.append(x.path)
			if x.mimetype == "video/x-dvd":
				dvd_filelist.append(x.path.rsplit('/',1)[0])
		session.open(DVD.DVDPlayer, dvd_filelist=dvd_filelist)
Beispiel #39
0
 def askLeavePlayer(self):
     if self.autoplay:
         self.exitCB((None, 'exit'))
         return None
     else:
         choices = [(_('Exit'), 'exit'), (_('Continue playing'), 'play')]
         if self.physicalDVD:
             cur = self.session.nav.getCurrentlyPlayingServiceOrGroup()
             if cur and not cur.toString().endswith(
                     harddiskmanager.getAutofsMountpoint(
                         harddiskmanager.getCD())):
                 choices.insert(0, (_('Play DVD'), 'playPhysical'))
         self.session.openWithCallback(self.exitCB,
                                       ChoiceBox,
                                       title=_('Leave DVD player?'),
                                       list=choices)
         return None
Beispiel #40
0
	def conduct(self):
		CheckDiskspaceTask(self)
		if self.project.settings.authormode.getValue().startswith("menu") or self.menupreview:
			Menus(self)
		if self.project.settings.titlesetmode.getValue() == "multi":
			CreateAuthoringXML_multiset(self)
		else:
			CreateAuthoringXML_singleset(self)

		DVDAuthorTask(self)
		
		nr_titles = len(self.project.titles)

		if self.menupreview:
			PreviewTask(self, self.workspace + "/dvd/VIDEO_TS/")
		else:
			for self.i in range(nr_titles):
				self.title = self.project.titles[self.i]
				link_name =  self.workspace + "/source_title_%d.ts" % (self.i+1)
				title_filename = self.workspace + "/dvd_title_%d.mpg" % (self.i+1)
				LinkTS(self, self.title.inputfile, link_name)
				demux = DemuxTask(self, link_name)
				self.mplextask = MplexTask(self, outputfile=title_filename, demux_task=demux)
				self.mplextask.end = self.estimateddvdsize
				RemoveESFiles(self, demux)
			WaitForResidentTasks(self)
			PreviewTask(self, self.workspace + "/dvd/VIDEO_TS/")
			output = self.project.settings.output.getValue()
			volName = self.project.settings.name.getValue()
			if output == "dvd":
				self.name = _("Burn DVD")
				tool = "/bin/growisofs"
				burnargs = [ "-Z", "/dev/" + harddiskmanager.getCD(), "-dvd-compat" ]
			elif output == "iso":
				self.name = _("Create DVD-ISO")
				tool = "/usr/bin/mkisofs"
				isopathfile = getISOfilename(self.project.settings.isopath.getValue(), volName)
				burnargs = [ "-o", isopathfile ]
			burnargs += [ "-dvd-video", "-publisher", "Dreambox", "-V", volName, self.workspace + "/dvd" ]
			BurnTask(self, burnargs, tool)
		RemoveDVDFolder(self)
Beispiel #41
0
	def playPhysicalCB(self, answer):
		if answer == True:
			self.FileBrowserClosed(harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD()))
		else:
			self.session.openWithCallback(self.FileBrowserClosed, FileBrowser)
Beispiel #42
0
 def playPhysicalCB(self, answer):
     if answer:
         harddiskmanager.setDVDSpeed(harddiskmanager.getCD(), 1)
         self.FileBrowserClosed(
             harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD()))
Beispiel #43
0
 def askLeavePlayer(self):
     if self.autoplay:
         self.exitCB((None, 'exit'))
         return None
     else:
         choices = [(_('Exit'), 'exit'), (_('Continue playing'), 'play')]
         if self.physicalDVD:
             cur = self.session.nav.getCurrentlyPlayingServiceOrGroup()
             if cur and not cur.toString().endswith(harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD())):
                 choices.insert(0, (_('Play DVD'), 'playPhysical'))
         self.session.openWithCallback(self.exitCB, ChoiceBox, title=_('Leave DVD player?'), list=choices)
         return None
Beispiel #44
0
 def playPhysicalCB(self, answer):
     if answer:
         harddiskmanager.setDVDSpeed(harddiskmanager.getCD(), 1)
         self.FileBrowserClosed(harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD()))
Beispiel #45
0
def play(session, **kwargs):
	from Screens import DVD
	session.open(DVD.DVDPlayer, dvd_device=harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD()))
Beispiel #46
0
def play(session, **kwargs):
    from Screens import DVD
    session.open(DVD.DVDPlayer,
                 dvd_device=harddiskmanager.getAutofsMountpoint(
                     harddiskmanager.getCD()))