diff --git a/libretro-common/audio/audio_mixer.c b/libretro-common/audio/audio_mixer.c index 569d1cf2b8..7e561b3fe0 100644 --- a/libretro-common/audio/audio_mixer.c +++ b/libretro-common/audio/audio_mixer.c @@ -45,37 +45,6 @@ #define AUDIO_MIXER_MAX_VOICES 8 #define AUDIO_MIXER_TEMP_OGG_BUFFER 8192 -enum audio_mixer_type -{ - AUDIO_MIXER_TYPE_NONE = 0, - AUDIO_MIXER_TYPE_WAV, - AUDIO_MIXER_TYPE_OGG -}; - -struct audio_mixer_sound -{ - enum audio_mixer_type type; - - union - { - struct - { - /* wav */ - unsigned frames; - const float* pcm; - } wav; - -#ifdef HAVE_STB_VORBIS - struct - { - /* ogg */ - unsigned size; - const void* data; - } ogg; -#endif - } types; -}; - struct audio_mixer_voice { bool repeat; @@ -296,7 +265,7 @@ audio_mixer_sound_t* audio_mixer_load_ogg(void *buffer, int32_t size) if (!sound) return NULL; - + sound->type = AUDIO_MIXER_TYPE_OGG; sound->types.ogg.size = size; sound->types.ogg.data = buffer; diff --git a/libretro-common/include/audio/audio_mixer.h b/libretro-common/include/audio/audio_mixer.h index afcb167b06..c9a332b7c5 100644 --- a/libretro-common/include/audio/audio_mixer.h +++ b/libretro-common/include/audio/audio_mixer.h @@ -27,11 +27,46 @@ #include #include +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + #include #include RETRO_BEGIN_DECLS +enum audio_mixer_type +{ + AUDIO_MIXER_TYPE_NONE = 0, + AUDIO_MIXER_TYPE_WAV, + AUDIO_MIXER_TYPE_OGG +}; + +struct audio_mixer_sound +{ + enum audio_mixer_type type; + + union + { + struct + { + /* wav */ + unsigned frames; + const float* pcm; + } wav; + +#ifdef HAVE_STB_VORBIS + struct + { + /* ogg */ + unsigned size; + const void* data; + } ogg; +#endif + } types; +}; + typedef struct audio_mixer_sound audio_mixer_sound_t; typedef struct audio_mixer_voice audio_mixer_voice_t; diff --git a/retroarch.c b/retroarch.c index d3dde35c8b..a237dc08d3 100644 --- a/retroarch.c +++ b/retroarch.c @@ -39,6 +39,7 @@ #include #include +#include