CHANGES
author Sam Lantinga <slouken@libsdl.org>
Fri, 13 Jan 2012 03:15:19 -0500
changeset 561 87bdb4c81c0b
parent 553 4f4d631f3756
child 567 80a4ab1d30c1
permissions -rw-r--r--
Fixed memory crash loading Ogg Vorbis files on Windows
The pointer to the audio data could come from SDL_LoadWAV_RW() or from our other loaders, and we need to use the correct free() to release the memory. So we'll just use the SDL memory functions for consistency.
This pretty much only matters on Windows where we can't guarantee a certain C runtime so we provide our own malloc() and friends.
     1 1.2.12:
     2 Sam Lantinga - Fri Jan 13 03:04:27 EST 2012
     3  * Fixed memory crash loading Ogg Vorbis files on Windows
     4 Nikos Chantziaras - 2012-01-02 17:37:36 PST
     5  * Added Mix_LoadMUSType_RW() so you can tell SDL_mixer what type the music is
     6 Sam Lantinga - Sat Dec 31 19:11:59 EST 2011
     7  * Fixed dropping audio in the FLAC audio decoding
     8 Sam Lantinga - Sat Dec 31 18:32:05 EST 2011
     9  * Fixed memory leak in SDL_LoadMUS()
    10 Sam Lantinga - Sat Dec 31 10:22:05 EST 2011
    11  * SDL_mixer is now under the zlib license
    12 James Le Cuirot - Mon Mar 21 16:54:11 PDT 2011
    13  * Added support for FluidSynth
    14 Scott MC - Tue Jan 18 11:06:47 PST 2011
    15  * Added support for native MIDI on Haiku OS
    16 Jon Atkins - Sat Nov 14 13:00:18 PST 2009
    17  * Added support for libmodplug (disabled by default)
    18 
    19 1.2.11:
    20 Sam Lantinga - Sat Nov 14 12:38:01 PST 2009
    21  * Fixed initialization error and crashes if MikMod library isn't available
    22 Sam Lantinga - Sat Nov 14 11:22:14 PST 2009
    23  * Fixed bug loading multiple music files
    24 
    25 1.2.10:
    26 Sam Lantinga - Sun Nov  8 08:34:48 PST 2009
    27  * Added Mix_Init()/Mix_Quit() to prevent constantly loading and unloading DLLs
    28 Mike Frysinger - 2009-11-05 09:11:43 PST
    29  * Check for fork/vfork on any platform, don't just assume it on UNIX
    30 Jon Atkins - Thu Nov 5 00:02:50 2009 UTC
    31  * Fixed export of Mix_GetNumChunkDecoders() and Mix_GetNumMusicDecoders()
    32 C.W. Betts - 2009-11-02 00:16:21 PST
    33  * Use newer MIDI API on Mac OS X 10.5+
    34 
    35 1.2.9:
    36 Ryan Gordon - Sun Oct 18 11:42:31 PDT 2009
    37  * Updated native MIDI support on Mac OS X for 10.6
    38 Ryan Gordon - Sun Oct 11 05:29:55 2009 UTC
    39  * Reset channel volumes after a fade out interrupts a fade in.
    40 Ryan Gordon - Sun Oct 11 02:59:12 2009 UTC
    41  * Fixed crash race condition with position audio functions
    42 Ryan Gordon - Sat Oct 10 17:05:45 2009 UTC
    43  * Fixed stereo panning in 8-bit mode
    44 Sam Lantinga - Sat Oct 10 11:07:15 2009 UTC
    45  * Added /usr/share/timidity to the default timidity.cfg locations
    46 Sam Lantinga - Sat Oct  3 13:33:36 PDT 2009
    47  * MOD support uses libmikmod and is dynamically loaded by default
    48  * A patched version of libmikmod is included in libmikmod-3.1.12.zip
    49  * The libmikmod patches fix security issues CVE-2007-6720 and CVE-2009-0179.
    50 Sam Lantinga - Sat Oct  3 02:49:41 PDT 2009
    51  * Added TIMIDITY_CFG environment variable to fully locate timidity.cfg
    52 Sam Lantinga - Fri Oct  2 07:15:35 PDT 2009
    53  * Implemented seamless looping for music playback
    54 Forrest Voight - 2009-06-13 20:31:38 PDT
    55  * ID3 files are now recognized as MP3 format
    56 Steven Noonan - 2008-05-13 13:31:36 PDT
    57  * Fixed native MIDI crash on 64-bit Windows
    58 Ryan Gordon - Fri Jun 5 16:07:08 2009 UTC
    59  * Added decoder enumeration API:
    60 	Mix_GetNumChunkDecoders(), Mix_GetChunkDecoder(),
    61 	Mix_GetNumMusicDecoders(), Mix_GetMusicDecoder()
    62 Austen Dicken - Tue Feb 26 23:28:27 PST 2008
    63  * Added support for FLAC audio both as chunks and streaming
    64 Tilman Sauerbeck - Tue Feb 26 03:44:47 PST 2008
    65  * Added support for streaming WAV files with Mix_LoadMUS_RW()
    66 Ryan Gordon - Mon Feb 4 17:10:08 UTC 2008
    67  * Fixed crash caused by not resetting position_channels
    68 
    69 1.2.8:
    70 Sam Lantinga - Wed Jul 18 09:45:54 PDT 2007
    71  * Improved detection of Ogg Vorbis and Tremor libraries
    72 Ryan Gordon - Sun Jul 15 12:03:54 EDT 2007
    73  * Fixed memory leaks in Effects API.
    74 David Rose - Sat Jul 14 22:16:09 PDT 2007
    75  * Added support for MP3 playback with libmad (for GPL projects only!)
    76 Sam Lantinga - Sat Jul 14 21:39:30 PDT 2007
    77  * Fixed the final loop of audio samples of a certain size
    78 Sam Lantinga - Sat Jul 14 21:05:09 PDT 2007
    79  * Fixed opening Ogg Vorbis files using different C runtimes on Windows
    80 Philippe Simons - Sat Jul 14 20:33:17 PDT 2007
    81  * Added support for Ogg Vorbis playback with Tremor (an integer decoder)
    82 Sam Lantinga - Sat Jul 14 07:02:09 PDT 2007
    83  * Fixed memory corruption in timidity resampling code
    84 Ryan Gordon - Tue Jul 3 10:44:29 2007 UTC
    85  * Fixed building SDL_mixer with SDL 1.3 pre-release
    86 Ryan Gordon - Tue Feb 13 08:11:54 2007 UTC
    87  * Fixed compiling both timidity and native midi in the same build
    88 Hans de Goede - Sun Aug 20 23:25:46 2006 UTC
    89  * Added volume control to playmus
    90 Jonathan Atkins - Thu Aug 10 15:06:40 2006 UTC
    91  * Fixed linking with system libmikmod
    92 David Ergo - Fri Jun 23 09:07:19 2006 UTC
    93  * Corrected no-op conditions in SetDistance(), SetPanning() and SetPosition()
    94  * Fixed copy/paste errors in channel amplitudes
    95 
    96 1.2.7:
    97 Sam Lantinga - Fri May 12 00:04:32 PDT 2006
    98  * Added support for dynamically loading SMPEG library
    99 Sam Lantinga - Thu May 11 22:22:43 PDT 2006
   100  * Added support for dynamically loading Ogg Vorbis library
   101 Sam Lantinga - Sun Apr 30 09:01:44 PDT 2006
   102  * Removed automake dependency, to allow Universal binaries on Mac OS X
   103  * Added gcc-fat.sh for generating Universal binaries on Mac OS X
   104 Sam Lantinga - Sun Apr 30 01:48:40 PDT 2006
   105  * Updated libtool support to version 1.5.22
   106 Patrice Mandin - Sat Jul 16 16:43:24 UTC 2005
   107  * Use SDL_RWops also for native midi mac and win32
   108 Patrice Mandin - Sat Jul 9 14:40:09 UTC 2005
   109  * Use SDL_RWops also for native midi gpl (todo: mac and win32)
   110 Ryan C. Gordon - Sat Jul  9 01:54:03 EDT 2005
   111  * Tweaked Mix_Chunk's definition to make predeclaration easier.
   112 Patrice Mandin - Mon Jul 4 19:45:40 UTC 2005
   113  * Search timidity.cfg also in /etc
   114  * Fix memory leaks in timidity player
   115  * Use also SDL_RWops to read midifiles for timidity
   116 Ryan C. Gordon - Mon Jun 13 18:18:12 EDT 2005
   117  * Patch from Eric Wing to fix native midi compiling on MacOS/x86.
   118 Sam Lantinga - Wed Dec 22 17:14:32 PST 2004
   119  * Disabled support for the system version of libmikmod by default
   120 Sam Lantinga - Tue Dec 21 09:51:29 PST 2004
   121  * Fixed building mikmod support on UNIX
   122  * Always build SDL_RWops music support
   123  * Added SDL_RWops support for reading MP3 files
   124 
   125 1.2.6:
   126 Jonathan Atkins - Wed, 15 Sep 2004 23:26:42 -0500
   127  * Added support for using the system version of libmikmod
   128 Martin_Storsjö -  Sun, 22 Aug 2004 02:21:14 +0300 (EEST)
   129  * Added SDL_RWops support for reading Ogg Vorbis files
   130 Greg Lee - Wed, 14 Jul 2004 05:13:14 -1000
   131  * Added 4 and 6 channel surround sound output support
   132  * Added support for RMID format MIDI files
   133  * Improved timidity support (reverb, chorus, Roland & Yamaha sysex dumps, etc.)
   134 Sam Lantinga - Wed Nov 19 00:23:44 PST 2003
   135  * Updated libtool support for new mingw32 DLL build process
   136 Ryan C. Gordon - Sun Nov  9 23:34:47 EST 2003
   137  * Patch from Steven Fuller to fix positioning effect on bigendian systems.
   138 Laurent Ganter - Mon, 6 Oct 2003 11:51:33 +0200
   139  * Fixed bug with MIDI volume in native Windows playback
   140 Andre Leiradella - Fri, 30 May 2003 16:12:03 -0300
   141  * Added SDL_RWops support for reading MOD files
   142 Kyle Davenport - Sat, 19 Apr 2003 17:13:31 -0500
   143  * Added .la files to the development RPM, fixing RPM build on RedHat 8
   144 
   145 1.2.5:
   146 Darrell Walisser - Tue Mar  4 09:24:01 PST 2003
   147  * Worked around MacOS X deadlock between CoreAudio and QuickTime
   148 Darrell Walisser - Fri, 14 Feb 2003 20:56:08 -0500
   149  * Fixed crash in native midi code with files with more than 32 tracks
   150 Marc Le Douarain - Sat, 15 Feb 2003 14:46:41 +0100
   151  * Added 8SVX format support to the AIFF loader
   152 Sam Lantinga Wed Feb 12 21:03:57 PST 2003
   153  * Fixed volume control on WAVE music chunks
   154 Ben Nason - Mon, 10 Feb 2003 11:50:27 -0800
   155  * Fixed volume control on MOD music chunks
   156 Patrice Mandin - Fri, 31 Jan 2003 15:17:30 +0100
   157  * Added support for the Atari platform
   158 Ryan C. Gordon - Fri Dec 27 10:14:07 EST 2002
   159  * Patch from Steven Fuller to fix panning effect with 8-bit sounds.
   160 Ryan C. Gordon - Thu Jan  2 12:31:48 EST 2003
   161  * Patch from guy on 3DRealms forums to fix native win32 midi volume.
   162 Ryan C. Gordon - Wed Oct 30 07:12:06 EST 2002
   163  * Small, looping music samples should now be able to fade out correctly.
   164 Sam Lantinga - Sun Oct 20 20:52:24 PDT 2002
   165  * Added shared library support for MacOS X
   166 Pete Shinners - Wed Oct 16 17:10:08 EDT 2002
   167  * Correctly report an error when using an unknown filetype
   168 Vaclav Slavik - Sun Sep  8 18:57:38 PDT 2002
   169  * Added support for loading Ogg Vorbis samples as an audio chunk
   170 Martin Storsjö - Tue Jul 16 10:38:12 PDT 2002
   171  * Fixed to start playing another sample immediately when one finishes
   172 Martin Storsjö - Tue May 28 13:08:29 PDT 2002
   173  * Fixed a volume bug when calling Mix_HaltChannel() on unused channel
   174 Xavier Wielemans - Wed Jun 12 14:28:14 EDT 2002
   175  * Fixed volume reset bug at end of channel fade.
   176 Ryan C. Gordon - Wed Jun 26 16:30:59 EDT 2002
   177  * Mix_LoadMUS() will now accept an MP3 by file extension, instead of relying
   178     entirely on the magic number.
   179 
   180 1.2.4:
   181 Sam Lantinga - Mon May 20 09:11:22 PDT 2002
   182  * Updated the CodeWarrior project files
   183 Sam Lantinga - Sun May 19 13:46:29 PDT 2002
   184  * Added a function to query the music format: Mix_GetMusicType()
   185 Sam Lantinga - Sat May 18 12:45:16 PDT 2002
   186  * Added a function to load audio data from memory: Mix_QuickLoad_RAW()
   187 Sam Lantinga - Thu May 16 11:26:46 PDT 2002
   188  * Cleaned up threading issues in the music playback code
   189 Ryan Gordon - Thu May  2 21:08:48 PDT 2002
   190  * Fixed deadlock introduced in the last release
   191 
   192 1.2.3:
   193 Sam Lantinga - Sat Apr 13 07:49:47 PDT 2002
   194  * Updated autogen.sh for new versions of automake
   195  * Specify the SDL API calling convention (C by default)
   196 Ryan Gordon - Sat Apr 13 07:33:37 PDT 2002
   197  * Fixed recursive audio lock in the mixing function
   198 jean-julien Filatriau - Sat Mar 23 18:05:37 PST 2002
   199  * Fixed setting invalid volume when querying mixer and music volumes
   200 Guillaume Cottenceau - Wed Feb 13 15:43:20 PST 2002
   201  * Implemented Ogg Vorbis stream rewinding
   202 Peter Kutak - Wed Feb 13 10:26:57 PST 2002
   203  * Added native midi support on Linux, using GPL code
   204 	--enable-music-native-midi-gpl
   205 Pete Shinners - Mon Jan 14 11:31:26 PST 2002
   206  * Added seek support for MP3 files
   207 Ryan Gordon - Mon Jan 14 11:30:44 PST 2002
   208  * Sample "finished" callbacks are now always called when a sample is stopped.
   209 
   210 1.2.2:
   211 Guillaume Cottenceau - Wed Dec 19 08:59:05 PST 2001
   212  * Added an API for seeking in music files (implemented for MOD and Ogg music)
   213 	Mix_FadeInMusicPos(), Mix_SetMusicPosition()
   214  * Exposed the mikmod synchro value for music synchronization
   215 	Mix_SetSynchroValue(), Mix_GetSynchroValue()
   216 
   217 1.2.1:
   218 Yi-Huang Han - Wed Oct 24 21:55:47 PDT 2001
   219  * Fixed MOD music volume when looping
   220 David Hedbor - Thu Oct 18 10:01:41 PDT 2001
   221  * Stop implicit looping, set fade out and other flags on MOD files
   222 Sam Lantinga - Tue Oct 16 11:17:12 PDT 2001
   223  * The music file type is now determined by extension as well as magic
   224 Ryan C. Gordon - Tue Sep 11 12:05:54 PDT 2001
   225  * Reworked playwave.c to make it more useful as a mixer testbed
   226  * Added a realtime sound effect API to SDL_mixer.h
   227  * Added the following standard sound effects:
   228 	panning, distance attenuation, basic positional audio, stereo reversal
   229  * Added API for mixer versioning: Mix_Linked_Version() and MIX_VERSION()
   230 Sam Lantinga - Tue Sep 11 11:48:53 PDT 2001
   231  * Updated MikMod code to version 3.1.9a
   232 Torbjörn Andersson - Tue Sep 11 11:22:29 PDT 2001
   233  * Added support for loading AIFF audio chunks
   234 Max Horn - Tue Sep  4 20:38:11 PDT 2001
   235  * Added native MIDI music support on MacOS and MacOS X
   236 Florian Schulze - Sun Aug 19 14:55:37 PDT 2001
   237  * Added native MIDI music support on Windows
   238 Sam Lantinga - Sun Aug 19 02:20:55 PDT 2001
   239  * Added Project Builder projects for building MacOS X framework
   240 Darrell Walisser - Sun Aug 19 00:47:22 PDT 2001
   241  * Fixed compilation problems with mikmod under MacOS X
   242 Torbjörn Andersson - Sun, 19 Aug 2001 16:03:30
   243  * Fixed AIFF music playing support
   244 Sam Lantinga - Sat Aug 18 04:14:13 PDT 2001
   245  * Fixed building Ogg Vorbis support on Windows
   246 Ryan C. Gordon - Thu, 7 Jun 2001 13:15:51
   247  * Added Mix_ChannelFinished() and Mix_GetChunk()
   248 Ryan C. Gordon - Tue, 5 Jun 2001 11:01:51
   249  * Added VOC sound file support
   250 Guillaume Cottenceau - Thu May 10 11:17:55 PDT 2001
   251  * Fixed crashes when API used with audio not initialized
   252 Paul Jenner - Sat, 14 Apr 2001 09:20:38 -0700 (PDT)
   253  * Added support for building RPM directly from tar archive
   254 
   255 1.2.0:
   256 Sam Lantinga - Wed Apr  4 12:42:20 PDT 2001
   257  * Synchronized release version with SDL 1.2.0
   258 
   259 1.1.1:
   260 John Hall - Tue Jan  2 13:46:54 PST 2001
   261  * Added support to playmus for track switching with Ctrl-C
   262  * Added support to playmus for multiple command line files
   263 
   264 1.1.0:
   265 Sam Lantinga - Wed Nov 29 20:47:13 PST 2000
   266  * Package specifically for SDL 1.1 (no real reason API-wise, but for clarity)
   267 
   268 1.0.7:
   269 Sam Lantinga - Tue Nov  7 10:22:09 PST 2000
   270  * Fixed hang in mikmod re-initialization
   271 Stephane Peter - Oct 17 13:07:32 PST 2000
   272  * Fixed music fading
   273 Ray Kelm - Fri, 04 Aug 2000 20:58:00 -0400
   274  * Added support for cross-compiling Windows DLL from Linux
   275 
   276 1.0.6:
   277 Sam Lantinga - Sun Jul  2 14:16:44 PDT 2000
   278  * Added support for the Ogg Vorbis music format: http://www.vorbis.org/
   279 Darrell Walisser - Wed Jun 28 11:59:40 PDT 2000
   280  * Added Codewarrior projects for MacOS
   281 Sam Lantinga - Mon Jun 26 12:01:11 PDT 2000
   282  * Fixed symbol aliasing problem with "channel"
   283 Matt - Wed, 12 Apr 2000 15:36:13 -0700
   284  * Added SDL_RWops support for mikmod loading (not hooked into music.c yet)
   285 
   286 1.0.5:
   287 Paul Furber - Fri Mar  3 14:58:50 PST 2000
   288  * Fixed MP3 detection with compilers that use signed char datatypes
   289 
   290 1.0.4:
   291 Sam Lantinga - Thu Feb 10 19:42:03 PST 2000
   292  * Ported the base mixer and mikmod libraries to MacOS
   293 Markus Oberhumer - Wed Feb  2 13:16:17 PST 2000
   294  * Fixed problem with short looping sounds
   295 Sam Lantinga - Tue Feb  1 13:25:44 PST 2000
   296  * Added Visual C++ project file
   297 Markus Oberhumer - Tue Feb  1 13:23:11 PST 2000
   298  * Cleaned up code for compiling with Visual C++
   299  * Don't hang in Mix_HaltMusic() if the music is paused
   300 Sam Lantinga - Fri Jan 28 08:54:56 PST 2000
   301  * Fixed looping WAVE chunks that are not aligned on sample boundaries
   302 
   303 1.0.3:
   304 Sam Lantinga - Mon Jan 17 19:48:09 PST 2000
   305  * Changed the name of the library from "mixer" to "SDL_mixer"
   306  * Instead of including "mixer.h", include "SDL_mixer.h",
   307  * Instead of linking with libmixer.a, link with libSDL_mixer.a
   308 
   309 1.0.2:
   310 Sam Lantinga - Fri Jan 14 11:06:56 PST 2000
   311  * Made the CHANGELOG entries Y2K compliant. :)
   312 MFX -	Updated the mikmod support to MikMod 3.1.8
   313 MFX -	Added Mix_HookMusicFinished() API function
   314 
   315 1.0.1:
   316 SOL -	Added a post-mixing callback
   317 SP  -	A few music-related bugfixes
   318 
   319 1.0.0:
   320 SOL -   Added autoconf support
   321 SP  -   Added MP3 support using SMPEG
   322 SP  -   Added fading in/out of music and samples
   323 SP  -   Added dynamic allocation of channels
   324 SP  -   Added channel grouping functions
   325 SP  -   Added expiration delay for samples
   326 
   327 Initial Key:
   328 SOL - Sam Lantinga (hercules@lokigames.com)
   329 SP  - Stephane Peter (megastep@lokigames.com)
   330 MFX - Markus Oberhumer (markus.oberhumer@jk.uni-linz.ac.at)