add isCurrentlSeekable to iPlayableService
[enigma2.git] / lib / dvb / volume.cpp
index ba03b520f995657b5c67c3cec064c0c5d38e61a5..9cfcf2ee65221bd70c6cd855c529bdfc4e38e2cb 100644 (file)
@@ -4,7 +4,6 @@
 #include <sys/ioctl.h>
 #include <unistd.h>
 
-#include <config.h>
 #if HAVE_DVB_API_VERSION < 3
 #define VIDEO_DEV "/dev/dvb/card0/video0"
 #define AUDIO_DEV "/dev/dvb/card0/audio0"
@@ -90,6 +89,17 @@ void eDVBVolumecontrol::setVolume(int left, int right)
                
                printf("Setvolume: %d %d\n", leftVol, rightVol);
                printf("Setvolume: %d %d\n", left, right);              
+               
+       //HACK?
+       FILE *f;
+       if((f = fopen("/proc/stb/avs/0/volume", "wb")) == NULL) {
+               printf("cannot open /proc/stb/avs/0/volume\n");
+               return;
+       }
+       
+       fprintf(f, "%d", left);
+
+       fclose(f);
 }
 
 int eDVBVolumecontrol::getVolume()
@@ -113,6 +123,17 @@ void eDVBVolumecontrol::volumeMute()
 #endif
        closeMixer(fd);
        muted = true;
+
+       //HACK?
+       FILE *f;
+       if((f = fopen("/proc/stb/audio/j1_mute", "wb")) == NULL) {
+               printf("cannot open /proc/stb/audio/j1_mute\n");
+               return;
+       }
+       
+       fprintf(f, "%d", 1);
+
+       fclose(f);
 }
 
 void eDVBVolumecontrol::volumeUnMute()
@@ -123,14 +144,23 @@ void eDVBVolumecontrol::volumeUnMute()
 #endif
        closeMixer(fd);
        muted = false;
+
+       //HACK?
+       FILE *f;
+       if((f = fopen("/proc/stb/audio/j1_mute", "wb")) == NULL) {
+               printf("cannot open /proc/stb/audio/j1_mute\n");
+               return;
+       }
+       
+       fprintf(f, "%d", 0);
+
+       fclose(f);
 }
 
 void eDVBVolumecontrol::volumeToggleMute()
 {
-       printf("Mute\n");
        if (isMuted())
                volumeUnMute();
        else
                volumeMute();
-               
-}
\ No newline at end of file
+}