fix slowblank
authorFelix Domke <tmbinc@elitedvb.net>
Wed, 8 Feb 2006 01:09:01 +0000 (01:09 +0000)
committerFelix Domke <tmbinc@elitedvb.net>
Wed, 8 Feb 2006 01:09:01 +0000 (01:09 +0000)
lib/driver/avswitch.cpp
lib/driver/avswitch.h
lib/python/Components/AVSwitch.py

index 2556ab0..12a8f7d 100644 (file)
@@ -150,5 +150,17 @@ void eAVSwitch::setVideomode(int mode)
        close(fd);
 }
 
+void eAVSwitch::setSlowblank(int val)
+{
+       int fd;
+       if((fd = open("/proc/stb/avs/0/sb", O_WRONLY)) < 0) {
+               printf("cannot open /proc/stb/avs/0/sb\n");
+               return;
+       }
+       const char *s = val ? "auto" : "vcr";
+       write(fd, s, strlen(s));
+       close(fd);
+}
+
 //FIXME: correct "run/startlevel"
 eAutoInitP0<eAVSwitch> init_avswitch(eAutoInitNumbers::rc, "AVSwitch Driver");
index d765e02..ea45131 100644 (file)
@@ -21,7 +21,7 @@ public:
        void setAspectRatio(int ratio);
        void setVideomode(int mode);
        void setInput(int val);
-
+       void setSlowblank(int val); // 1: on, 0: off
 };
 
 #endif
index b36dc4a..d98f411 100644 (file)
@@ -3,7 +3,7 @@ import os
 from enigma import *
 
 class AVSwitch:
-       INPUT = { "ENCODER": 0, "SCART": 1, "AUX": 2 }
+       INPUT = { "ENCODER": (0, 1), "SCART": (1, 0), "AUX": (2, 1) }
        def __init__(self):
                pass
 
@@ -38,7 +38,8 @@ class AVSwitch:
                self.checkWSS()
        
        def setInput(self, input):
-               eAVSwitch.getInstance().setInput(self.INPUT[input])
+               eAVSwitch.getInstance().setInput(self.INPUT[input][0])
+               eAVSwitch.getInstance().setSlowblank(self.INPUT[input][1])
                # FIXME why do we have to reset the colorformat? bug in avs-driver?
                eAVSwitch.getInstance().setColorFormat(config.av.colorformat.value)