[sdlsound] Module formats don't repeat correctly

Like I said, dissenting opinions aside. It would be dumb for me to sit
here and argue over formats. Which format is hot right now is of no
importance. The formats do different things; it's that simple. Here's
why I'm presently uninterested in using Vorbis instead of modules:
Firstly, of course, it's straightforward to convert the substantive
portions of a module file to Vorbis, but it's overkill to do so; a
Vorbis file ripped from an IT tends to end up larger. (This point
doesn't matter to those who produce music using something other than a
mod tracker, but I actually have nothing else at my disposal.)
Secondly, modules contain a great deal more semantic information. The
formats contain simple looping and jumping mechanisms that are necessary
to execute the typical game music idiom of infinitely looping all of a
song except for a specified intro portion (revenge_of_cats.it is an
example). As I recall, many Amiga games (and a few DOS games) actually
exploited this mechanism to place the entire game soundtrack into a
single module file, specifying different starting points for each
round/level and using jump commands to loop the piece instead of playing
through to the next song.
Thirdly (or secondly part B), unlike waveform music, it is possible to
programmatically scale up the tempo of a module song without ruining the
pitch (think Tetris or Puyo Puyo once the pieces get stacked too high
for comfort).
I wouldn't think these are by any means compelling arguments against the
existence of Vorbis as game music, but they explain fairly well the
continued existence of module formats in the realm.
-- dro
Ryan C. Gordon wrote:
>>> Hopefully I'll have time to look at it this summer. Module support is
>> really important to me; modules are _the_ video game music (dissenting
>> opinions aside ;-).
>>> (Actually, Ogg Vorbis is the hot thing right now, at least in the
> commercial sector. Modules were more important in the late 90s/early
> 2000s, after Midi petered out.)
>> --ryan.