Audio: Make cheap OpenAL pitch shifting a config option

This commit is contained in:
Jonas Kulla 2013-12-01 09:36:15 +01:00
parent 47d96bd21e
commit ac35d4214e
4 changed files with 14 additions and 2 deletions

View file

@ -26,6 +26,7 @@
#include "intrulist.h"
#include "filesystem.h"
#include "exception.h"
#include "config.h"
#include "al-util.h"
#include <QByteArray>
@ -300,7 +301,8 @@ struct SoundEmitter
AL::Source::setVolume(src, _volume);
#ifndef RUBBERBAND
AL::Source::setPitch(src, clamp<int>(pitch, 50, 150) / 100.f);
if (shState->config().fastSoundPitch)
AL::Source::setPitch(src, clamp<int>(pitch, 50, 150) / 100.f);
#endif
AL::Source::play(src);
@ -761,7 +763,8 @@ private:
needsRewind = false;
#ifndef RUBBERBAND
AL::Source::setPitch(alSrc, pitch);
if (shState->config().fastMusicPitch)
AL::Source::setPitch(alSrc, pitch);
#endif
}

View file

@ -39,6 +39,8 @@ Config::Config()
defScreenH(480),
fixedFramerate(0),
solidFonts(false),
fastSoundPitch(true),
fastMusicPitch(false),
gameFolder("."),
allowSymlinks(false)
{}
@ -59,6 +61,8 @@ void Config::read()
READ_VAL(defScreenH, Int);
READ_VAL(fixedFramerate, Int);
READ_VAL(solidFonts, Bool);
READ_VAL(fastSoundPitch, Bool);
READ_VAL(fastMusicPitch, Bool);
READ_VAL(gameFolder, ByteArray);
READ_VAL(allowSymlinks, Bool);
READ_VAL(customScript, ByteArray);

View file

@ -44,6 +44,9 @@ struct Config
bool solidFonts;
bool fastSoundPitch;
bool fastMusicPitch;
QByteArray gameFolder;
bool allowSymlinks;