CHANGES
author Sam Lantinga <slouken@libsdl.org>
Tue, 26 Feb 2008 11:46:22 +0000
changeset 381 2064088ea781
parent 368 e61c4fb262bd
child 382 50501e45c57b
permissions -rw-r--r--
Date: Sat, 16 Feb 2008 20:59:24 +0100
From: Tilman Sauerbeck
Subject: [PATCH] Allow SDL_mixer to open wave streams via SDL_rwops

the current version of SDL_mixer can only load WAVE streams directly
from files. In my application I have the need to load them from an
SDL_RWops structure. The attached patch adds that feature to SDL_mixer.
     1 1.2.9:
     2 Tilman Sauerbeck - Tue Feb 26 03:44:47 PST 2008
     3  * Added support for streaming WAV files with Mix_LoadMUS_RW()
     4 
     5 1.2.8:
     6 Sam Lantinga - Wed Jul 18 09:45:54 PDT 2007
     7  * Improved detection of Ogg Vorbis and Tremor libraries
     8 Ryan Gordon - Sun Jul 15 12:03:54 EDT 2007
     9  * Fixed memory leaks in Effects API.
    10 David Rose - Sat Jul 14 22:16:09 PDT 2007
    11  * Added support for MP3 playback with libmad (for GPL projects only!)
    12 Sam Lantinga - Sat Jul 14 21:39:30 PDT 2007
    13  * Fixed the final loop of audio samples of a certain size
    14 Sam Lantinga - Sat Jul 14 21:05:09 PDT 2007
    15  * Fixed opening Ogg Vorbis files using different C runtimes on Windows
    16 Philippe Simons - Sat Jul 14 20:33:17 PDT 2007
    17  * Added support for Ogg Vorbis playback with Tremor (an integer decoder)
    18 Sam Lantinga - Sat Jul 14 07:02:09 PDT 2007
    19  * Fixed memory corruption in timidity resampling code
    20 Ryan Gordon - Tue Jul 3 10:44:29 2007 UTC
    21  * Fixed building SDL_mixer with SDL 1.3 pre-release
    22 Ryan Gordon - Tue Feb 13 08:11:54 2007 UTC
    23  * Fixed compiling both timidity and native midi in the same build
    24 Hans de Goede - Sun Aug 20 23:25:46 2006 UTC
    25  * Added volume control to playmus
    26 Jonathan Atkins - Thu Aug 10 15:06:40 2006 UTC
    27  * Fixed linking with system libmikmod
    28 David Ergo - Fri Jun 23 09:07:19 2006 UTC
    29  * Corrected no-op conditions in SetDistance(), SetPanning() and SetPosition()
    30  * Fixed copy/paste errors in channel amplitudes
    31 
    32 1.2.7:
    33 Sam Lantinga - Fri May 12 00:04:32 PDT 2006
    34  * Added support for dynamically loading SMPEG library
    35 Sam Lantinga - Thu May 11 22:22:43 PDT 2006
    36  * Added support for dynamically loading Ogg Vorbis library
    37 Sam Lantinga - Sun Apr 30 09:01:44 PDT 2006
    38  * Removed automake dependency, to allow Universal binaries on Mac OS X
    39  * Added gcc-fat.sh for generating Universal binaries on Mac OS X
    40 Sam Lantinga - Sun Apr 30 01:48:40 PDT 2006
    41  * Updated libtool support to version 1.5.22
    42 Patrice Mandin - Sat Jul 16 16:43:24 UTC 2005
    43  * Use SDL_RWops also for native midi mac and win32
    44 Patrice Mandin - Sat Jul 9 14:40:09 UTC 2005
    45  * Use SDL_RWops also for native midi gpl (todo: mac and win32)
    46 Ryan C. Gordon - Sat Jul  9 01:54:03 EDT 2005
    47  * Tweaked Mix_Chunk's definition to make predeclaration easier.
    48 Patrice Mandin - Mon Jul 4 19:45:40 UTC 2005
    49  * Search timidity.cfg also in /etc
    50  * Fix memory leaks in timidity player
    51  * Use also SDL_RWops to read midifiles for timidity
    52 Ryan C. Gordon - Mon Jun 13 18:18:12 EDT 2005
    53  * Patch from Eric Wing to fix native midi compiling on MacOS/x86.
    54 Sam Lantinga - Wed Dec 22 17:14:32 PST 2004
    55  * Disabled support for the system version of libmikmod by default
    56 Sam Lantinga - Tue Dec 21 09:51:29 PST 2004
    57  * Fixed building mikmod support on UNIX
    58  * Always build SDL_RWops music support
    59  * Added SDL_RWops support for reading MP3 files
    60 
    61 1.2.6:
    62 Jonathan Atkins - Wed, 15 Sep 2004 23:26:42 -0500
    63  * Added support for using the system version of libmikmod
    64 Martin_Storsjö -  Sun, 22 Aug 2004 02:21:14 +0300 (EEST)
    65  * Added SDL_RWops support for reading Ogg Vorbis files
    66 Greg Lee - Wed, 14 Jul 2004 05:13:14 -1000
    67  * Added 4 and 6 channel surround sound output support
    68  * Added support for RMID format MIDI files
    69  * Improved timidity support (reverb, chorus, Roland & Yamaha sysex dumps, etc.)
    70 Sam Lantinga - Wed Nov 19 00:23:44 PST 2003
    71  * Updated libtool support for new mingw32 DLL build process
    72 Ryan C. Gordon - Sun Nov  9 23:34:47 EST 2003
    73  * Patch from Steven Fuller to fix positioning effect on bigendian systems.
    74 Laurent Ganter - Mon, 6 Oct 2003 11:51:33 +0200
    75  * Fixed bug with MIDI volume in native Windows playback
    76 Andre Leiradella - Fri, 30 May 2003 16:12:03 -0300
    77  * Added SDL_RWops support for reading MOD files
    78 Kyle Davenport - Sat, 19 Apr 2003 17:13:31 -0500
    79  * Added .la files to the development RPM, fixing RPM build on RedHat 8
    80 
    81 1.2.5:
    82 Darrell Walisser - Tue Mar  4 09:24:01 PST 2003
    83  * Worked around MacOS X deadlock between CoreAudio and QuickTime
    84 Darrell Walisser - Fri, 14 Feb 2003 20:56:08 -0500
    85  * Fixed crash in native midi code with files with more than 32 tracks
    86 Marc Le Douarain - Sat, 15 Feb 2003 14:46:41 +0100
    87  * Added 8SVX format support to the AIFF loader
    88 Sam Lantinga Wed Feb 12 21:03:57 PST 2003
    89  * Fixed volume control on WAVE music chunks
    90 Ben Nason - Mon, 10 Feb 2003 11:50:27 -0800
    91  * Fixed volume control on MOD music chunks
    92 Patrice Mandin - Fri, 31 Jan 2003 15:17:30 +0100
    93  * Added support for the Atari platform
    94 Ryan C. Gordon - Fri Dec 27 10:14:07 EST 2002
    95  * Patch from Steven Fuller to fix panning effect with 8-bit sounds.
    96 Ryan C. Gordon - Thu Jan  2 12:31:48 EST 2003
    97  * Patch from guy on 3DRealms forums to fix native win32 midi volume.
    98 Ryan C. Gordon - Wed Oct 30 07:12:06 EST 2002
    99  * Small, looping music samples should now be able to fade out correctly.
   100 Sam Lantinga - Sun Oct 20 20:52:24 PDT 2002
   101  * Added shared library support for MacOS X
   102 Pete Shinners - Wed Oct 16 17:10:08 EDT 2002
   103  * Correctly report an error when using an unknown filetype
   104 Vaclav Slavik - Sun Sep  8 18:57:38 PDT 2002
   105  * Added support for loading Ogg Vorbis samples as an audio chunk
   106 Martin Storsjö - Tue Jul 16 10:38:12 PDT 2002
   107  * Fixed to start playing another sample immediately when one finishes
   108 Martin Storsjö - Tue May 28 13:08:29 PDT 2002
   109  * Fixed a volume bug when calling Mix_HaltChannel() on unused channel
   110 Xavier Wielemans - Wed Jun 12 14:28:14 EDT 2002
   111  * Fixed volume reset bug at end of channel fade.
   112 Ryan C. Gordon - Wed Jun 26 16:30:59 EDT 2002
   113  * Mix_LoadMUS() will now accept an MP3 by file extension, instead of relying
   114     entirely on the magic number.
   115 
   116 1.2.4:
   117 Sam Lantinga - Mon May 20 09:11:22 PDT 2002
   118  * Updated the CodeWarrior project files
   119 Sam Lantinga - Sun May 19 13:46:29 PDT 2002
   120  * Added a function to query the music format: Mix_GetMusicType()
   121 Sam Lantinga - Sat May 18 12:45:16 PDT 2002
   122  * Added a function to load audio data from memory: Mix_QuickLoad_RAW()
   123 Sam Lantinga - Thu May 16 11:26:46 PDT 2002
   124  * Cleaned up threading issues in the music playback code
   125 Ryan Gordon - Thu May  2 21:08:48 PDT 2002
   126  * Fixed deadlock introduced in the last release
   127 
   128 1.2.3:
   129 Sam Lantinga - Sat Apr 13 07:49:47 PDT 2002
   130  * Updated autogen.sh for new versions of automake
   131  * Specify the SDL API calling convention (C by default)
   132 Ryan Gordon - Sat Apr 13 07:33:37 PDT 2002
   133  * Fixed recursive audio lock in the mixing function
   134 jean-julien Filatriau - Sat Mar 23 18:05:37 PST 2002
   135  * Fixed setting invalid volume when querying mixer and music volumes
   136 Guillaume Cottenceau - Wed Feb 13 15:43:20 PST 2002
   137  * Implemented Ogg Vorbis stream rewinding
   138 Peter Kutak - Wed Feb 13 10:26:57 PST 2002
   139  * Added native midi support on Linux, using GPL code
   140 	--enable-music-native-midi-gpl
   141 Pete Shinners - Mon Jan 14 11:31:26 PST 2002
   142  * Added seek support for MP3 files
   143 Ryan Gordon - Mon Jan 14 11:30:44 PST 2002
   144  * Sample "finished" callbacks are now always called when a sample is stopped.
   145 
   146 1.2.2:
   147 Guillaume Cottenceau - Wed Dec 19 08:59:05 PST 2001
   148  * Added an API for seeking in music files (implemented for MOD and Ogg music)
   149 	Mix_FadeInMusicPos(), Mix_SetMusicPosition()
   150  * Exposed the mikmod synchro value for music synchronization
   151 	Mix_SetSynchroValue(), Mix_GetSynchroValue()
   152 
   153 1.2.1:
   154 Yi-Huang Han - Wed Oct 24 21:55:47 PDT 2001
   155  * Fixed MOD music volume when looping
   156 David Hedbor - Thu Oct 18 10:01:41 PDT 2001
   157  * Stop implicit looping, set fade out and other flags on MOD files
   158 Sam Lantinga - Tue Oct 16 11:17:12 PDT 2001
   159  * The music file type is now determined by extension as well as magic
   160 Ryan C. Gordon - Tue Sep 11 12:05:54 PDT 2001
   161  * Reworked playwave.c to make it more useful as a mixer testbed
   162  * Added a realtime sound effect API to SDL_mixer.h
   163  * Added the following standard sound effects:
   164 	panning, distance attenuation, basic positional audio, stereo reversal
   165  * Added API for mixer versioning: Mix_Linked_Version() and MIX_VERSION()
   166 Sam Lantinga - Tue Sep 11 11:48:53 PDT 2001
   167  * Updated MikMod code to version 3.1.9a
   168 Torbjörn Andersson - Tue Sep 11 11:22:29 PDT 2001
   169  * Added support for loading AIFF audio chunks
   170 Max Horn - Tue Sep  4 20:38:11 PDT 2001
   171  * Added native MIDI music support on MacOS and MacOS X
   172 Florian Schulze - Sun Aug 19 14:55:37 PDT 2001
   173  * Added native MIDI music support on Windows
   174 Sam Lantinga - Sun Aug 19 02:20:55 PDT 2001
   175  * Added Project Builder projects for building MacOS X framework
   176 Darrell Walisser - Sun Aug 19 00:47:22 PDT 2001
   177  * Fixed compilation problems with mikmod under MacOS X
   178 Torbjörn Andersson - Sun, 19 Aug 2001 16:03:30
   179  * Fixed AIFF music playing support
   180 Sam Lantinga - Sat Aug 18 04:14:13 PDT 2001
   181  * Fixed building Ogg Vorbis support on Windows
   182 Ryan C. Gordon - Thu, 7 Jun 2001 13:15:51
   183  * Added Mix_ChannelFinished() and Mix_GetChunk()
   184 Ryan C. Gordon - Tue, 5 Jun 2001 11:01:51
   185  * Added VOC sound file support
   186 Guillaume Cottenceau - Thu May 10 11:17:55 PDT 2001
   187  * Fixed crashes when API used with audio not initialized
   188 Paul Jenner - Sat, 14 Apr 2001 09:20:38 -0700 (PDT)
   189  * Added support for building RPM directly from tar archive
   190 
   191 1.2.0:
   192 Sam Lantinga - Wed Apr  4 12:42:20 PDT 2001
   193  * Synchronized release version with SDL 1.2.0
   194 
   195 1.1.1:
   196 John Hall - Tue Jan  2 13:46:54 PST 2001
   197  * Added support to playmus for track switching with Ctrl-C
   198  * Added support to playmus for multiple command line files
   199 
   200 1.1.0:
   201 Sam Lantinga - Wed Nov 29 20:47:13 PST 2000
   202  * Package specifically for SDL 1.1 (no real reason API-wise, but for clarity)
   203 
   204 1.0.7:
   205 Sam Lantinga - Tue Nov  7 10:22:09 PST 2000
   206  * Fixed hang in mikmod re-initialization
   207 Stephane Peter - Oct 17 13:07:32 PST 2000
   208  * Fixed music fading
   209 Ray Kelm - Fri, 04 Aug 2000 20:58:00 -0400
   210  * Added support for cross-compiling Windows DLL from Linux
   211 
   212 1.0.6:
   213 Sam Lantinga - Sun Jul  2 14:16:44 PDT 2000
   214  * Added support for the Ogg Vorbis music format: http://www.vorbis.org/
   215 Darrell Walisser - Wed Jun 28 11:59:40 PDT 2000
   216  * Added Codewarrior projects for MacOS
   217 Sam Lantinga - Mon Jun 26 12:01:11 PDT 2000
   218  * Fixed symbol aliasing problem with "channel"
   219 Matt - Wed, 12 Apr 2000 15:36:13 -0700
   220  * Added SDL_RWops support for mikmod loading (not hooked into music.c yet)
   221 
   222 1.0.5:
   223 Paul Furber - Fri Mar  3 14:58:50 PST 2000
   224  * Fixed MP3 detection with compilers that use signed char datatypes
   225 
   226 1.0.4:
   227 Sam Lantinga - Thu Feb 10 19:42:03 PST 2000
   228  * Ported the base mixer and mikmod libraries to MacOS
   229 Markus Oberhumer - Wed Feb  2 13:16:17 PST 2000
   230  * Fixed problem with short looping sounds
   231 Sam Lantinga - Tue Feb  1 13:25:44 PST 2000
   232  * Added Visual C++ project file
   233 Markus Oberhumer - Tue Feb  1 13:23:11 PST 2000
   234  * Cleaned up code for compiling with Visual C++
   235  * Don't hang in Mix_HaltMusic() if the music is paused
   236 Sam Lantinga - Fri Jan 28 08:54:56 PST 2000
   237  * Fixed looping WAVE chunks that are not aligned on sample boundaries
   238 
   239 1.0.3:
   240 Sam Lantinga - Mon Jan 17 19:48:09 PST 2000
   241  * Changed the name of the library from "mixer" to "SDL_mixer"
   242  * Instead of including "mixer.h", include "SDL_mixer.h",
   243  * Instead of linking with libmixer.a, link with libSDL_mixer.a
   244 
   245 1.0.2:
   246 Sam Lantinga - Fri Jan 14 11:06:56 PST 2000
   247  * Made the CHANGELOG entries Y2K compliant. :)
   248 MFX -	Updated the mikmod support to MikMod 3.1.8
   249 MFX -	Added Mix_HookMusicFinished() API function
   250 
   251 1.0.1:
   252 SOL -	Added a post-mixing callback
   253 SP  -	A few music-related bugfixes
   254 
   255 1.0.0:
   256 SOL -   Added autoconf support
   257 SP  -   Added MP3 support using SMPEG
   258 SP  -   Added fading in/out of music and samples
   259 SP  -   Added dynamic allocation of channels
   260 SP  -   Added channel grouping functions
   261 SP  -   Added expiration delay for samples
   262 
   263 Initial Key:
   264 SOL - Sam Lantinga (hercules@lokigames.com)
   265 SP  - Stephane Peter (megastep@lokigames.com)
   266 MFX - Markus Oberhumer (markus.oberhumer@jk.uni-linz.ac.at)