aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Output/waveout/outputwaveout.cpp
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2013-02-19 18:09:00 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2013-02-19 18:09:00 +0000
commit75c4eaf61e17e1a132498929f783964de134c7be (patch)
tree6d56eb4607c6dc153ef69153cc1537d1a4ae1382 /src/plugins/Output/waveout/outputwaveout.cpp
parentf4a87da830f5c2bd5b57fcc1e1e2de1b1b8eb120 (diff)
downloadqmmp-75c4eaf61e17e1a132498929f783964de134c7be.tar.gz
qmmp-75c4eaf61e17e1a132498929f783964de134c7be.tar.bz2
qmmp-75c4eaf61e17e1a132498929f783964de134c7be.zip
changed volume api
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@3266 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Output/waveout/outputwaveout.cpp')
-rw-r--r--src/plugins/Output/waveout/outputwaveout.cpp23
1 files changed, 10 insertions, 13 deletions
diff --git a/src/plugins/Output/waveout/outputwaveout.cpp b/src/plugins/Output/waveout/outputwaveout.cpp
index 504e82e9f..25791ff64 100644
--- a/src/plugins/Output/waveout/outputwaveout.cpp
+++ b/src/plugins/Output/waveout/outputwaveout.cpp
@@ -245,21 +245,18 @@ VolumeWaveOut::VolumeWaveOut()
VolumeWaveOut::~VolumeWaveOut()
{}
-void VolumeWaveOut::setVolume(int channel, int value)
+void VolumeWaveOut::setVolume(const VolumeSettings &vol)
{
- int l = (channel == Volume::LEFT_CHANNEL) ? value : (long)LOWORD(m_volume) * 100 / 0xFFFF;
- int r = (channel == Volume::RIGHT_CHANNEL) ? value : (long)HIWORD(m_volume) * 100 / 0xFFFF;
- m_volume = (r*0xFFFF/100 << 16) | l*0xFFFF/100;
- waveOutSetVolume(0, m_volume);
+ DWORD data = (vol.right*0xFFFF/100 << 16) | vol.left*0xFFFF/100;
+ waveOutSetVolume(0, data);
}
-int VolumeWaveOut::volume(int channel)
+VolumeSettings VolumeWaveOut::volume() const
{
- DWORD volume;
- waveOutGetVolume(0, (PDWORD)&volume);
- m_volume = volume;
- if(channel == Volume::LEFT_CHANNEL)
- return (long)LOWORD(volume) * 100 / 0xFFFF + 1;
- else
- return (long)HIWORD(volume) * 100 / 0xFFFF + 1;
+ VolumeSettings vol;
+ DWORD data;
+ waveOutGetVolume(0, (PDWORD)&data);
+ vol.left = (long)LOWORD(data) * 100 / 0xFFFF + 1;
+ vol.right = (long)HIWORD(data) * 100 / 0xFFFF + 1;
+ return vol;
}