/
CHANGELOG
344 lines (340 loc) · 22.6 KB
1
2
3
4
/*
* CHANGELOG.
*/
5
6
10102003 - Changed some SDL_Error()s to __Sound_SetError() in new DLS code
to fix linking issues.
7
8
10052003 - Fixed memory corruption when freeing DLS instruments,
and bug when timidity is initialized multiple times (Thanks, Sam!).
9
09252003 - Sam Lantinga added support for DLS instruments to the MIDI decoder.
10
09132003 - Happy September. Added Speex (.spx) decoder.
11
08052003 - Fixed MIDI decoder on bigendian systems.
12
13
03102003 - Never actually created samplelist_mutex (Thanks, Glenn Maynard!).
01302003 - Patches to make SDL_sound more Visual C happy (Thanks, Eric!).
14
15
01122003 - Fix to smpeg.c's rewinding code (Thanks, Eric). Put Visual C 6
project files in CVS, without external binaries (Thanks, Eric).
16
17
18
12212002 - Fixed ogg.c to decode a full buffer at a time instead of one ogg
packet per call, and mikmod has a check during initialization to
prevent a clash with SDL_mixer (Thanks, Eric).
19
20
12092002 - Changed Sound_Init()'s call to SDL_Init() to SDL_InitSubSystem(),
to prevent unwanted use of the SDL parachute (thanks, Glenn).
21
10092002 - Fixed a "make dist" issue and upped version to 1.0.0! Woohoo!
22
23
24
25
09302002 - libFLAC broke their API (again!) for version 1.0.4. That was the
last straw. I ripped the version detection and obsolete FLAC
support out, so you need libFLAC 1.0.4 for that decoder now (and
they'll probably break the API again for 1.0.5. Argh).
26
09262002 - Happy September. Fixed SDLCALL issues in SDL_sound.h, so it should
27
28
work with Win32/WinCE builds again. I hope. Merged latest altcvt
from Frank into CVS.
29
30
31
08222002 - Borland project files in CVS, thanks to Dominique Louis. There are
project files for C++ Builder 6 (Windows), C++ Builder for Linux
(aka Kylix 3) and Borland's C++ Command line compiler.
32
08172002 - Timidity memory leak cleanup by Torbjörn.
33
07292002 - Valgrind cleanups; memory leak patches, etc.
34
35
36
07212002 - done_flag was not being reset between files in playsound, so the
first file would playback, and then any following tracks in a given
run would "finish" immediately. Fixed.
37
07132002 - More altcvt fixes from Frank Ranostaj.
38
07122002 - Changed inline keyword to compile universally.
39
40
07102002 - Fixed a bug in command line handling in playsound.c. Fixes from
Torbjörn and myself to get flac.c friendly between versions of
41
libFLAC. Mutex'd a potential race condition in decoders/modplug.c.
42
FIXME cleanups here and there.
43
07092002 - Fixed typo in documentation (SDL_sound.h).
44
07052002 - Cleaned up some stuff in playsound.c, removing some FIXMEs.
45
Commandline validation is improved, too. FIXME removal in
46
47
voc.c; should report i/o errors correctly now. Changed DECLSPEC
to SNDDECLSPEC to prevent SDL conflict, and added SDLCALL support.
48
49
Removed all instances of Sound_SetError()...now they are either
__Sound_SetError or BAIL*_MACRO.
50
07022002 - Added WinCE support pack to website, updated INSTALL with CE info.
51
More altcvt fixes from Frank Ranostaj.
52
53
54
55
56
57
58
07012002 - Fixed configure.in to work around bug in older autoconfs. Started
merging Tyler's WinCE (PocketPC) port. Added checks for assert.h
and signal.h to configure.in/config.h.in, and #if HAVE_*_H checks
where appropriate in the code. Moved #include <assert.h> (along
with the HAVE_ASSERT_H check) to SDL_sound_internal.h, and removed
unnecessary #includes from the individual source files. Added
"md_reverb = 1;" to MIKMOD_init(). Modplug got some WinCE-specific
59
60
setting tweaks, and some settings maintanance code. configure.in
checks if setbuf() is available.
61
06292002 - More altcvt fixes from Frank Ranostaj...mostly working now?
62
06252002 - More altcvt fixes from Frank Ranostaj.
63
06132002 - Patch from Torbjörn to fix stereo AIFF files.
64
06212002 - More altcvt fixes from Frank Ranostaj.
65
06132002 - Patch from Torbjörn to make the WAV decoder more tolerant.
66
06122002 - Committed some altcvt enhancements from Frank Ranostaj.
67
06112002 - Fixed some debug messages in smpeg.c and mpglib.c.
68
69
70
06072002 - Manpages! Finally installed Doxygen and scratched together a
Doxyfile. After some revision to physfs.h, we've got a rather
nice API reference.
71
06062002 - Added URLs for official and unofficial versions of ModPlug in
72
decoders/modplug.c. Cleaned up some FIXMEs.
73
05222002 - Torbjörn sent in some more fixes for altcvt: mono to stereo
74
conversion works, now.
75
76
77
05222002 - Torbjörn sent in some initial cleanups and fixes for altcvt, and
fixed a bug in playsound when not all three of --rate, --channels
and --format are specified.
78
79
80
81
05202002 - Some .cvsignores from Max and me. Added a seek implementations for
the SMPEG, ogg, aiff, wav-adpcm, voc, and au decoders. Added a seek
stub to quicktime.c. playsound now takes milliseconds in the seek
lists: --seek "00:00:400" or whatnot. Corrected playsound's usage
82
83
84
85
86
text. Other au.c cleanups for extra robustness. Added an
experimental audio converter that Frank Ranostaj sent to the SDL
mailing list about a month ago: enable it with --enable-altcvt at
configure time, but be warned that it doesn't work very well right
now.
87
04292002 - Darrell Walisser updated the Mac Classic and OS X project
88
files, fixed some portability issues, and added an
89
90
experimental decoder that uses Apple's QuickTime libraries
(see decoders/quicktime.c). I've included the Mac project files
91
in CVS, now. Removed all use of alloca() from playsound.
92
04242002 - Added --seek option and bugfixes to playsound.c. Torbjörn comes
93
94
95
96
through with seek support for the FLAC, MIDI, and ModPlug
decoders (and some stub code for MikMod), and a bugfix for sample
flag manipulation in the base library (and his own --seek code for
playsound, which unfortunately we're not using).
97
98
99
100
101
102
04232002 - Cleaned up the playsound command line handling. Most command line
options (--rate, --format, --predecode, etc) are specified per-file
and reset to their defaults after each sample is played back.
--loop now takes a numeric argument: --loop 2 will playback the
sample three times (one playback and two loops). Added Darrell
to the playsound credits.
103
04212002 - Initial work to add a Sound_Seek() API. Removed the NEEDSEEK
104
105
106
sample flag (replaced it with CANSEEK). Hack to change the internal
Sound_SetError() function to __Sound_SetError(). Added internal
function __Sound_convertMsToBytePos().
107
04082002 - Cleaned up the archive support in playsound a little bit, and
108
fixed a PhysicsFS bug in the process.
109
110
111
03252002 - Win32 patches and fixes from Tyler Montbriand: handled "inline"
keyword, fixed SNDDBG macros in mpglib, and renamed a conflicting
file (decoders/mpglib/common.c to decoders/mpglib/mpglib_common.c).
112
03172002 - Removed an unneeded #include in mpglib that broke build on BeOS.
113
114
115
mpglib seems to work find on BeOS. Reworked some of mpglib.c so we
can determine the audio format when accepting the data stream. Some
other minor cleanups here and there.
116
117
03162002 - Tied the PhysicsFS code into the build system (code disabled if
physfs not found or --disable-physfs passed to ./configure.)
118
119
120
03152002 - Added PhysicsFS support to playsound, so you can play sound files
that are in ZIP files without unzipping them. Needs to be merged
into build system (I was just testing my PhysFS->RWops glue code).
121
03142002 - Changed configure script's --enable-vorbis to --enable-ogg. Removed
122
123
124
global state variable from mpglib, so it should be reentrant now
(patches sent to mpglib's actual maintainer). playsound can now
read from stdin.
125
126
127
128
129
130
131
03102002 - Added a FIXME note to decoders/mpglib.c. playsound now reports
errors in the thread where they occured, which also fixes a double
report of errors during predecoding. Removed all calls to exit() in
mpglib. These calls now report errors correctly to SDL_sound, which
passes them on to the application (patch also sent to mpglib's
actual maintainer). Replaced all stderr chatter in mpglib with
Sound_SetError() calls.
132
03072002 - decoders/mpglib.c now disregards ID3 tags instead of passing them
133
134
135
on as valid MP3 data to mpglib. Added some (buggy) example code for
adjusting an audio stream's volume (via the new --volume command
line in playsound).
136
137
03032002 - Fixed mpglib's build configuration to include general build flags
so that things like --enable-debug work as expected.
138
139
140
02212002 - Changed SMPEG's URL to point to the icculus.org site. Added an
mpglib decoder (internal to SDL_sound; relies on no external libs)
and changes mp3.c to smpeg.c (and other associated things).
141
02112002 - Committed a patch from Torbjörn to fix incorrect memory accesses
142
143
in the Timidity code. Changed the magic number in the AU decoder
to be bigendian (seems appropriate). Updated README for
144
145
completeness, and TODO for accuracy. Darrell sent in updated
MacOS X Project Builder files (on the website).
146
147
02072002 - Committed a patch Torbjörn sent in awhile ago for preventing
confusion with Timidity++-specific stuff in the timidity.cfg file.
148
149
Tyler Montbriand sent in an updated Visual C package.
Updated SDL_sound.h's comments a little. Upped version to 0.1.5.
150
151
152
02052002 - Fixed a cleanup I broke last night. Added CWProject.sit to the
EXTRA_DIST section of Makefile.am, and updated the README with
MacOS (9/X) install instructions.
153
154
155
156
02042002 - Darrell Walisser submitted some cleanups and CodeWarrior project
files for MacOS 9. Sweet!
01232002 - Max fixed decoders/Makefile.am to work with seperate build
directories, and corrected some dates in this file.
157
01192002 - Torbjörn sent in patches implementing the rewind method for the
158
rest of the decoders except shn.c, for which I added a kludged
159
160
161
162
163
164
165
implementation. Added more info to the README. Hunted down the
reason why SMPEG can't decode before calling SDL_OpenAudio(), and
it can't be fixed without a change to SMPEG (not MY fault! :) ).
Made ModPlug take priority over MikMod when selecting a decoder.
Mutex-protected the internal samples list, and fixed some bugs in
the management of that list. Changed some stuff to use uniform
coding conventions.
166
01182002 - SDL_sound/playsound builds and runs on BeOS now. Fixed an assertion
167
bug I introduced yesterday.
168
169
170
171
01172002 - Implemented Sound_Rewind(), and added a --loop command line to
playsound for testing. Rewrote the audio callback to handle looping
with both predecoded and streamed samples. Most of the decoders
just have an assert(0) in their internal rewinding method at this
172
173
174
point. I implemented the WAV, VOC, AU, AIFF, and RAW ones, for now.
(...and skeleton.c, for what that's worth.) A few tweaks in the
core API implementation to fix unlikely but possible leaks.
175
01112002 - Mattias Engdegård sent in an .AU decoder. Nice! He also tweaked
176
177
178
playsound to try and wait until SDL has completed playing a given
sound before closing the audio device. Changed a macro in
decoders/shn.c to be more uniform with the other decoders.
179
180
SDL_sound error messages are now maintained on a per-thread basis,
and do not interfere with SDL_[GS]etError() anymore.
181
182
01112002 - Committed the rest of Torbjörn's MOD patches, to clean up file
extension handling.
183
184
185
186
187
188
189
190
191
01092002 - Torbjörn comes through with a ModPlug-based decoder, which should
work nicely for decoding multiple .MODs at once. Now we need to
figure out what to do with two decoders that can decode the same
file. For now, if you explicitly want either MikMod or ModPlug, you
should explicitly enable one decoder and disable the other on the
configure command line ("--enable-modplug --disable-mikmod", for
example), otherwise configure will try to sort out the best one for
your system. Choice is a wonderful thing. :)
01042002 - Forgot to bump playsound's version to match SDL_sound's. Fixed.
192
Added some notes to the top of COPYING about other libraries, etc.
193
A real MIDI decoder (using a hacked version of the hacked version
194
195
of Timidity from SDL_mixer) is now in place and working well,
thanks to Torbjörn.
196
01012002 - Happy New Year. Added some debug output to wav.c for future
197
198
codecs (GSM comes to mind). Fixed the SMPEG decoder's URL to point
to Loki's webpage.
199
12302001 - Upped version to 0.1.4.
200
201
202
203
204
205
206
12272001 - Added --audiobuf and --decodebuf options to playsound to make
tracking down a bug in the ADPCM decoder easier (plus, it could
help for benchmarking, etc later on...). Found a printf() bug in
playsound (extra comma in there...). ADPCM decoder appears to be
functional now. Tried to add ElectricFence support to
configure.in, and failed. All this libtool/autoconf stuff makes my
head hurt.
207
12262001 - Changed remaining references to the "LICENSE" file into "COPYING".
208
209
210
Work progresses on the ADPCM-compressed .wav decoder. Updates to
the documentation in SDL_sound.h. Hhmm...find_chunk() in wav.c was
badly broken. Fixed.
211
212
213
214
12162001 - FLAC decoder now checks for the magic number unless the file
extension is recognized. This was changed back because searching
for metadata, while probably more effective, is VERY expensive (and
useless) on non-FLAC streams.
215
216
12052001 - Put our names in a "--credits" option in playsound, and put the
standard GNU disclaimers in there too, for good measure. Renamed
217
LICENSE to COPYING to match GNU standards more closely (and to
218
219
220
end Max's torment. :) ) Tweaks to wav.c, and work on aiff.c to
make it easier to support multiple audio formats (for compression
handling later down the road).
221
222
223
224
11302001 - Torbjörn and I make Sound_DecodeAll() more robust: checks for
previous decoding failures and sets an appropriate error, handles
decoders that change their buffers on the fly (such as the FLAC
decoder), and deals with out-of-memory conditions more gracefully.
225
226
227
228
229
230
231
11252001 - (With thanks to Andreas Umbach for pointing it out) Fixed some
problems with Sound_DecodeAll(). For local testing of this bug,
added a --predecode command line to playsound. Minor fixes to
theoretical bugs in Sound_FreeSample(). playsound no longer
buffers stdout and stderr. Updated Sound_DecodeAll()'s comments in
SDL_sound.h ...
11192001 - FLAC decoder cleanups from Torbjörn.
232
233
234
11092001 - Torbjörn fixes playsound's audio callback after I broke it, again.
A bug in configure.in was preventing SMPEG from being used unless
--enable-debug was set; fixed. Changed this file to list latest
235
236
changes first. Torbjörn submitted a FLAC decoder that utilizes
libFLAC (http://flac.sf.net/). Cool.
237
238
239
240
241
242
243
244
245
11012001 - API COMPATIBILITY BREAKAGE: Decoders can now list multiple file
extensions each. Playsound has been updated to handle this.
Playsound now registers a SIGINT handler, so you can skip tracks
and/or abort the way that mpg123 does.
10232001 - Rewrote playsound.c's audio_callback() to no longer need the
overflow buffer hack, which streamlines it a little and trims the
memory requirements for playsound by about 16 kilobytes.
10172001 - Torbjörn catches a problem with the overflow buffer in playsound's
audio callback.
246
247
248
249
10152001 - Torbjörn sends in a default sample format for the MIDI decoder,
and the starts of the audio conversion funcitonality (ripped
from SDL). Officially released 0.1.3. Added LICENSE and
CHANGELOG to the distribution. (Again, from Torbjörn) added in
250
the start of a tweaked audio converter.
251
10122001 - Torbjörn Andersson submitted command line enhancements to
252
253
254
255
playsound, and I cleaned up the --help output.
10092001 - Patches to shn.c for Visual C compatibility. Visual C project files
available from the website. Changed Corona688 to Tyler Montbriand
in CREDITS. Upped version to 0.1.3.
256
10082001 - Restructured decoders/wav.c to allow for multiple formats, and
257
258
put the start of a handler for the ADPCM format in place.
10072001 - Changed the way decoders/mod.c handles samplerate so that it should
259
work universally. This isn't an ideal solution, but it's probably
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
the best we can do without rewriting mikmod. Made a change to ogg.c
for portability: changed an int64_t to ogg_int64_t.
10062001 - Made a change to SDL_sound.c for compiling on non-GNU toolchains.
10052001 - Removed #include "SDL_endian" from aiff.c.
10042001 - Changed some #if (defined SOUND_SUPPORTS_*) lines to
#ifdef SOUND_SUPPORTS_* in voc.c and shn.c, for consistency with
the other decoders.
10032001 - After hours of tracking down a bogus pointer, the SHN decoder works!
I can die happy. :) Max placated me with an --enable-debug option
so I could stop my whining. Other autoconf goodies (such as
reenabling -Werror for debug builds, etc). Torbjörn brings in a
MIDI decoder, which reads from a Timidity process through a pipe.
Changed playsound to open the audio device to match the properties
of each sound file, which results in less conversion (and therefore,
more chance of correct playback).
275
10022001 - Changed a comment in mod.c to not refer to "the mikmod
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
directory" anymore. Committed Torbjörn's patch for MP3 detection.
(better late than never). __Sound_strcasecmp() now handles NULL
strings gracefully, fixing the crash with "playsound bootstrap".
More work on the SHN decoder.
10012001 - Fixed a memory leak that Torbjörn found in the MOD decoder.
09252001 - More autoconf work. Gave Max Horn write access to the CVS
repository, so I don't drive him nuts tweaking this thing. :)
Fixed a const complaint and some other stuff needed for compilation
under Visual C++ 6.0 (no, it isn't ported yet). Put the SHN source
in CVS, even though it isn't ready (and doesn't even compile). Do
NOT enable it in your build!
09242001 - Thank goodness, Torbjörn came through with the MP3 fix. Apparently
SMPEG mixes each chunk of decoded data with whatever is already
in the buffer you give it. I hate that. I'm going to patch SMPEG
to let the programmer enable and disable that behaviour in a given
(SMPEG *), since it's just a CPU eater in this case. The _D(())
macro is now SNDDBG(()), since _D is taken on MacOS X's version of
gcc (which was bound to happen on some platform sooner than later
anyhow). Renamed test_sdlsound to playsound, and made it more
robust in general: fixed potential overflow in audio_callback,
made it chatter less, made it take multiple files and some other
command lines. Initial autoconf support, thanks to Max Horn.
09222001 - Torbjörn Andersson strikes again, with a collection of patches.
First, some cosmetic tweaks for decoders/aiff.c. Next, a MOD player
based on MikMod. This inspired me to add two more methods to
Sound_DecoderFunctions: init() and quit(). Third, a fix to
decoders/mp3.c so that SMPEG won't claim every stream it sees, MP3
or not. I removed the multiple-streams-per-rwops code, after
discussion on the mailing list. The init() and quit() methods
led to the possibility that certain decoders will flag themselves
as unavailable at runtime, and SDL_sound now handles this.
Added [LIB|INC]PATH_[OGG|MOD]. Bigendian fixes; now works on
PowerPC Linux. MikMod tweaks. Changed version to 0.1.2.
09202001 - Torbjörn Andersson submitted several patches: fixed a comment in
the .WAV decoder (whoops...screwed up my own search-and-replace.
Hah.), made an attempt at putting multiple sound streams behind
one RWops (gotta think on that one first), and, most importantly,
added an AIFF decoder, which is very cool.
314
315
316
317
318
319
320
09192001 - Added a skeleton decoder source file. Changed voc_read() to
voc_read_waveform(), so it wouldn't be confused with VOC_read().
Fixed a byte ordering bug in voc.c (reported as AUDIO_S16LSB, but
we were swapping byte order of data ourselves. Fixed). Added basic
.WAV support. Fixed Makefile so that -I. is always first;
otherwise, a previously installed header might get used for the
compiles, which is not good. SDL_sound.h now includes SDL_endian.h,
321
322
323
324
325
326
327
since SDL.h doesn't, for some reason. Moved version defines in
SDL_sound.h to top of file so I can find them. :)
Changed version to 0.1.1. Committed patch from Tsuyoshi Iguchi to
fix a segfault (I forgot to put a NULL terminator at the end of
the available_decoders array), fixing the only bug preventing the
test program from running on FreeBSD 4.3. Sweet. Added Ogg Vorbis
decoder. Rewrote the test program's SDL audio callback to be more
328
robust (Ogg exposed a nasty bug in it). Fixed a byte-ordering issue
329
in the VOC decoder.
330
331
332
333
334
335
336
337
338
339
09182001 - Implemented MP3 support through SMPEG (not working yet, though) and
wrote the Reference Counting RWops wrapper. Added other little
things like the _D(()) macro. Added VOC support, which went up with
surprisingly little struggle, which means it MUST be leaking
memory. :)
09172001 - Changed some overlooked "voice" to "sound". Implemented base API.
So...tired. Everything's different. :)
Also put in a RAW decoder and a simple test program.
09142001 - Changed name to SDL_sound, added Sound_DecodeAll() to spec.
09132001 - Initial spec proposed on SDL mailing list, under name "SDL_voice".
340
341
342
343
--ryan. (icculus@clutteredmind.org)
/* end of CHANGELOG ... */