Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

# Chiptune Module Remixer — Audio → .xm Generator (Experimental)

This repository contains a GitHub Pages website describing an experimental pipeline to convert arbitrary audio into tracker-style modules (XM). It includes a long-form writeup and a lightweight in-browser prototype that demonstrates segmentation, pitch estimation and a prototype "module descriptor" export.

Note: The client-side prototype demonstrates concepts and produces a JSON-style descriptor saved with a `.xm` extension for convenience and experimentation. It is not a full binary XM exporter yet.

## Files in this repo

- `index.html` — The site: background, pipeline, algorithms, and the prototype UI.
- `assets/style.css` — Styles for the site.
- `assets/script.js` — Prototype script that decodes audio, performs simple segmentation and pitch estimation, and builds a prototype module descriptor for download.
- `README.md` — This file.

## How to use (local)

1. Open `index.html` in a modern browser (prefer Chromium or Firefox for best Web Audio support).
2. Select an audio file (wav/mp3/ogg).
3. Press "Analyze" to let the prototype inspect the file.
4. Press "Generate .xm (prototype descriptor)" to download a JSON descriptor file (named `<original>-prototype.xm`).

## Deploy to GitHub Pages

1. Create a repository named `your-username.github.io` (or any repo and enable Pages from the `main` branch).
2. Push these files to `main`.
3. GitHub Pages will serve the site — visit `https://your-username.github.io/`.

## Roadmap / Next steps

- Implement a full XM binary exporter (writing correct XM headers, patterns, instrument and sample blocks).
- Add better pitch and transient detection and polyphonic separation heuristics.
- Provide presets for different chiptune flavors (8-bit, lo-fi, SID-like).
- Allow manual editing of slices and pattern mapping before export.

## Contributing

Contributions welcome. Please open an issue or a PR. If you want to implement the binary XM exporter, let's discuss the expected feature set in an issue first.

## License

MIT

Releases

Packages

Contributors

Languages