mirror of https://github.com/OpenTTD/OpenTTD
Fix #7189: Fluidsynth volume gain too high
parent
6733b71300
commit
8a6e03c4d2
|
@ -149,7 +149,11 @@ bool MusicDriver_FluidSynth::IsSongPlaying()
|
||||||
void MusicDriver_FluidSynth::SetVolume(byte vol)
|
void MusicDriver_FluidSynth::SetVolume(byte vol)
|
||||||
{
|
{
|
||||||
/* Allowed range of synth.gain is 0.0 to 10.0 */
|
/* Allowed range of synth.gain is 0.0 to 10.0 */
|
||||||
if (fluid_settings_setnum(_midi.settings, "synth.gain", 1.0 * vol / 128.0) != 1) {
|
/* fluidsynth's default gain is 0.2, so use this as "full
|
||||||
|
* volume". Set gain using OpenTTD's volume, as a number between 0
|
||||||
|
* and 0.2. */
|
||||||
|
double gain = (1.0 * vol) / (128.0 * 5.0);
|
||||||
|
if (fluid_settings_setnum(_midi.settings, "synth.gain", gain) != 1) {
|
||||||
DEBUG(driver, 0, "Could not set volume");
|
DEBUG(driver, 0, "Could not set volume");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue