]> git.sesse.net Git - vlc/commitdiff
Qt4 - Volume: set the slider maximum to 200, in order to match the OSD % of the volum...
authorJean-Baptiste Kempf <jb@videolan.org>
Sun, 9 Sep 2007 01:17:15 +0000 (01:17 +0000)
committerJean-Baptiste Kempf <jb@videolan.org>
Sun, 9 Sep 2007 01:17:15 +0000 (01:17 +0000)
However, I still don't understand whether the "normal" volume is 256 or 512 and when starts the "dangerous" amplification

modules/gui/qt4/components/interface_widgets.cpp
modules/gui/qt4/components/interface_widgets.hpp

index ba440d81ce009724a8e3dddb05f885d8c1042126..ae7941639c1235076292a18521f2bc374fad3e91 100644 (file)
@@ -487,7 +487,7 @@ ControlsWidget::ControlsWidget( intf_thread_t *_p_i, bool b_advControls ) :
     volumeSlider->setMaximumSize( QSize( 80, 200 ) );
     volumeSlider->setOrientation( Qt::Horizontal );
 
-    volumeSlider->setMaximum( 100 );
+    volumeSlider->setMaximum( VOLUME_MAX );
     volumeSlider->setFocusPolicy( Qt::NoFocus );
     controlLayout->addWidget( volMuteLabel, 3, 15 );
     controlLayout->addWidget( volumeSlider, 3, 16, 1, 2 );
@@ -558,13 +558,12 @@ void ControlsWidget::updateVolume( int i_sliderVolume )
 {
     if( !b_my_volume )
     {
-        int i_res = i_sliderVolume * AOUT_VOLUME_MAX /
-                            ( 2*volumeSlider->maximum() );
+        int i_res = i_sliderVolume  * (AOUT_VOLUME_MAX / 2) / VOLUME_MAX;
         aout_VolumeSet( p_intf, i_res );
     }
     if( i_sliderVolume == 0 )
         volMuteLabel->setPixmap( QPixmap(":/pixmaps/volume-muted.png" ) );
-    else if( i_sliderVolume < volumeSlider->maximum()/2 )
+    else if( i_sliderVolume < VOLUME_MAX / 2 )
         volMuteLabel->setPixmap( QPixmap( ":/pixmaps/volume-low.png" ) );
     else volMuteLabel->setPixmap( QPixmap( ":/pixmaps/volume-high.png" ) );
 }
@@ -574,7 +573,7 @@ void ControlsWidget::updateOnTimer()
     /* Audio part */
     audio_volume_t i_volume;
     aout_VolumeGet( p_intf, &i_volume );
-    i_volume = ( i_volume *  200 )/ AOUT_VOLUME_MAX ;
+    i_volume = ( i_volume *  VOLUME_MAX )/ (AOUT_VOLUME_MAX/2) ;
     int i_gauge = volumeSlider->value();
     b_my_volume = false;
     if( i_volume - i_gauge > 1 || i_gauge - i_volume > 1 )
index 0a57560b0ed4a077eb595e2ce14d6f4cc562b170..2ac1b59a31067d35e9f6670966a6e93b9dd83682 100644 (file)
@@ -34,6 +34,7 @@
 
 #include <QWidget>
 #include <QFrame>
+#define VOLUME_MAX 200
 
 class ResizeEvent;
 class QPalette;
@@ -125,6 +126,8 @@ private slots:
     void record();
 };
 
+
+
 class InputSlider;
 class QSlider;
 class QGridLayout;
@@ -188,7 +191,7 @@ public:
             aout_VolumeMute( p_intf, NULL );
             audio_volume_t i_volume;
             aout_VolumeGet( p_intf, &i_volume );
-            m->updateVolume( i_volume *  200 /AOUT_VOLUME_MAX );
+            m->updateVolume( i_volume *  VOLUME_MAX / (AOUT_VOLUME_MAX/2) );
             return true;
         }
         return false;