Composing Music

From FreeGameDevWiki
Jump to: navigation, search

Game music formats

Prerecorded

This includes formats like WAV, OGG, FLAC. (MP3 is discouraged because it is a patented codec)

Prerecorded audio offers the most flexibility in the actual sound, but uses more space than MIDI or tracker formats.

MIDI-based

MIDI is a standard protocol that generically describes timed events for various enumerated instruments and parameters. Devices that "talk" MIDI to each other have been for sequencing and remote control of synthesizers since the early 1980s. Today MIDI over USB is used for musical device connectivity. MIDI as a file format is also used.

PC games from ~1988 until ~1992 used MIDI specifically to talk to the Roland MT-32 synthesizer, the best available consumer option for music at that time. It was usurped by the cheaper, less implementation-specific General MIDI standard, which defines 128 arbitrary instruments. General MIDI has a poor reputation because implementations varied greatly: each implementation contained different volumes and timbres, such that it was impossible to know how well the music translated.

MIDI has always been a "lightweight" format because it only contains event data, and that makes it flexible enough to respond to real time events and be used for sound effects, but its quality depends entirely on playback implementation.

MIDI makes good use of soundfonts (sound banks handled by fluidsynth/qsynth), amongst which a few are free licensed (see freepats).

Modules/Tracker-based

These are computer-oriented sequencing formats with samples packed into the files. They originated on the Amiga computers. They are relatively simple to load and playback and many libraries exist for this purpose. MOD, XM, IT are the most common of these formats. Sound quality is dependent on effective use of samples and the built-in effects of each format.

Tracker formats offer a small amount of real-time control, but less flexibility than MIDI.

More modern trackers exist such as Fruity loops (easy-to-use, for Windows, but commercial) or LMMS (not that polished, crossplatform, free software) with which you should be able to host VSTs through wine.