Analysis updated 2026-05-18
Play classic tracker module music files inside a Swift or Apple platform app.
Add 3D spatial audio effects to retro tracker music playback.
Build a music app or game audio engine using AVAudioEngine via the companion module.
| gistya/ox0badf00d | 98przem/mist | thapasamir/pastry | |
|---|---|---|---|
| Stars | 8 | 8 | 8 |
| Language | Swift | Swift | Swift |
| Setup difficulty | moderate | easy | easy |
| Complexity | 4/5 | 3/5 | — |
| Audience | developer | general | vibe coder |
Figures from each repo's GitHub metadata at analysis time.
Requires integrating a Swift package into your own project, no standalone app.
Ox0badf00d is a Swift package for loading and playing back classic tracker module music, the kind of song files musicians made in the 1990s using programs like ProTracker, FastTracker II, and Impulse Tracker. The package can read MOD, XM, and IT file formats and turn them into actual audio, handling the pattern data, instrument samples, and the many small playback effects those old formats support, such as vibrato, tremolo, portamento, and volume slides. Unlike many tracker players, this project does not lean on outside libraries such as libopenmpt or ffmpeg to do the decoding. It renders the audio itself, producing streaming stereo sound directly. It also offers an optional psychoacoustic 3D mode that uses timing and level differences between ears, head-shadow filtering, and early reflection cues to make the music sound like it is coming from a real space around the listener rather than flat stereo. The project is built as a Swift package rather than a full app, so it can be plugged into other software, including a companion piece called Ox0badf00dAVFoundation that wraps it with an AVAudioEngine session for easier use on Apple platforms. A short code example shows loading a module file and rendering it to a PCM buffer of interleaved left and right samples. The author is upfront that the work is not finished. Full support for Impulse Tracker files is incomplete: compressed IT samples currently render as silence, some packed patterns fail to decode properly, and there are known bugs in how certain notes map to pitches. Other remaining goals include more accurate XM envelope and fadeout behavior, better per-format effect compatibility, filter and resonance support where formats allow it, and automated tests that compare its output against established tracker engines.
A Swift package that loads and renders classic 1990s tracker music files like MOD, XM, and IT, including an optional 3D spatial audio mode.
Mainly Swift. The stack also includes Swift.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.