use PercentToGain to format up the volume sliders appropriately
authorJonathan Marshall <jmarshall@never.you.mind>
Sat, 26 May 2012 02:20:14 +0000 (14:20 +1200)
committerJonathan Marshall <jmarshall@never.you.mind>
Sat, 26 May 2012 03:54:40 +0000 (15:54 +1200)
xbmc/GUIInfoManager.cpp
xbmc/video/dialogs/GUIDialogAudioSubtitleSettings.cpp
xbmc/video/dialogs/GUIDialogAudioSubtitleSettings.h

index e381b5d..a9578bd 100644 (file)
@@ -75,6 +75,7 @@
 #include "addons/AddonManager.h"
 #include "interfaces/info/InfoBool.h"
 #include "TextureCache.h"
+#include "cores/AudioEngine/Utils/AEUtil.h"
 
 #define SYSHEATUPDATEINTERVAL 60000
 
@@ -1146,7 +1147,7 @@ CStdString CGUIInfoManager::GetLabel(int info, int contextWindow, CStdString *fa
     strLabel.Format("%02.2f", m_fps);
     break;
   case PLAYER_VOLUME:
-    strLabel.Format("%2.1f dB", g_settings.m_fVolumeLevel);
+    strLabel.Format("%2.1f dB", CAEUtil::PercentToGain(g_settings.m_fVolumeLevel));
     break;
   case PLAYER_SUBTITLE_DELAY:
     strLabel.Format("%2.3f s", g_settings.m_currentVideoSettings.m_SubtitleDelay);
index 3d707a7..def694f 100644 (file)
@@ -37,6 +37,7 @@
 #include "settings/Settings.h"
 #include "settings/GUISettings.h"
 #include "guilib/LocalizeStrings.h"
+#include "cores/AudioEngine/Utils/AEUtil.h"
 
 using namespace std;
 using namespace XFILE;
@@ -76,7 +77,7 @@ void CGUIDialogAudioSubtitleSettings::CreateSettings()
   m_settings.clear();
   // create our settings
   m_volume = g_settings.m_fVolumeLevel;
-  AddSlider(AUDIO_SETTINGS_VOLUME, 13376, &m_volume, VOLUME_MINIMUM, VOLUME_MAXIMUM / 100.0f, VOLUME_MAXIMUM, FormatDecibel, false);
+  AddSlider(AUDIO_SETTINGS_VOLUME, 13376, &m_volume, VOLUME_MINIMUM, VOLUME_MAXIMUM / 100.0f, VOLUME_MAXIMUM, PercentAsDecibel, false);
   AddSlider(AUDIO_SETTINGS_VOLUME_AMPLIFICATION, 660, &g_settings.m_currentVideoSettings.m_VolumeAmplification, VOLUME_DRC_MINIMUM * 0.01f, (VOLUME_DRC_MAXIMUM - VOLUME_DRC_MINIMUM) / 6000.0f, VOLUME_DRC_MAXIMUM * 0.01f, FormatDecibel, false);
   if (g_application.m_pPlayer && g_application.m_pPlayer->IsPassthrough())
   {
@@ -364,6 +365,13 @@ void CGUIDialogAudioSubtitleSettings::FrameMove()
   CGUIDialogSettings::FrameMove();
 }
 
+CStdString CGUIDialogAudioSubtitleSettings::PercentAsDecibel(float value, float interval)
+{
+  CStdString text;
+  text.Format("%2.1f dB", CAEUtil::PercentToGain(value));
+  return text;
+}
+
 CStdString CGUIDialogAudioSubtitleSettings::FormatDecibel(float value, float interval)
 {
   CStdString text;
index 5ee08cb..a15bb83 100644 (file)
@@ -31,6 +31,7 @@ public:
   virtual ~CGUIDialogAudioSubtitleSettings(void);
   virtual void FrameMove();
 
+  static CStdString PercentAsDecibel(float value, float minimum);
   static CStdString FormatDelay(float value, float minimum);
   static CStdString FormatDecibel(float value, float minimum);