Module files (MOD music, tracker music) are a family of music file formats originating from the MOD file format on Amiga systems used in the late 1980s. Those who produce these files (using the software called trackers) and listen to them, form the worldwide MOD scene, a part of the Demoscene subculture.
The mass interchange of "MOD music" or "tracker music" (music stored in module files created with trackers) evolves from early FIDO networks. Many websites host large numbers of these files, the most comprehensive of them being the Mod Archive.
Module files store several patterns or pages of music data in a form similar to that of a spreadsheet. These patterns contain note numbers, instrument numbers, and controller messages. The number of notes that can be played simultaneously depends on how many tracks there are per pattern.
Module files also give a list of the order in which to play the patterns. However, the biggest advantage of MOD family over standard MIDI files is that MODs include their own audio samples and should sound exactly the same from one player to another, barring interpolation methods and any errors in players.
Module files are also referred to as tracker modules, and the process of composing modules is known as tracking, simply because the first ever module creating program was Ultimate Soundtracker, created by Karsten Obarski in 1987. Soundtracker was cloned many times, with programs such as NoiseTracker and ProTracker being direct descendants from the original Soundtracker code, and others such as MED/OctaMED and Oktalyzer being written from scratch. Such programs are called trackers in general.
A disadvantage of module files is that there is no real standard specification in how the modules should be played back properly, which may result in modules sounding slightly different in different players. This is mostly due to effects that can be applied to the samples in the module file and how the authors of different players choose to implement them.
|Alternative demo platforms|
For the time of the existence of module files, people concerned with them formed world-wide, multi-thousand populated, so called MOD scene which is closely related to the Demoscene due to its nature. The article “Tracker (music software)” has the details on the development of this scene and its current state. Many tracker musicians gained international prominence within MOD software users and some of them are listed in the Category:Tracker musicians.
Each module file format builds on concepts introduced in its predecessors.
- Sound/Pro/Noisetracker module (file extension .mod, or mod. prefix on Amiga systems)
- This is the original module format. Uses inverse-frequency note numbers. 4 voices, with up to 32 in later variations of the format. Pattern data is not packed. Instruments are simple volume levels; samples and instruments correspond one-to-one. 15 instruments in the original Soundtracker, 31 in later trackers. This format was originally created to be easily playable with the Amiga hardware, since it was equipped with a four-channel DAC. The CPU has to do very little work to play these modules on an Amiga. Many games utilize this format - often with small player programs included. In the early 1990s, usage of this format with games was widespread across platforms, with games on PC and Nintendo systems utilizing it, as well.
- The original .mod extension is actually not a suffix on the Amiga, but a prefix; mod.* is the standard naming convention on the Amiga, and same prefix standard is used in basically all the other various sample/synth-trackers ever made for the Amiga - Art of Noise, AHX/THX, Musicline, Startrekker, FutureComposer, SidMon, Brian Postma's SoundMon etc. The majority of the "oldschool format"-players for Windows, Linux, Mac OS etc. will, when trying to load an "original" mod.*-file (or ahx.*, bp.*, fc14.* and so on), simply not play it due not analysing the file to determine the type - they only check for a filename extension as a suffix. Simply renaming the file from "mod.filename" to "filename.mod" is usually a sufficient workaround.
- Oktalyzer (originated on Amiga computers)
- This was an early effort to bring 8 channel sound to the Amiga. Later replayers have improved on the sound quality attainable from these modules by more demanding mixing technologies.
- MED/OctaMED (originated on Amiga computers)
- This format is very similar to sound/pro/noisetracker, but the way the data is stored is different. MED was not a direct clone of SoundTracker, and had different features and file formats. OctaMED was an 8-channel version of MED, which eventually evolved into OctaMED Soundstudio (which offers 128-channel sound, optional synth sounds, MIDI support and lots of other high-end features).
- AHX (originated on Amiga computers)
- This format is a synth-tracker. There are no samples in the module file, rather descriptions of how to synthesize the required sound. This results in very small audio files (AHX modules are typically 1k-4k in size), and a very characteristic sound. AHX is designed for music with chiptune sound. The AHX tracker requires Kickstart 2.0 and 2 mb RAM memory.
- .s3m (originated in ScreamTracker version 3 for PC)
- Up to 16 or more voices. Samples can specify any playback frequency for middle C. Simple packing of pattern data. Introduction of several new controllers and a dedicated "volume column" in each voice to replace volume controllers. Predictable support for stereo panning and AdLib FM synthesis instruments (although the latter is rarely supported in playback software).
- .xm (originated in Fast Tracker)
- Introduction of instruments with volume and panning envelopes. Basic pattern compression, no sample compression. Added ping-pong loops to samples.
- .it (originated in Impulse Tracker)
- New Note Actions let the previous note in a track fade out on top of the next note (providing greater effective polyphony). Instruments can now share a sample. Adds some new effects such as a resonant filter. Better pattern compression. Added sample compression. Added sustain loops to samples.
- .ned (Nerd Tracker II)
- Designed for playback on Nintendo Entertainment System. No samples in basic format (just tone generator instrument specification); extended format uses compressed samples but limits playback frequencies to the 16 rates that the NES hardware is capable of reproducing. Each channel has its own order list.
- MultiTracker modules
- Unreal/Tournament music package. This is actually a standard Unreal package file that wraps one .mod, .s3m, .it or .xm file so it can be accessed from within the game.
Software module file players and converters
- OZMod (Java, cross-platform, free source code)
- Winamp (Windows)
- BZR Player (Windows)
- Xmplay (Windows), from Un4seen Developments, which also created the MO3 format
- foobar2000 (Windows) (with foo_dumb plugin)
- Mod4Win (Windows), one of the first Windows Mod player
- K-Multimedia Player (Windows)
- Quintessential Player (Windows)
- Sonique (Windows)
- VLC (Linux, Mac OS X, Windows)
- Audacious (Linux)
- XMMS and XMMS2 (Linux/UNIX)
- Totem (Linux/UNIX)
- Music Player Daemon (Linux/UNIX)
- DeaDBeeF (Linux/UNIX, Android)
- MikMod (Linux/UNIX/DOS)
- Neutron Music Player (Android OS, BlackBerry 10/PlayBook)
- Modo Computer Music Player (Android OS)
Converters and trackers
- Cog (Mac OS X)
- Amarok (Linux/UNIX)
- Audacious (Linux/UNIX)
- ModPlug Tracker (Windows)
- Unix Amiga Delitracker Emulator (Linux/UNIX)
- TiMidity (Linux/UNIX)
- OctaMED (Amiga)
- Renoise (Windows)
- Matsuoka, Claudio (2007-11-04). "Tracker History Graphing Project". helllabs.org. Retrieved 2011-01-29. "Tracker History Graph"
- Composing Music for Unreal - Alexander Brandon, epicgames.com (1999)
- GStreamer Bad Plugins 0.10 Plugins Reference Manual
- Neutron Music Player