if fileExists(x[1]):
TranscodingConfigList.append(x)
+ def getModel(self):
+ if fileExists("/proc/stb/info/vumodel"):
+ fd = open("/proc/stb/info/vumodel")
+ vumodel=fd.read().strip()
+ fd.close()
+ return vumodel
+ else:
+ return False
+
def createConfig(self):
config.plugins.transcodingsetup = ConfigSubsection()
config.plugins.transcodingsetup.transcoding = ConfigSelection(default = "disable", choices = [ ("enable", _("enable")), ("disable", _("disable"))] )
global TranscodingConfigList
for x in TranscodingConfigList:
if x[0] == "Bitrate":
- config.plugins.transcodingsetup.bitrate = ConfigInteger(default = 2000000, limits = (100000, 5000000))
+ if self.getModel() == "solo2":
+ config.plugins.transcodingsetup.bitrate = ConfigInteger(default = 400000, limits = (50000, 1000000))
+ else:
+ config.plugins.transcodingsetup.bitrate = ConfigInteger(default = 2000000, limits = (100000, 5000000))
x.append(config.plugins.transcodingsetup.bitrate)
elif x[0] == "Framerate":
- config.plugins.transcodingsetup.framerate = ConfigSelection(default = "30000", choices = [ ("23976", _("23976")), ("24000", _("24000")), ("29970", _("29970")), ("30000", _("30000")), ("59940", _("59940")), ("60000", _("60000"))])
+ config.plugins.transcodingsetup.framerate = ConfigSelection(default = "30000", choices = [ ("23976", _("23976")), ("24000", _("24000")), ("25000", _("25000")), ("29970", _("29970")), ("30000", _("30000")), ("50000", _("50000")), ("59940", _("59940")), ("60000", _("60000"))])
x.append(config.plugins.transcodingsetup.framerate)
def setTranscoding(self, transcoding, port):
if transcoding not in ["enable","disable"] or port not in ["8001","8002"]:
- print "Input error."
+# print "Input error."
return -7
if not fileExists("/proc/stb/encoder/enable"):
return -1
return res
def setEncoderEnable(self,mode = "disable"):
- print "<TranscodingSetup> set encoder %s" % mode
+# print "<TranscodingSetup> set encoder %s" % mode
mode = mode.strip(' ').strip('\n')
try:
fd = open("/proc/stb/encoder/enable",'r')
return -1
def setPort(self, port = "8001"):
- print "<TranscodingSetup> set port %s" % port
+# print "<TranscodingSetup> set port %s" % port
try:
fp = file('/etc/inetd.conf', 'r')
datas = fp.readlines()
def inetdRestart(self):
if fileExists("/etc/init.d/inetd"):
os_system("/etc/init.d/inetd restart")
+ elif fileExists("/etc/init.d/inetd.busybox"):
+ os_system("/etc/init.d/inetd.busybox restart")
def setEncoderExtra(self):
global TranscodingConfigList
return 0
def setEncoder(self, procPath, value):
- print "<TranscodingSetup> set %s "%procPath, value
+# print "<TranscodingSetup> set %s "%procPath, value
if not fileExists(procPath):
return -1
if isinstance(value, str):
old_value = fd.read().strip(' ').strip('\n')
fd.close()
if old_value != value:
+ print "<TranscodingSetup> set %s "%procPath, value
fd = open(procPath,'w')
fd.write(value)
fd.close()
class TranscodingSetup(Screen,ConfigListScreen, TranscodingSetupInit):
skin = """
- <screen position="center,center" size="400,270" title="Transcoding Setup" >
- <ePixmap pixmap="skin_default/buttons/red.png" position="30,10" size="140,40" alphatest="on" />
- <ePixmap pixmap="skin_default/buttons/green.png" position="230,10" size="140,40" alphatest="on" />
- <widget source="key_red" render="Label" position="30,10" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" foregroundColor="#ffffff" transparent="1" />
- <widget source="key_green" render="Label" position="230,10" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" foregroundColor="#ffffff" transparent="1" />
- <widget name="config" zPosition="2" position="5,70" size="390,70" scrollbarMode="showOnDemand" transparent="1" />
- <widget source="text" render="Label" position="20,140" size="370,130" font="Regular;18" halign="center" valign="center" />
- </screen>
- """
- skin_ext = """
- <screen position="center,center" size="400,320" title="Transcoding Setup" >
+ <screen position="center,center" size="540,320">
<ePixmap pixmap="skin_default/buttons/red.png" position="30,10" size="140,40" alphatest="on" />
- <ePixmap pixmap="skin_default/buttons/green.png" position="230,10" size="140,40" alphatest="on" />
+ <ePixmap pixmap="skin_default/buttons/green.png" position="200,10" size="140,40" alphatest="on" />
+ <ePixmap pixmap="skin_default/buttons/yellow.png" position="370,10" size="140,40" alphatest="on" />
<widget source="key_red" render="Label" position="30,10" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" foregroundColor="#ffffff" transparent="1" />
- <widget source="key_green" render="Label" position="230,10" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" foregroundColor="#ffffff" transparent="1" />
- <widget name="config" zPosition="2" position="5,70" size="390,120" scrollbarMode="showOnDemand" transparent="1" />
- <widget source="text" render="Label" position="20,190" size="370,130" font="Regular;18" halign="center" valign="center" />
+ <widget source="key_green" render="Label" position="200,10" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" foregroundColor="#ffffff" transparent="1" />
+ <widget source="key_yellow" render="Label" position="370,10" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#a08500" foregroundColor="#ffffff" transparent="1" />
+ <widget name="config" zPosition="2" position="20,70" size="500,120" scrollbarMode="showOnDemand" transparent="1" />
+ <widget source="text" render="Label" position="30,190" size="480,130" font="Regular;18" halign="center" valign="center" />
</screen>
"""
def __init__(self,session):
- if fileExists("/proc/stb/encoder/0/framerate"):
- self.skin = TranscodingSetup.skin_ext
- Screen.__init__(self,session)
- self.skinName = "TranscodingSetup_ext"
+ Screen.__init__(self,session)
+ self.setTitle(_("Transcoding Setup"))
+ TEXT = _("Transcoding can be started when there is no corresponding channel recordings.")
+ if self.getModel() == "solo2":
+ TEXT += _("\nWhen transcoding, both PIP and analog video outputs are disabled.")
else:
- Screen.__init__(self,session)
-
- if self.getModel() == "duo2":
- TEXT = _("Transcoding can be started when there is no corresponding channel recordings.")
TEXT += _("\nWhen transcoding, PIP is disabled.")
- else:
- TEXT = _("Transcoding can be started when there is no corresponding channel recordings.")
- TEXT += _("\nWhen transcoding, both PIP and analog video outputs are disabled.")
self.session = session
self["shortcuts"] = ActionMap(["ShortcutActions", "SetupActions" ],
{
"cancel": self.keyCancel,
"red": self.keyCancel,
"green": self.keySave,
+ "yellow" : self.KeyDefault,
}, -2)
self.list = []
ConfigListScreen.__init__(self, self.list,session = self.session)
self["key_red"] = StaticText(_("Cancel"))
self["key_green"] = StaticText(_("Ok"))
+ self["key_yellow"] = StaticText(_("Default"))
self["text"] = StaticText(_("%s")%TEXT)
self.createSetup()
self.onLayoutFinish.append(self.checkEncoder)
self.session.openWithCallback(self.close, MessageBox, _("OK. Encoder %s.")%transcoding, MessageBox.TYPE_INFO)
self.close()
+ def KeyDefault(self):
+ config.plugins.transcodingsetup.port.value = config.plugins.transcodingsetup.port.default
+ global TranscodingConfigList
+ for x in TranscodingConfigList:
+ if x[0] == "Bitrate":
+ config.plugins.transcodingsetup.bitrate.value = config.plugins.transcodingsetup.bitrate.default
+ elif x[0] == "Framerate":
+ config.plugins.transcodingsetup.framerate.value = config.plugins.transcodingsetup.framerate.default
+ self.createSetup()
+
def resetConfig(self):
for x in self["config"].list:
x[1].cancel()