From 45ed0e897cfa0a45bd1e609f0b6a551350ac1c3d Mon Sep 17 00:00:00 2001 From: acid-burn Date: Mon, 21 Sep 2009 12:30:43 +0200 Subject: [PATCH] Enigma2: add VideoEnhancement plugin to SystemPlugins to configure advanced video settings. Newest drivers needed. --- configure.ac | 2 + lib/python/Plugins/SystemPlugins/Makefile.am | 2 +- .../SystemPlugins/VideoEnhancement/LICENSE | 12 + .../VideoEnhancement/Makefile.am | 11 + .../VideoEnhancement/VideoEnhancement.py | 223 +++++++++ .../VideoEnhancement/__init__.py | 0 .../VideoEnhancement/meta/Makefile.am | 5 + .../meta/plugin_videoenhancement.xml | 27 ++ .../meta/videoenhancement.jpg | Bin 0 -> 134838 bytes .../SystemPlugins/VideoEnhancement/plugin.py | 426 ++++++++++++++++++ 10 files changed, 707 insertions(+), 1 deletion(-) create mode 100755 lib/python/Plugins/SystemPlugins/VideoEnhancement/LICENSE create mode 100755 lib/python/Plugins/SystemPlugins/VideoEnhancement/Makefile.am create mode 100755 lib/python/Plugins/SystemPlugins/VideoEnhancement/VideoEnhancement.py create mode 100755 lib/python/Plugins/SystemPlugins/VideoEnhancement/__init__.py create mode 100755 lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/Makefile.am create mode 100755 lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/plugin_videoenhancement.xml create mode 100755 lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/videoenhancement.jpg create mode 100755 lib/python/Plugins/SystemPlugins/VideoEnhancement/plugin.py diff --git a/configure.ac b/configure.ac index fea6a0dc..2b557fc2 100755 --- a/configure.ac +++ b/configure.ac @@ -167,6 +167,8 @@ lib/python/Plugins/SystemPlugins/SkinSelector/Makefile lib/python/Plugins/SystemPlugins/SkinSelector/meta/Makefile lib/python/Plugins/SystemPlugins/SoftwareManager/Makefile lib/python/Plugins/SystemPlugins/SoftwareManager/meta/Makefile +lib/python/Plugins/SystemPlugins/VideoEnhancement/Makefile +lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/Makefile lib/python/Plugins/SystemPlugins/VideoTune/Makefile lib/python/Plugins/SystemPlugins/VideoTune/meta/Makefile lib/python/Plugins/SystemPlugins/Videomode/Makefile diff --git a/lib/python/Plugins/SystemPlugins/Makefile.am b/lib/python/Plugins/SystemPlugins/Makefile.am index 6b78df02..db71c31e 100755 --- a/lib/python/Plugins/SystemPlugins/Makefile.am +++ b/lib/python/Plugins/SystemPlugins/Makefile.am @@ -3,7 +3,7 @@ installdir = $(pkglibdir)/python/Plugins/SystemPlugins SUBDIRS = SoftwareManager FrontprocessorUpgrade PositionerSetup Satfinder \ SkinSelector SatelliteEquipmentControl Videomode VideoTune Hotplug \ DefaultServicesScanner NFIFlash DiseqcTester CommonInterfaceAssignment \ - CrashlogAutoSubmit CleanupWizard + CrashlogAutoSubmit CleanupWizard VideoEnhancement install_PYTHON = \ __init__.py diff --git a/lib/python/Plugins/SystemPlugins/VideoEnhancement/LICENSE b/lib/python/Plugins/SystemPlugins/VideoEnhancement/LICENSE new file mode 100755 index 00000000..f8473e02 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/VideoEnhancement/LICENSE @@ -0,0 +1,12 @@ +This plugin is licensed under the Creative Commons +Attribution-NonCommercial-ShareAlike 3.0 Unported +License. To view a copy of this license, visit +http://creativecommons.org/licenses/by-nc-sa/3.0/ or send a letter to Creative +Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. + +Alternatively, this plugin may be distributed and executed on hardware which +is licensed by Dream Multimedia GmbH. + +This plugin is NOT free software. It is open source, you are allowed to +modify it (if you keep the license), but it may not be commercially +distributed other than under the conditions noted above. diff --git a/lib/python/Plugins/SystemPlugins/VideoEnhancement/Makefile.am b/lib/python/Plugins/SystemPlugins/VideoEnhancement/Makefile.am new file mode 100755 index 00000000..2b084d2d --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/VideoEnhancement/Makefile.am @@ -0,0 +1,11 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/VideoEnhancement + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py \ + VideoEnhancement.py + +dist_install_DATA = \ + LICENSE diff --git a/lib/python/Plugins/SystemPlugins/VideoEnhancement/VideoEnhancement.py b/lib/python/Plugins/SystemPlugins/VideoEnhancement/VideoEnhancement.py new file mode 100755 index 00000000..a9e8d57f --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/VideoEnhancement/VideoEnhancement.py @@ -0,0 +1,223 @@ +from enigma import eTimer +from Components.config import config, ConfigSubsection, ConfigSlider, ConfigSelection,ConfigYesNo +from Tools.CList import CList +from Tools.HardwareInfo import HardwareInfo +import os +# The "VideoEnhancement" is the interface to /proc/stb/vmpeg/0. + +class VideoEnhancement: + + firstRun = None + + def __init__(self): + self.last_modes_preferred = [ ] + self.on_hotplug = CList() + self.createConfig() + + def createConfig(self, *args): + hw_type = HardwareInfo().get_device_name() + config.pep = ConfigSubsection() + + def setContrast(config): + myval = int(config.value*256) + try: + print "--> setting contrast to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_contrast", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_contrast." + + if VideoEnhancement.firstRun is False: + self.setConfiguredValues() + + config.pep.contrast = ConfigSlider(default=128, limits=(0,256)) + config.pep.contrast.addNotifier(setContrast) + + def setSaturation(config): + myval = int(config.value*256) + try: + print "--> setting saturation to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_saturation", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_saturaion." + + if VideoEnhancement.firstRun is False: + self.setConfiguredValues() + + config.pep.saturation = ConfigSlider(default=128, limits=(0,256)) + config.pep.saturation.addNotifier(setSaturation) + + def setHue(config): + myval = int(config.value*256) + try: + print "--> setting hue to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_hue", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_hue." + + if VideoEnhancement.firstRun is False: + self.setConfiguredValues() + + config.pep.hue = ConfigSlider(default=128, limits=(0,256)) + config.pep.hue.addNotifier(setHue) + + def setBrightness(config): + myval = int(config.value*256) + try: + print "--> setting brightness to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_brightness", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_brightness." + + if VideoEnhancement.firstRun is False: + self.setConfiguredValues() + + config.pep.brightness = ConfigSlider(default=128, limits=(0,256)) + config.pep.brightness.addNotifier(setBrightness) + + if hw_type == 'dm8000': + def setSplitMode(config): + try: + print "--> setting splitmode to:",str(config.value) + open("/proc/stb/vmpeg/0/pep_split", "w").write(str(config.value)) + except IOError: + print "couldn't write pep_split." + + if VideoEnhancement.firstRun is False: + self.setConfiguredValues() + + config.pep.split = ConfigSelection(choices={ + "off": _("Off"), + "left": _("Left"), + "right": _("Right")}, + default = "off") + config.pep.split.addNotifier(setSplitMode) + + def setSharpness(config): + myval = int(config.value*256) + try: + print "--> setting sharpness to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_sharpness", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_sharpness." + + if VideoEnhancement.firstRun is False: + self.setConfiguredValues() + + config.pep.sharpness = ConfigSlider(default=0, limits=(0,256)) + config.pep.sharpness.addNotifier(setSharpness) + + def setAutoflesh(config): + myval = int(config.value) + try: + print "--> setting auto_flesh to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_auto_flesh", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_auto_flesh." + + if VideoEnhancement.firstRun is False: + self.setConfiguredValues() + + config.pep.auto_flesh = ConfigSlider(default=0, limits=(0,4)) + config.pep.auto_flesh.addNotifier(setAutoflesh) + + def setGreenboost(config): + myval = int(config.value) + try: + print "--> setting green_boost to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_green_boost", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_green_boost." + + if VideoEnhancement.firstRun is False: + self.setConfiguredValues() + + config.pep.green_boost = ConfigSlider(default=0, limits=(0,4)) + config.pep.green_boost.addNotifier(setGreenboost) + + def setBlueboost(config): + myval = int(config.value) + try: + print "--> setting blue_boost to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_blue_boost", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_blue_boost." + + if VideoEnhancement.firstRun is False: + self.setConfiguredValues() + + config.pep.blue_boost = ConfigSlider(default=0, limits=(0,4)) + config.pep.blue_boost.addNotifier(setBlueboost) + + def setBlock_noise_reduction(config): + myval = int(config.value) + try: + print "--> setting block_noise_reduction to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_block_noise_reduction", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_block_noise_reduction." + + if VideoEnhancement.firstRun is False: + self.setConfiguredValues() + + config.pep.block_noise_reduction = ConfigSlider(default=0, limits=(0,5)) + config.pep.block_noise_reduction.addNotifier(setBlock_noise_reduction) + + def setMosquito_noise_reduction(config): + myval = int(config.value) + try: + print "--> setting mosquito_noise_reduction to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_mosquito_noise_reduction", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_mosquito_noise_reduction." + + if VideoEnhancement.firstRun is False: + self.setConfiguredValues() + + config.pep.mosquito_noise_reduction = ConfigSlider(default=0, limits=(0,5)) + config.pep.mosquito_noise_reduction.addNotifier(setMosquito_noise_reduction) + + def setDigital_contour_removal(config): + myval = int(config.value) + try: + print "--> setting digital_contour_removal to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_digital_contour_removal", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_digital_contour_removal." + + if VideoEnhancement.firstRun is False: + self.setConfiguredValues() + + config.pep.digital_contour_removal = ConfigSlider(default=0, limits=(0,5)) + config.pep.digital_contour_removal.addNotifier(setDigital_contour_removal) + + def setDynamic_contrast(config): + myval = int(config.value) + try: + print "--> setting dynamic_contrast to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_dynamic_contrast", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_dynamic_contrast." + + if VideoEnhancement.firstRun is False: + self.setConfiguredValues() + + config.pep.dynamic_contrast = ConfigSlider(default=0, limits=(0,256)) + config.pep.dynamic_contrast.addNotifier(setDynamic_contrast) + + VideoEnhancement.firstRun = True + + def setConfiguredValues(self): + try: + print "--> applying pep values" + open("/proc/stb/vmpeg/0/pep_apply", "w").write("1") + VideoEnhancement.firstRun = False + except IOError: + print "couldn't apply pep values." + + +if config.usage.setup_level.index >= 2: # expert+ + hw_type = HardwareInfo().get_device_name() + if hw_type == 'dm8000' or hw_type == 'dm800': + video_enhancement = VideoEnhancement() + if video_enhancement.firstRun == True: + video_enhancement.setConfiguredValues() diff --git a/lib/python/Plugins/SystemPlugins/VideoEnhancement/__init__.py b/lib/python/Plugins/SystemPlugins/VideoEnhancement/__init__.py new file mode 100755 index 00000000..e69de29b diff --git a/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/Makefile.am b/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/Makefile.am new file mode 100755 index 00000000..9e248084 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta/ + +dist_install_DATA = plugin_videoenhancement.xml + +EXTRA_DIST = videoenhancement.jpg diff --git a/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/plugin_videoenhancement.xml b/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/plugin_videoenhancement.xml new file mode 100755 index 00000000..33b222ef --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/plugin_videoenhancement.xml @@ -0,0 +1,27 @@ + + + + + + + Dream Multimedia + VideoEnhancement + enigma2-plugin-systemplugins-videoenhancement + VideoEnhancement provides advanced video enhancement settings. + The VideoEnhancement extension provides advanced video enhancement settings. + + + + Dream Multimedia + VideoEnhancement + enigma2-plugin-systemplugins-videoenhancement + Videomode bietet erweiterte Video Konfigurationsoptionen. + Die Videomode-Erweiterung bietet erweiterte Video Konfigurationsoptionen. + + + + + + + + diff --git a/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/videoenhancement.jpg b/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/videoenhancement.jpg new file mode 100755 index 0000000000000000000000000000000000000000..0e0ef6fc78e870676ab86b618bf5184e2b968ad8 GIT binary patch literal 134838 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 + + + + + + + + + + + + + """ + + def __init__(self, session, hw): + Screen.__init__(self, session) + + self.session = session + self.hw = hw + self.onChangedEntry = [ ] + self.setup_title = "Videoenhancement" + + self.contrastEntry = None + self.saturationEntry = None + self.hueEntry = None + self.brightnessEntry = None + self.splitEntry = None + self.sharpnessEntry = None + self.auto_fleshEntry = None + self.green_boostEntry = None + self.blue_boostEntry = None + self.block_noise_reductionEntry = None + self.mosquito_noise_reductionEntry = None + self.digital_contour_removalEntry = None + self.dynamic_contrastEntry = None + + # handle hotplug by re-creating setup + self.onShow.append(self.startHotplug) + self.onHide.append(self.stopHotplug) + + self.list = [ ] + self.xtdlist = [ ] + self.hw_type = HardwareInfo().get_device_name() + ConfigListScreen.__init__(self, self.list, session = self.session, on_change = self.changedEntry) + + self["actions"] = ActionMap(["SetupActions", "ColorActions"], + { + "cancel": self.keyCancel, + "save": self.apply, + "yellow": self.keyYellow, + "blue": self.keyBlue, + }, -2) + + self["key_red"] = Button(_("Cancel")) + self["key_green"] = Button(_("OK")) + self["key_yellow"] = Button(_("Last config")) + self["key_blue"] = Button(_("Default")) + self["introduction"] = Label() + + self.createSetup() + self.rememberOldSettings() + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(_("Video enhancement setup")) + + def startHotplug(self): + self.hw.on_hotplug.append(self.createSetup) + + def stopHotplug(self): + self.hw.on_hotplug.remove(self.createSetup) + + def rememberOldSettings(self): + self.oldContrast = config.pep.contrast.value + self.oldSaturation = config.pep.saturation.value + self.oldHue = config.pep.hue.value + self.oldBrightness = config.pep.brightness.value + if self.hw_type == 'dm8000': + self.oldSplit = config.pep.split.value + self.oldSharpness = config.pep.sharpness.value + self.oldAuto_flesh = config.pep.auto_flesh.value + self.oldGreen_boost = config.pep.green_boost.value + self.oldBlue_boost = config.pep.blue_boost.value + self.oldBlock_noise = config.pep.block_noise_reduction.value + self.oldMosquito_noise = config.pep.mosquito_noise_reduction.value + self.oldDigital_contour = config.pep.digital_contour_removal.value + self.oldDynamic_contrast = config.pep.dynamic_contrast.value + + def createSetup(self): + self.contrastEntry = getConfigListEntry(_("Contrast"), config.pep.contrast) + self.saturationEntry = getConfigListEntry(_("Saturation"), config.pep.saturation) + self.hueEntry = getConfigListEntry(_("Hue"), config.pep.hue) + self.brightnessEntry = getConfigListEntry(_("Brightness"), config.pep.brightness) + + self.list = [ + self.contrastEntry + ] + + self.list.extend(( + self.saturationEntry, + self.hueEntry, + self.brightnessEntry + )) + if self.hw_type == 'dm8000': + self.splitEntry = getConfigListEntry(_("Split preview mode"), config.pep.split) + self.sharpnessEntry = getConfigListEntry(_("Sharpness"), config.pep.sharpness) + self.auto_fleshEntry = getConfigListEntry(_("Auto flesh"), config.pep.auto_flesh) + self.green_boostEntry = getConfigListEntry(_("Green boost"), config.pep.green_boost) + self.blue_boostEntry = getConfigListEntry(_("Blue boost"), config.pep.blue_boost) + self.block_noise_reductionEntry = getConfigListEntry(_("Block noise reduction"), config.pep.block_noise_reduction) + self.mosquito_noise_reductionEntry = getConfigListEntry(_("Mosquito noise reduction"), config.pep.mosquito_noise_reduction) + self.digital_contour_removalEntry = getConfigListEntry(_("Digital contour removal"), config.pep.digital_contour_removal) + self.dynamic_contrastEntry = getConfigListEntry(_("Dynamic contrast"), config.pep.dynamic_contrast) + + self.xtdlist = [ + self.splitEntry + ] + + self.xtdlist.extend(( + self.sharpnessEntry, + self.auto_fleshEntry, + self.green_boostEntry, + self.blue_boostEntry, + self.block_noise_reductionEntry, + self.mosquito_noise_reductionEntry, + self.digital_contour_removalEntry, + self.dynamic_contrastEntry + )) + + self.list.extend(( + self.splitEntry, + self.sharpnessEntry, + self.auto_fleshEntry, + self.green_boostEntry, + self.blue_boostEntry, + self.block_noise_reductionEntry, + self.mosquito_noise_reductionEntry, + self.digital_contour_removalEntry, + self.dynamic_contrastEntry + )) + + self["config"].list = self.list + self["config"].l.setSeperation(300) + self["config"].l.setList(self.list) + if not self.selectionChanged in self["config"].onSelectionChanged: + self["config"].onSelectionChanged.append(self.selectionChanged) + self.selectionChanged() + + def selectionChanged(self): + self["introduction"].setText(_("Current value: ") + self.getCurrentValue()) + + def PreviewClosed(self): + self["config"].invalidate(self["config"].getCurrent()) + self.createSetup() + + def keyLeft(self): + current = self["config"].getCurrent() + if current == self.splitEntry: + ConfigListScreen.keyLeft(self) + self.createSetup() + elif current != self.splitEntry and current in self.xtdlist: + self.previewlist = [ + current, + self.splitEntry + ] + self.session.openWithCallback(self.PreviewClosed, VideoEnhancementPreview, configEntry = self.previewlist, oldSplitMode = config.pep.split.value) + else: + self.previewlist = [ + current + ] + self.session.openWithCallback(self.PreviewClosed, VideoEnhancementPreview, configEntry = self.previewlist) + + def keyRight(self): + current = self["config"].getCurrent() + if current == self.splitEntry: + ConfigListScreen.keyRight(self) + self.createSetup() + elif current != self.splitEntry and current in self.xtdlist: + self.previewlist = [ + current, + self.splitEntry + ] + self.session.openWithCallback(self.PreviewClosed, VideoEnhancementPreview, configEntry = self.previewlist, oldSplitMode = config.pep.split.value ) + else: + self.previewlist = [ + current + ] + self.session.openWithCallback(self.PreviewClosed, VideoEnhancementPreview, configEntry = self.previewlist) + + def confirm(self, confirmed): + if not confirmed: + print "not confirmed" + else: + if self.splitEntry is not None: + config.pep.split.setValue('off') + self.keySave() + + def apply(self): + self.session.openWithCallback(self.confirm, MessageBox, _("Use this video enhancement settings?"), MessageBox.TYPE_YESNO, timeout = 20, default = False) + + def cancelConfirm(self, result): + if not result: + return + self.keyYellowConfirm(True) + self.close() + + def keyCancel(self): + if self["config"].isChanged(): + self.session.openWithCallback(self.cancelConfirm, MessageBox, _("Really close without saving settings?")) + else: + self.close() + + def keyYellowConfirm(self, confirmed): + if not confirmed: + print "not confirmed" + else: + if self.contrastEntry is not None: + config.pep.contrast.setValue(self.oldContrast) + if self.saturationEntry is not None: + config.pep.saturation.setValue(self.oldSaturation) + if self.hueEntry is not None: + config.pep.hue.setValue(self.oldHue) + if self.brightnessEntry is not None: + config.pep.brightness.setValue(self.oldBrightness) + + if self.hw_type == 'dm8000': + if self.splitEntry is not None: + config.pep.split.setValue('off') + if self.sharpnessEntry is not None: + config.pep.sharpness.setValue(self.oldSharpness) + if self.auto_fleshEntry is not None: + config.pep.auto_flesh.setValue(self.oldAuto_flesh) + if self.green_boostEntry is not None: + config.pep.green_boost.setValue(self.oldGreen_boost) + if self.blue_boostEntry is not None: + config.pep.blue_boost.setValue(self.oldBlue_boost) + if self.block_noise_reductionEntry is not None: + config.pep.block_noise_reduction.setValue(self.oldBlock_noise) + if self.mosquito_noise_reductionEntry is not None: + config.pep.mosquito_noise_reduction.setValue(self.oldMosquito_noise) + if self.digital_contour_removalEntry is not None: + config.pep.digital_contour_removal.setValue(self.oldDigital_contour) + if self.dynamic_contrastEntry is not None: + config.pep.dynamic_contrast.setValue(self.oldDynamic_contrast) + self.keySave() + + def keyYellow(self): + self.session.openWithCallback(self.keyYellowConfirm, MessageBox, _("Reset video enhancement settings to your last configuration?"), MessageBox.TYPE_YESNO, timeout = 20, default = False) + + def keyBlueConfirm(self, confirmed): + if not confirmed: + print "not confirmed" + else: + if self.contrastEntry is not None: + config.pep.contrast.setValue(128) + if self.saturationEntry is not None: + config.pep.saturation.setValue(128) + if self.hueEntry is not None: + config.pep.hue.setValue(128) + if self.brightnessEntry is not None: + config.pep.brightness.setValue(128) + + if self.hw_type == 'dm8000': + if self.splitEntry is not None: + config.pep.split.setValue('off') + if self.sharpnessEntry is not None: + config.pep.sharpness.setValue(0) + if self.auto_fleshEntry is not None: + config.pep.auto_flesh.setValue(0) + if self.green_boostEntry is not None: + config.pep.green_boost.setValue(0) + if self.blue_boostEntry is not None: + config.pep.blue_boost.setValue(0) + if self.block_noise_reductionEntry is not None: + config.pep.block_noise_reduction.setValue(0) + if self.mosquito_noise_reductionEntry is not None: + config.pep.mosquito_noise_reduction.setValue(0) + if self.digital_contour_removalEntry is not None: + config.pep.digital_contour_removal.setValue(0) + if self.dynamic_contrastEntry is not None: + config.pep.dynamic_contrast.setValue(0) + self.keySave() + + def keyBlue(self): + self.session.openWithCallback(self.keyBlueConfirm, MessageBox, _("Reset video enhancement settings to system defaults?"), MessageBox.TYPE_YESNO, timeout = 20, default = False) + + # for summary: + def changedEntry(self): + for x in self.onChangedEntry: + x() + + def getCurrentEntry(self): + return self["config"].getCurrent()[0] + + def getCurrentValue(self): + return str(self["config"].getCurrent()[1].getText()) + + def createSummary(self): + from Screens.Setup import SetupSummary + return SetupSummary + + +class VideoEnhancementPreview(Screen, ConfigListScreen): + + skin = """ + + + + + + + """ + + def __init__(self, session, configEntry = None, oldSplitMode = None): + Screen.__init__(self, session) + + self.onChangedEntry = [ ] + self.setup_title = "Videoenhancement" + self.oldSplitMode = oldSplitMode + + self.list = [ ] + self.configEntry = configEntry + ConfigListScreen.__init__(self, self.list, session = session, on_change = self.changedEntry) + + self["actions"] = ActionMap(["SetupActions"], + { + "cancel": self.keyCancel, + "save": self.keySave, + }, -2) + + self["key_red"] = Button(_("Cancel")) + self["key_green"] = Button(_("OK")) + + self.createSetup() + + def createSetup(self): + self.list = [ ] + if self.configEntry is not None: + self.list = self.configEntry + self["config"].list = self.list + self["config"].l.setSeperation(300) + self["config"].l.setList(self.list) + + def keyLeft(self): + ConfigListScreen.keyLeft(self) + self.createSetup() + + def keyRight(self): + ConfigListScreen.keyRight(self) + self.createSetup() + + def keySave(self): + if self.oldSplitMode is not None: + currentSplitMode = config.pep.split.value + if self.oldSplitMode == 'off' and currentSplitMode != 'off': + config.pep.split.setValue('off') + else: + pass + self.close() + + def keyCancel(self): + for x in self["config"].list: + x[1].cancel() + if self.oldSplitMode is not None: + currentSplitMode = config.pep.split.value + if self.oldSplitMode == 'off' and currentSplitMode != 'off': + config.pep.split.setValue('off') + else: + pass + self.close() + + # for summary: + def changedEntry(self): + for x in self.onChangedEntry: + x() + + def getCurrentEntry(self): + return self["config"].getCurrent()[0] + + def getCurrentValue(self): + return str(self["config"].getCurrent()[1].getText()) + + def createSummary(self): + from Screens.Setup import SetupSummary + return SetupSummary + + +def videoEnhancementSetupMain(session, **kwargs): + session.open(VideoEnhancementSetup, video_enhancement) + + +def startSetup(menuid): + if menuid != "system": + return [ ] + + return [(_("Video enhancement settings") , videoEnhancementSetupMain, "videoenhancement_setup", 41)] + + +def Plugins(**kwargs): + list = [] + if config.usage.setup_level.index >= 2: # expert+ + hw_type = HardwareInfo().get_device_name() + if hw_type == 'dm8000' or hw_type == 'dm800': + if (os.path.exists("/proc/stb/vmpeg/0/pep_apply") == True): + list.append(PluginDescriptor(name=_("Videoenhancement Setup"), description=_("Advanced Video Enhancement Setup"), where = PluginDescriptor.WHERE_MENU, fnc=startSetup)) + return list -- 2.30.2