1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-06 06:32:56 +01:00

Rename our version of SDL_MIX_MAXVOLUME to MIXER_VOLUME_MAX

Keep an assert to make sure its the same as SDL in the mixer. If SDL changes it, we can either change ours or convert the number proportionally.
This commit is contained in:
Ted John
2017-06-10 16:39:12 +01:00
parent abb857e51d
commit 47e6f1d139
6 changed files with 13 additions and 10 deletions

View File

@@ -54,7 +54,7 @@ namespace OpenRCT2 { namespace Audio
AudioChannelImpl()
{
SetRate(1);
SetVolume(SDL_MIX_MAXVOLUME);
SetVolume(MIXER_VOLUME_MAX);
SetPan(0.5f);
}
@@ -165,7 +165,7 @@ namespace OpenRCT2 { namespace Audio
void SetVolume(sint32 volume) override
{
_volume = Math::Clamp(0, volume, SDL_MIX_MAXVOLUME);
_volume = Math::Clamp(0, volume, MIXER_VOLUME_MAX);
}
float GetPan() const override

View File

@@ -444,7 +444,7 @@ namespace OpenRCT2 { namespace Audio
if (startVolume != endVolume)
{
// Set to max since we are adjusting the volume ourselves
mixVolume = SDL_MIX_MAXVOLUME;
mixVolume = MIXER_VOLUME_MAX;
// Fade between volume levels to smooth out sound and minimize clicks from sudden volume changes
sint32 fadeLength = (sint32)len / _format.BytesPerSample();
@@ -494,6 +494,8 @@ namespace OpenRCT2 { namespace Audio
static void EffectFadeS16(sint16 * data, sint32 length, sint32 startvolume, sint32 endvolume)
{
static_assert(SDL_MIX_MAXVOLUME == MIXER_VOLUME_MAX, "Max volume differs between OpenRCT2 and SDL2");
float startvolume_f = (float)startvolume / SDL_MIX_MAXVOLUME;
float endvolume_f = (float)endvolume / SDL_MIX_MAXVOLUME;
for (sint32 i = 0; i < length; i++)
@@ -505,6 +507,8 @@ namespace OpenRCT2 { namespace Audio
static void EffectFadeU8(uint8* data, sint32 length, sint32 startvolume, sint32 endvolume)
{
static_assert(SDL_MIX_MAXVOLUME == MIXER_VOLUME_MAX, "Max volume differs between OpenRCT2 and SDL2");
float startvolume_f = (float)startvolume / SDL_MIX_MAXVOLUME;
float endvolume_f = (float)endvolume / SDL_MIX_MAXVOLUME;
for (sint32 i = 0; i < length; i++)

View File

@@ -167,7 +167,7 @@ void Mixer_SetVolume(float volume)
sint32 DStoMixerVolume(sint32 volume)
{
return (sint32)(SDL_MIX_MAXVOLUME * (std::pow(10.0f, (float)volume / 2000)));
return (sint32)(MIXER_VOLUME_MAX * (std::pow(10.0f, (float)volume / 2000)));
}
float DStoMixerPan(sint32 pan)

View File

@@ -18,8 +18,7 @@
#include "../common.h"
#define SDL_MIX_MAXVOLUME 128
#define MIXER_VOLUME_MAX 128
#define MIXER_LOOP_NONE 0
#define MIXER_LOOP_INFINITE -1

View File

@@ -212,7 +212,7 @@ void chat_history_add(const char * src)
free(buffer);
Mixer_Play_Effect(SOUND_NEWS_ITEM, 0, SDL_MIX_MAXVOLUME, 0, 1.5f, true);
Mixer_Play_Effect(SOUND_NEWS_ITEM, 0, MIXER_VOLUME_MAX, 0, 1.5f, true);
}
void chat_input(CHAT_INPUT input)

View File

@@ -60,7 +60,7 @@ void intro_update()
_introStateCounter = -580;
// Play the chain lift sound
_soundChannel = Mixer_Play_Effect(SOUND_LIFT_7, MIXER_LOOP_INFINITE, SDL_MIX_MAXVOLUME, 0.5f, 1, true);
_soundChannel = Mixer_Play_Effect(SOUND_LIFT_7, MIXER_LOOP_INFINITE, MIXER_VOLUME_MAX, 0.5f, 1, true);
_chainLiftFinished = false;
gIntroState++;
break;
@@ -95,7 +95,7 @@ void intro_update()
}
// Play the track friction sound
_soundChannel = Mixer_Play_Effect(SOUND_TRACK_FRICTION_3, MIXER_LOOP_INFINITE, SDL_MIX_MAXVOLUME, 0.25f, 0.75, true);
_soundChannel = Mixer_Play_Effect(SOUND_TRACK_FRICTION_3, MIXER_LOOP_INFINITE, MIXER_VOLUME_MAX, 0.25f, 0.75, true);
}
// Check if logo is off the screen...ish
@@ -107,7 +107,7 @@ void intro_update()
}
// Play long peep scream sound
_soundChannel = Mixer_Play_Effect(SOUND_SCREAM_1, MIXER_LOOP_NONE, SDL_MIX_MAXVOLUME, 0.5f, 1, false);
_soundChannel = Mixer_Play_Effect(SOUND_SCREAM_1, MIXER_LOOP_NONE, MIXER_VOLUME_MAX, 0.5f, 1, false);
gIntroState++;
_introStateCounter = 0;