Fix Volume

This commit is contained in:
Frank-74 2017-09-29 00:52:28 +01:00 committed by GitHub
parent 1dd7348e16
commit 72c7c2ffd1
1 changed files with 11 additions and 5 deletions

View File

@ -132,10 +132,16 @@ void DirectSoundDriver::SetFrequency(uint32_t Frequency)
void DirectSoundDriver::SetVolume(uint32_t Volume) void DirectSoundDriver::SetVolume(uint32_t Volume)
{ {
/*DWORD dsVolume = ((DWORD)Volume * -25); LPDIRECTSOUNDBUFFER & lpdsb = (LPDIRECTSOUNDBUFFER &)m_lpdsb;
if (Volume == 100) dsVolume = (DWORD)DSBVOLUME_MIN; int32_t dsVolume = - 10 ^ ((100 - Volume) * 33);
if (Volume == 0) dsVolume = DSBVOLUME_MAX; if (Volume == 0)
if (lpdsb != NULL) lpdsb->SetVolume(dsVolume);*/ {
dsVolume = DSBVOLUME_MIN;
}
if (lpdsb != NULL)
{
lpdsb->SetVolume(dsVolume);
}
} }
void DirectSoundDriver::SetSegmentSize(uint32_t length, uint32_t SampleRate) void DirectSoundDriver::SetSegmentSize(uint32_t length, uint32_t SampleRate)