SDL_mixer 1.2

   Sam Lantinga, Stephane Peter, and Ryan Gordon

Documentation: and on this site.


Mercurial Repository:

   Windows (64-bit Windows)
   Mac OS X
      SDL_mixer-1.2.12.dmg (Intel 10.5+)

   The latest stable release of SDL 1.2

Runs on:
   All platforms supported by SDL

   SDL_mixer is a sample multi-channel audio mixer library.
It supports any number of simultaneously playing channels of 16 bit stereo audio, plus a single channel of music, mixed by the popular FLAC, MikMod MOD, Timidity MIDI, Ogg Vorbis, and SMPEG MP3 libraries.

As of SDL_mixer 1.2.7, FLAC, MikMod, Ogg Vorbis and MP3 loading libraries are dynamically loaded, so if you don't need to load those formats, you don't need to include those shared libraries.

   Mixer supports playing MIDI format files using software wavetable via an old version of timidity. This requires you to have a GUS compatible set of sound patches on your system. By default, the library looks for these patches on Win32 in C:\timidity, and on UNIX in /usr/local/lib/timidity/.
A freely redistributable set of GUS compatible patches: timidity.tar.gz (14 MB)
A set of sample MIDI songs, origin unknown: bestmid3.tar.gz (1.3 MB)


 * SDL_mixer is now under the zlib license
 * SDL_mixer binaries have been built with the following libraries:
   flac 1.2.1
   libmikmod 3.1.12
   libogg 1.3.0
   libvorbis 1.3.2
   smpeg 0.4.5
 * SDL_mixer framework on OSX is built for Intel 10.5 and newer,
   PowerPC binaries can be built by modifying the Xcode project
 * Fixed seek offset with SMPEG (was relative, should be absolute)
 * Fixed memory crash loading Ogg Vorbis files on Windows
 * Added an Xcode project for iOS
 * Added Mix_LoadMUSType_RW() so you can tell SDL_mixer what type the music is
 * Fixed looping native MIDI on Mac OS X and Windows
 * Added /usr/local/share/timidity to the timidity data path
 * Fixed timidity loading of some MIDI files
 * Fixed dropping audio in the FLAC audio decoding
 * Fixed memory leak in SDL_LoadMUS()
 * Removed GPL native MIDI code for new licensing
 * Fixed drums playing on MIDI channel 16 with timidity
 * The music-finished hook can start a track immediately
 * Added support for FluidSynth
 * Added support for native MIDI on Haiku
 * Added to build on the Android platform
 * Added support for libmodplug (disabled by default)

Thanks to these people and many others for their help on this release:
 Egor Suvorov, James Le Cuirot, Jon Atkins, Manuel Montezelo, Nikos Chantziaras

* Fixed initialization error and crashes if MikMod library isn't available
* Fixed bug loading multiple music files

* Added Mix_Init()/Mix_Quit() to prevent constantly loading and unloading DLLs
* Check for fork/vfork on any platform, don't just assume it on UNIX
* Fixed export of Mix_GetNumChunkDecoders() and Mix_GetNumMusicDecoders()
* Use newer MIDI API on Mac OS X 10.5+

* Updated native MIDI support on Mac OS X for 10.6
* Reset channel volumes after a fade out interrupts a fade in.
* Fixed crash race condition with position audio functions
* Fixed stereo panning in 8-bit mode
* Added /usr/share/timidity to the default timidity.cfg locations
* MOD support uses libmikmod and is dynamically loaded by default
* A patched version of libmikmod is included in
* The libmikmod patches fix security issues CVE-2007-6720 and CVE-2009-0179.
* Added TIMIDITY_CFG environment variable to fully locate timidity.cfg
* Implemented seamless looping for music playback
* ID3 files are now recognized as MP3 format
* Fixed native MIDI crash on 64-bit Windows
* Added decoder enumeration API:
	Mix_GetNumChunkDecoders(), Mix_GetChunkDecoder(),
	Mix_GetNumMusicDecoders(), Mix_GetMusicDecoder()
* Added support for FLAC audio both as chunks and streaming
* Added support for streaming WAV files with Mix_LoadMUS_RW()
* Fixed crash caused by not resetting position_channels