annotate CREDITS @ 474:c66080364dff

Most decoders now report total sample play time, now. Technically, this breaks binary compatibility with the 1.0 branch, since it extends the Sound_Sample struct, but most (all?) programs are just passing pointers allocated by SDL_sound around, and might be okay. Source-level compatibility is not broken...yet! :) --ryan. -------- Original Message -------- Subject: SDL_sound patch: Finding total length of time of sound file. Date: Sun, 26 Jan 2003 09:31:17 -0800 (PST) Hi Ryan, I am working with Eric Wing and helping him modify SDL_sound. AS part of our efforts in improving and enhancing SDL_sound, we like to submit this patch. We modified the codecs to find the total time of a sound file. Below is the explanation of the patch. The patch is appended as an attachment to this email. * MOTIVATION: We needed the ability to get the total play time of a sample (And we noticed that we're not the only ones). Since SDL_sound blocks direct access to the specific decoders, there is no way for a user to know this information short of decoding the whole thing. Because of this, we believe this will be a useful addition, even though the accuracy may not be perfect (subject to each decoder) or the information may not always be available. * CONTRIBUTORS: Wesley Leong (modified the majority of the codecs and verified the results) Eric Wing (showed everyone how to do modify codec, modified mikmod) Wang Lam (modified a handful of codecs, researched into specs and int overflow) Ahilan Anantha (modified a few codecs and helped with integer math) * GENERAL ISSUES: We chose the value to be milliseconds as an Sint32. Milliseconds because that's what Sound_Seek takes as a parameter and -1 to allow for instances/codecs where the value could not be determined. We are not sure if this is the final convention you want, so we are willing to work with you on this. We also expect the total_time field to be set on open and never again modified by SDL_sound. Users may access it directly much like the sample buffer and buffer_size. We thought about recomputing the time on DecodeAll, but since users may seek or decode small chunks first, not all the data may be there. So this is better done by the user. This may be good information to document. Currently, all the main codecs are implemented except for QuickTime.
author Ryan C. Gordon <icculus@icculus.org>
date Sat, 08 May 2004 08:19:50 +0000
parents 63a75d588043
children c5f184b4b2cd
rev   line source
30
66ff8562eec0 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 4
diff changeset
1 ----------------------
66ff8562eec0 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 4
diff changeset
2 | SDL_sound credits. |
66ff8562eec0 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 4
diff changeset
3 ----------------------
66ff8562eec0 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 4
diff changeset
4
4
341cea3e13c6 Initial add.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
5 Initial API interface and implementation,
341cea3e13c6 Initial add.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
6 RAW driver,
30
66ff8562eec0 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 4
diff changeset
7 VOC driver,
295
5a7d5055823d Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 244
diff changeset
8 SMPEG driver,
5a7d5055823d Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 244
diff changeset
9 MPGLIB driver,
30
66ff8562eec0 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 4
diff changeset
10 WAV driver,
66ff8562eec0 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 4
diff changeset
11 OGG driver,
160
28c1e3ce2ed4 Forgot to add the SHN decoder...
Ryan C. Gordon <icculus@icculus.org>
parents: 159
diff changeset
12 SHN driver,
228
daa18455baf9 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 160
diff changeset
13 Unix support,
daa18455baf9 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 160
diff changeset
14 BeOS support:
4
341cea3e13c6 Initial add.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
15 Ryan C. Gordon
341cea3e13c6 Initial add.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
16
30
66ff8562eec0 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 4
diff changeset
17 Bug fixes,
66ff8562eec0 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 4
diff changeset
18 FreeBSD testing:
66ff8562eec0 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 4
diff changeset
19 Tsuyoshi Iguchi
66ff8562eec0 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 4
diff changeset
20
36
b2313d8c27cf Added Torbj�rn Andersson.
Ryan C. Gordon <icculus@icculus.org>
parents: 30
diff changeset
21 Code cleanups,
304
0cf2b2e4a259 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 295
diff changeset
22 SMPEG fixes,
55
8f0e28b7b28c Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 36
diff changeset
23 AIFF driver,
159
844364c50790 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 129
diff changeset
24 MikMod driver,
228
daa18455baf9 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 160
diff changeset
25 MIDI driver,
daa18455baf9 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 160
diff changeset
26 ModPlug driver,
159
844364c50790 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 129
diff changeset
27 FLAC driver:
67
78da63951b29 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 55
diff changeset
28 Torbjörn Andersson
78da63951b29 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 55
diff changeset
29
159
844364c50790 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 129
diff changeset
30 autoconf,
844364c50790 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 129
diff changeset
31 MacOS X support:
67
78da63951b29 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 55
diff changeset
32 Max Horn
36
b2313d8c27cf Added Torbj�rn Andersson.
Ryan C. Gordon <icculus@icculus.org>
parents: 30
diff changeset
33
127
21c73fafde50 Added Corona688. (What this person's real name?)
Ryan C. Gordon <icculus@icculus.org>
parents: 67
diff changeset
34 win32 support,
377
cbb15ecf423a WinCE (PocketPC) patches from Tyler.
Ryan C. Gordon <icculus@icculus.org>
parents: 339
diff changeset
35 PocketPC support,
127
21c73fafde50 Added Corona688. (What this person's real name?)
Ryan C. Gordon <icculus@icculus.org>
parents: 67
diff changeset
36 other fixes:
129
c04895f5acb2 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 127
diff changeset
37 Tyler Montbriand
127
21c73fafde50 Added Corona688. (What this person's real name?)
Ryan C. Gordon <icculus@icculus.org>
parents: 67
diff changeset
38
228
daa18455baf9 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 160
diff changeset
39 AU driver,
daa18455baf9 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 160
diff changeset
40 Mattias Engdegård
daa18455baf9 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 160
diff changeset
41
319
4a2cd7d4aa06 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 304
diff changeset
42 MacOS Classic support,
4a2cd7d4aa06 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 304
diff changeset
43 quicktime decoder,
4a2cd7d4aa06 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 304
diff changeset
44 OS X fixes:
244
f8ac7389f3a0 Added Darrell Walisser to credits.
Ryan C. Gordon <icculus@icculus.org>
parents: 228
diff changeset
45 Darrell Walisser
f8ac7389f3a0 Added Darrell Walisser to credits.
Ryan C. Gordon <icculus@icculus.org>
parents: 228
diff changeset
46
339
e3ac0d41668c Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 319
diff changeset
47 Alternate audio conversion code:
e3ac0d41668c Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 319
diff changeset
48 Frank Ranostaj
e3ac0d41668c Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 319
diff changeset
49
413
4a0829038968 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 377
diff changeset
50 Initial Borland C++ project files:
4a0829038968 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 377
diff changeset
51 Dominique Louis
4a0829038968 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 377
diff changeset
52
435
63a75d588043 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 413
diff changeset
53 Bugfixes and stuff:
63a75d588043 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 413
diff changeset
54 Eric Wing
63a75d588043 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 413
diff changeset
55
4
341cea3e13c6 Initial add.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
56 Other stuff:
341cea3e13c6 Initial add.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
57 Your name here! Patches go to icculus@clutteredmind.org ...
341cea3e13c6 Initial add.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
58
341cea3e13c6 Initial add.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
59 /* end of CREDITS ... */
341cea3e13c6 Initial add.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
60