diff --git a/CHANGES b/CHANGES index 234cffb8c..30d404918 100644 --- a/CHANGES +++ b/CHANGES @@ -44,6 +44,7 @@ Misc: - FFmpeg: Add looping option for GIF/APNG - Qt: Renderer can be changed while a game is running - Qt: Fix non-SDL build (fixes mgba.io/i/1656) + - SDL: Use DirectSound audio driver by default on Windows - Switch: Make OpenGL scale adjustable while running 0.8.0: (2020-01-21) diff --git a/src/platform/sdl/sdl-audio.c b/src/platform/sdl/sdl-audio.c index ab0bd830b..f1666aa4e 100644 --- a/src/platform/sdl/sdl-audio.c +++ b/src/platform/sdl/sdl-audio.c @@ -19,6 +19,11 @@ mLOG_DEFINE_CATEGORY(SDL_AUDIO, "SDL Audio", "platform.sdl.audio"); static void _mSDLAudioCallback(void* context, Uint8* data, int len); bool mSDLInitAudio(struct mSDLAudio* context, struct mCoreThread* threadContext) { +#if defined(_WIN32) && SDL_VERSION_ATLEAST(2, 0, 8) + if (!getenv("SDL_AUDIODRIVER")) { + _putenv_s("SDL_AUDIODRIVER", "directsound"); + } +#endif if (SDL_InitSubSystem(SDL_INIT_AUDIO) < 0) { mLOG(SDL_AUDIO, ERROR, "Could not initialize SDL sound system: %s", SDL_GetError()); return false;