From 05e2833a5b5f710fa161784c7defb7093e9584af Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Sun, 22 May 2022 10:04:56 -0700
Subject: [PATCH] Use built-in codec support for FLAC, MP3, and Ogg Vorbis
music
---
VisualC/SDL_mixer.vcxproj | 126 +-
VisualC/SDL_mixer.vcxproj.filters | 62 +-
VisualC/external/include/FLAC/all.h | 371 ---
VisualC/external/include/FLAC/assert.h | 46 -
VisualC/external/include/FLAC/callback.h | 185 --
VisualC/external/include/FLAC/export.h | 97 -
VisualC/external/include/FLAC/format.h | 1025 --------
VisualC/external/include/FLAC/metadata.h | 2182 -----------------
VisualC/external/include/FLAC/ordinals.h | 85 -
.../external/include/FLAC/stream_decoder.h | 1559 ------------
.../external/include/FLAC/stream_encoder.h | 1790 --------------
VisualC/external/include/fmt123.h | 159 --
VisualC/external/include/mpg123.h | 2001 ---------------
VisualC/external/include/vorbis/codec.h | 242 --
VisualC/external/include/vorbis/vorbisfile.h | 205 --
VisualC/external/lib/x64/LICENSE.FLAC.txt | 32 -
VisualC/external/lib/x64/LICENSE.mpg123.txt | 776 ------
VisualC/external/lib/x64/libFLAC-8.dll | Bin 508928 -> 0 bytes
VisualC/external/lib/x64/libmpg123-0.dll | Bin 515944 -> 0 bytes
VisualC/external/lib/x64/libvorbis-0.dll | Bin 184320 -> 0 bytes
VisualC/external/lib/x64/libvorbisfile-3.dll | Bin 35840 -> 0 bytes
VisualC/external/lib/x86/LICENSE.FLAC.txt | 32 -
VisualC/external/lib/x86/LICENSE.mpg123.txt | 776 ------
VisualC/external/lib/x86/libFLAC-8.dll | Bin 531456 -> 0 bytes
VisualC/external/lib/x86/libmpg123-0.dll | Bin 551955 -> 0 bytes
VisualC/external/lib/x86/libvorbis-0.dll | Bin 160256 -> 0 bytes
VisualC/external/lib/x86/libvorbisfile-3.dll | Bin 35840 -> 0 bytes
27 files changed, 37 insertions(+), 11714 deletions(-)
delete mode 100644 VisualC/external/include/FLAC/all.h
delete mode 100644 VisualC/external/include/FLAC/assert.h
delete mode 100644 VisualC/external/include/FLAC/callback.h
delete mode 100644 VisualC/external/include/FLAC/export.h
delete mode 100644 VisualC/external/include/FLAC/format.h
delete mode 100644 VisualC/external/include/FLAC/metadata.h
delete mode 100644 VisualC/external/include/FLAC/ordinals.h
delete mode 100644 VisualC/external/include/FLAC/stream_decoder.h
delete mode 100644 VisualC/external/include/FLAC/stream_encoder.h
delete mode 100644 VisualC/external/include/fmt123.h
delete mode 100644 VisualC/external/include/mpg123.h
delete mode 100644 VisualC/external/include/vorbis/codec.h
delete mode 100644 VisualC/external/include/vorbis/vorbisfile.h
delete mode 100644 VisualC/external/lib/x64/LICENSE.FLAC.txt
delete mode 100644 VisualC/external/lib/x64/LICENSE.mpg123.txt
delete mode 100644 VisualC/external/lib/x64/libFLAC-8.dll
delete mode 100644 VisualC/external/lib/x64/libmpg123-0.dll
delete mode 100644 VisualC/external/lib/x64/libvorbis-0.dll
delete mode 100644 VisualC/external/lib/x64/libvorbisfile-3.dll
delete mode 100644 VisualC/external/lib/x86/LICENSE.FLAC.txt
delete mode 100644 VisualC/external/lib/x86/LICENSE.mpg123.txt
delete mode 100644 VisualC/external/lib/x86/libFLAC-8.dll
delete mode 100644 VisualC/external/lib/x86/libmpg123-0.dll
delete mode 100644 VisualC/external/lib/x86/libvorbis-0.dll
delete mode 100644 VisualC/external/lib/x86/libvorbisfile-3.dll
diff --git a/VisualC/SDL_mixer.vcxproj b/VisualC/SDL_mixer.vcxproj
index 89ced71a..2ec6b90f 100644
--- a/VisualC/SDL_mixer.vcxproj
+++ b/VisualC/SDL_mixer.vcxproj
@@ -93,7 +93,7 @@
<AdditionalOptions>/D OGG_DYNAMIC=\"libvorbisfile-3.dll\" %(AdditionalOptions)</AdditionalOptions>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\include;..\src;..\src\codecs;..\src\codecs\timidity;..\src\codecs\native_midi;external\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>DLL_EXPORT;_DEBUG;WIN32;_WINDOWS;MUSIC_WAV;MUSIC_MOD_MODPLUG;MODPLUG_DYNAMIC="libmodplug-1.dll";MUSIC_OGG;OGG_DYNAMIC="libvorbisfile-3.dll";MUSIC_OPUS;OPUS_DYNAMIC="libopusfile-0.dll";MUSIC_FLAC;FLAC_DYNAMIC="libFLAC-8.dll";MUSIC_MP3_MPG123;MPG123_DYNAMIC="libmpg123-0.dll";MUSIC_MID_TIMIDITY;MUSIC_MID_NATIVE</PreprocessorDefinitions>
+ <PreprocessorDefinitions>DLL_EXPORT;_DEBUG;WIN32;_WINDOWS;MUSIC_WAV;MUSIC_FLAC_DRFLAC;MUSIC_MOD_MODPLUG;MODPLUG_DYNAMIC="libmodplug-1.dll";MUSIC_MP3_DRMP3;MUSIC_OGG;OGG_USE_STB;MUSIC_OPUS;OPUS_DYNAMIC="libopusfile-0.dll";MUSIC_MID_TIMIDITY;MUSIC_MID_NATIVE</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>OldStyle</DebugInformationFormat>
@@ -123,7 +123,7 @@
<AdditionalOptions>/D OGG_DYNAMIC=\"libvorbisfile-3.dll\" %(AdditionalOptions)</AdditionalOptions>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\include;..\src;..\src\codecs;..\src\codecs\timidity;..\src\codecs\native_midi;external\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>DLL_EXPORT;_DEBUG;WIN32;_WINDOWS;MUSIC_WAV;MUSIC_MOD_MODPLUG;MODPLUG_DYNAMIC="libmodplug-1.dll";MUSIC_OGG;OGG_DYNAMIC="libvorbisfile-3.dll";MUSIC_OPUS;OPUS_DYNAMIC="libopusfile-0.dll";MUSIC_FLAC;FLAC_DYNAMIC="libFLAC-8.dll";MUSIC_MP3_MPG123;MPG123_DYNAMIC="libmpg123-0.dll";MUSIC_MID_TIMIDITY;MUSIC_MID_NATIVE</PreprocessorDefinitions>
+ <PreprocessorDefinitions>DLL_EXPORT;_DEBUG;WIN32;_WINDOWS;MUSIC_WAV;MUSIC_FLAC_DRFLAC;MUSIC_MOD_MODPLUG;MODPLUG_DYNAMIC="libmodplug-1.dll";MUSIC_MP3_DRMP3;MUSIC_OGG;OGG_USE_STB;MUSIC_OPUS;OPUS_DYNAMIC="libopusfile-0.dll";MUSIC_MID_TIMIDITY;MUSIC_MID_NATIVE</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>OldStyle</DebugInformationFormat>
@@ -152,7 +152,7 @@
<ClCompile>
<AdditionalOptions>/D OGG_DYNAMIC=\"libvorbisfile-3.dll\" %(AdditionalOptions)</AdditionalOptions>
<AdditionalIncludeDirectories>..\include;..\src;..\src\codecs;..\src\codecs\timidity;..\src\codecs\native_midi;external\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>DLL_EXPORT;NDEBUG;WIN32;_WINDOWS;_CRT_SECURE_NO_WARNINGS;MUSIC_WAV;MUSIC_MOD_MODPLUG;MODPLUG_DYNAMIC="libmodplug-1.dll";MUSIC_OGG;OGG_DYNAMIC="libvorbisfile-3.dll";MUSIC_OPUS;OPUS_DYNAMIC="libopusfile-0.dll";MUSIC_FLAC;FLAC_DYNAMIC="libFLAC-8.dll";MUSIC_MP3_MPG123;MPG123_DYNAMIC="libmpg123-0.dll";MUSIC_MID_TIMIDITY;MUSIC_MID_NATIVE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>DLL_EXPORT;NDEBUG;WIN32;_WINDOWS;_CRT_SECURE_NO_WARNINGS;MUSIC_WAV;MUSIC_FLAC_DRFLAC;MUSIC_MOD_MODPLUG;MODPLUG_DYNAMIC="libmodplug-1.dll";MUSIC_MP3_DRMP3;MUSIC_OGG;OGG_USE_STB;MUSIC_OPUS;OPUS_DYNAMIC="libopusfile-0.dll";MUSIC_MID_TIMIDITY;MUSIC_MID_NATIVE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
<EnableEnhancedInstructionSet>StreamingSIMDExtensions</EnableEnhancedInstructionSet>
@@ -179,7 +179,7 @@
<ClCompile>
<AdditionalOptions>/D OGG_DYNAMIC=\"libvorbisfile-3.dll\" %(AdditionalOptions)</AdditionalOptions>
<AdditionalIncludeDirectories>..\include;..\src;..\src\codecs;..\src\codecs\timidity;..\src\codecs\native_midi;external\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>DLL_EXPORT;NDEBUG;WIN32;_WINDOWS;_CRT_SECURE_NO_WARNINGS;MUSIC_WAV;MUSIC_MOD_MODPLUG;MODPLUG_DYNAMIC="libmodplug-1.dll";MUSIC_OGG;OGG_DYNAMIC="libvorbisfile-3.dll";MUSIC_OPUS;OPUS_DYNAMIC="libopusfile-0.dll";MUSIC_FLAC;FLAC_DYNAMIC="libFLAC-8.dll";MUSIC_MP3_MPG123;MPG123_DYNAMIC="libmpg123-0.dll";MUSIC_MID_TIMIDITY;MUSIC_MID_NATIVE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>DLL_EXPORT;NDEBUG;WIN32;_WINDOWS;_CRT_SECURE_NO_WARNINGS;MUSIC_WAV;MUSIC_FLAC_DRFLAC;MUSIC_MOD_MODPLUG;MODPLUG_DYNAMIC="libmodplug-1.dll";MUSIC_MP3_DRMP3;MUSIC_OGG;OGG_USE_STB;MUSIC_OPUS;OPUS_DYNAMIC="libopusfile-0.dll";MUSIC_MID_TIMIDITY;MUSIC_MID_NATIVE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
<EnableEnhancedInstructionSet>StreamingSIMDExtensions</EnableEnhancedInstructionSet>
@@ -195,6 +195,9 @@
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="..\include\SDL_mixer.h" />
+ <ClInclude Include="..\src\codecs\music_drflac.h" />
+ <ClInclude Include="..\src\codecs\music_drmp3.h" />
+ <ClInclude Include="..\src\codecs\music_xmp.h" />
<ClInclude Include="..\src\utils.h" />
<ClInclude Include="..\src\effects_internal.h" />
<ClInclude Include="..\src\mixer.h" />
@@ -242,15 +245,6 @@
</ProjectReference>
</ItemGroup>
<ItemGroup>
- <CustomBuild Include="external\lib\x64\libFLAC-8.dll">
- <FileType>Document</FileType>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- </CustomBuild>
<CustomBuild Include="external\lib\x64\libmodplug-1.dll">
<FileType>Document</FileType>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
@@ -287,32 +281,6 @@
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
- <CustomBuild Include="external\lib\x64\libvorbis-0.dll">
- <FileType>Document</FileType>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- </CustomBuild>
- <CustomBuild Include="external\lib\x64\libvorbisfile-3.dll">
- <FileType>Document</FileType>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- </CustomBuild>
- <CustomBuild Include="external\lib\x64\LICENSE.FLAC.txt">
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- </CustomBuild>
<CustomBuild Include="external\lib\x64\LICENSE.modplug.txt">
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
@@ -345,15 +313,6 @@
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
- <CustomBuild Include="external\lib\x86\libFLAC-8.dll">
- <FileType>Document</FileType>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- </CustomBuild>
<CustomBuild Include="external\lib\x86\libmodplug-1.dll">
<FileType>Document</FileType>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
@@ -390,32 +349,6 @@
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
- <CustomBuild Include="external\lib\x86\libvorbis-0.dll">
- <FileType>Document</FileType>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- </CustomBuild>
- <CustomBuild Include="external\lib\x86\libvorbisfile-3.dll">
- <FileType>Document</FileType>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- </CustomBuild>
- <CustomBuild Include="external\lib\x86\LICENSE.FLAC.txt">
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- </CustomBuild>
<CustomBuild Include="external\lib\x86\LICENSE.modplug.txt">
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
@@ -432,6 +365,9 @@
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
+ <CustomBuild Include="external\lib\x64\libFLAC-8.dll">
+ <Filter>x64</Filter>
+ </CustomBuild>
<CustomBuild Include="external\lib\x86\LICENSE.opus.txt">
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
@@ -450,6 +386,10 @@
</CustomBuild>
</ItemGroup>
<ItemGroup>
+ <ClCompile Include="..\src\codecs\music_drflac.c" />
+ <ClCompile Include="..\src\codecs\music_drmp3.c" />
+ <ClCompile Include="..\src\codecs\music_ogg_stb.c" />
+ <ClCompile Include="..\src\codecs\music_xmp.c" />
<ClCompile Include="..\src\utils.c" />
<ClCompile Include="..\src\effects_internal.c" />
<ClCompile Include="..\src\effect_position.c" />
@@ -472,43 +412,7 @@
<ClCompile Include="..\src\codecs\music_timidity.c" />
<ClCompile Include="..\src\codecs\music_wav.c" />
</ItemGroup>
- <ItemGroup>
- <CustomBuild Include="external\lib\x64\libmpg123-0.dll">
- <FileType>Document</FileType>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
- <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- </CustomBuild>
- <CustomBuild Include="external\lib\x64\LICENSE.mpg123.txt">
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
- <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- </CustomBuild>
- <CustomBuild Include="external\lib\x86\libmpg123-0.dll">
- <FileType>Document</FileType>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
- <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- </CustomBuild>
- <CustomBuild Include="external\lib\x86\LICENSE.mpg123.txt">
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy %(FullPath) $(SolutionDir)\$(Platform)\$(Configuration)\</Command>
- <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
- <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- </CustomBuild>
- </ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
-</Project>
\ No newline at end of file
+</Project>
diff --git a/VisualC/SDL_mixer.vcxproj.filters b/VisualC/SDL_mixer.vcxproj.filters
index b9427379..f6a7b72e 100644
--- a/VisualC/SDL_mixer.vcxproj.filters
+++ b/VisualC/SDL_mixer.vcxproj.filters
@@ -61,6 +61,15 @@
<ClInclude Include="..\src\codecs\music_wav.h">
<Filter>Sources</Filter>
</ClInclude>
+ <ClInclude Include="..\src\codecs\music_drflac.h">
+ <Filter>Sources</Filter>
+ </ClInclude>
+ <ClInclude Include="..\src\codecs\music_drmp3.h">
+ <Filter>Sources</Filter>
+ </ClInclude>
+ <ClInclude Include="..\src\codecs\music_xmp.h">
+ <Filter>Sources</Filter>
+ </ClInclude>
</ItemGroup>
<ItemGroup>
<Filter Include="x86">
@@ -96,18 +105,6 @@
<CustomBuild Include="external\lib\x64\LICENSE.modplug.txt">
<Filter>x64</Filter>
</CustomBuild>
- <CustomBuild Include="external\lib\x64\LICENSE.mikmod.txt">
- <Filter>x64</Filter>
- </CustomBuild>
- <CustomBuild Include="external\lib\x64\LICENSE.FLAC.txt">
- <Filter>x64</Filter>
- </CustomBuild>
- <CustomBuild Include="external\lib\x64\libvorbisfile-3.dll">
- <Filter>x64</Filter>
- </CustomBuild>
- <CustomBuild Include="external\lib\x64\libvorbis-0.dll">
- <Filter>x64</Filter>
- </CustomBuild>
<CustomBuild Include="external\lib\x64\libogg-0.dll">
<Filter>x64</Filter>
</CustomBuild>
@@ -120,9 +117,6 @@
<CustomBuild Include="external\lib\x64\libmodplug-1.dll">
<Filter>x64</Filter>
</CustomBuild>
- <CustomBuild Include="external\lib\x64\libFLAC-8.dll">
- <Filter>x64</Filter>
- </CustomBuild>
<CustomBuild Include="external\lib\x86\LICENSE.ogg-vorbis.txt">
<Filter>x86</Filter>
</CustomBuild>
@@ -135,15 +129,6 @@
<CustomBuild Include="external\lib\x86\LICENSE.modplug.txt">
<Filter>x86</Filter>
</CustomBuild>
- <CustomBuild Include="external\lib\x86\LICENSE.FLAC.txt">
- <Filter>x86</Filter>
- </CustomBuild>
- <CustomBuild Include="external\lib\x86\libvorbisfile-3.dll">
- <Filter>x86</Filter>
- </CustomBuild>
- <CustomBuild Include="external\lib\x86\libvorbis-0.dll">
- <Filter>x86</Filter>
- </CustomBuild>
<CustomBuild Include="external\lib\x86\libogg-0.dll">
<Filter>x86</Filter>
</CustomBuild>
@@ -156,21 +141,6 @@
<CustomBuild Include="external\lib\x86\libmodplug-1.dll">
<Filter>x86</Filter>
</CustomBuild>
- <CustomBuild Include="external\lib\x86\libFLAC-8.dll">
- <Filter>x86</Filter>
- </CustomBuild>
- <CustomBuild Include="external\lib\x64\LICENSE.mpg123.txt">
- <Filter>x64</Filter>
- </CustomBuild>
- <CustomBuild Include="external\lib\x64\libmpg123-0.dll">
- <Filter>x64</Filter>
- </CustomBuild>
- <CustomBuild Include="external\lib\x86\libmpg123-0.dll">
- <Filter>x86</Filter>
- </CustomBuild>
- <CustomBuild Include="external\lib\x86\LICENSE.mpg123.txt">
- <Filter>x86</Filter>
- </CustomBuild>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\src\utils.c">
@@ -236,5 +206,17 @@
<ClCompile Include="..\src\codecs\music_wav.c">
<Filter>Sources</Filter>
</ClCompile>
+ <ClCompile Include="..\src\codecs\music_drflac.c">
+ <Filter>Sources</Filter>
+ </ClCompile>
+ <ClCompile Include="..\src\codecs\music_drmp3.c">
+ <Filter>Sources</Filter>
+ </ClCompile>
+ <ClCompile Include="..\src\codecs\music_ogg_stb.c">
+ <Filter>Sources</Filter>
+ </ClCompile>
+ <ClCompile Include="..\src\codecs\music_xmp.c">
+ <Filter>Sources</Filter>
+ </ClCompile>
</ItemGroup>
-</Project>
\ No newline at end of file
+</Project>
diff --git a/VisualC/external/include/FLAC/all.h b/VisualC/external/include/FLAC/all.h
deleted file mode 100644
index 6ba03c19..00000000
--- a/VisualC/external/include/FLAC/all.h
+++ /dev/null
@@ -1,371 +0,0 @@
-/* libFLAC - Free Lossless Audio Codec library
- * Copyright (C) 2000-2009 Josh Coalson
- * Copyright (C) 2011-2016 Xiph.Org Foundation
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * - Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * - Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * - Neither the name of the Xiph.org Foundation nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
- * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef FLAC__ALL_H
-#define FLAC__ALL_H
-
-#include "export.h"
-
-#include "assert.h"
-#include "callback.h"
-#include "format.h"
-#include "metadata.h"
-#include "ordinals.h"
-#include "stream_decoder.h"
-#include "stream_encoder.h"
-
-/** \mainpage
- *
- * \section intro Introduction
- *
- * This is the documentation for the FLAC C and C++ APIs. It is
- * highly interconnected; this introduction should give you a top
- * level idea of the structure and how to find the information you
- * need. As a prerequisite you should have at least a basic
- * knowledge of the FLAC format, documented
- * <A HREF="../format.html">here</A>.
- *
- * \section c_api FLAC C API
- *
- * The FLAC C API is the interface to libFLAC, a set of structures
- * describing the components of FLAC streams, and functions for
- * encoding and decoding streams, as well as manipulating FLAC
- * metadata in files. The public include files will be installed
- * in your include area (for example /usr/include/FLAC/...).
- *
- * By writing a little code and linking against libFLAC, it is
- * relatively easy to add FLAC support to another program. The
- * library is licensed under <A HREF="../license.html">Xiph's BSD license</A>.
- * Complete source code of libFLAC as well as the command-line
- * encoder and plugins is available and is a useful source of
- * examples.
- *
- * Aside from encoders and decoders, libFLAC provides a powerful
- * metadata interface for manipulating metadata in FLAC files. It
- * allows the user to add, delete, and modify FLAC metadata blocks
- * and it can automatically take advantage of PADDING blocks to avoid
- * rewriting the entire FLAC file when changing the size of the
- * metadata.
- *
- * libFLAC usually only requires the standard C library and C math
- * library. In particular, threading is not used so there is no
- *
(Patch may be truncated, please check the link at the top of this post.)