| Extension | Format |
|---|---|
.it |
Impulse Tracker |
.xm |
Extended Module |
.s3m |
Scream Tracker 3 |
.mod |
Amiga Pro Tracker |
.mptm |
ModPlug Tracker module |
.umx |
Unreal Music Package (Containing above) |
| Extension | Format |
|---|---|
.wav |
Microsoft Wave |
.aiff |
Audio Interchange File Format |
.its |
Impulse Tracker 2 sample |
.s3i |
Scream Tracker 3 Instrument |
.8svx |
8-Bit Sampled Voice |
.raw |
Headerless pcm |
The command line version of xmodits can be downloaded here.
If you want a more user friendly version, consider getting the gui version here. Do note that the gui version has less supported platforms.
Please have a look at running on older systems.
xmodits {ARGUMENTS} <module path> [destination folder]
e.g:
xmodits ./test.s3m ~/Music/Samples/
xmodits ./test.s3m
xmodits ./mod1.mod ./mod2.it ./mod3.s3m [destination folder]
xmodits --fmt="8svx" ./*.mod ~/Downloads/samples/8svx
Note: If the destination is not provided, xmodits will place the ripped samples in a self contained folder in the current working directory.
If you want to customize how ripped samples are named, the following arguments can be used:
| short | long | Description |
|---|---|---|
| -s | --strict | Enabled by default. Only allow files with the supported file extensions: [it, xm, s3m, mod, umx, mptm] |
| -i | --index-only | Ripped samples will only be named with an index. |
| -r | --index-raw | Preserve internal sample indexing. |
| -p | --index-padding | Pad sample index with preceding zeros. 0-1 will disable padding. |
| -n | --no-folder | Do not create a new folder for ripped samples. |
| -u | --upper | Name samples in upper case. |
| -l | --lower | Name samples in lower case. |
| -g | --prefix | Prefix samples with the tracker's filename. |
| -f | --fmt | Export samples to the following formats: [ wav (default), aiff, 8svx,its,s3i, raw ] |
| short | long | description |
|---|---|---|
| --info | Print information about a tracker module. | |
| --Meta | Print metadata about the binary. | |
| -V | Print version |
Install the Rust compiler if you haven't already: https://www.rust-lang.org/tools/install
Clone the source code:
git clone https://github.com/B0ney/xmodits-cliBuild:
cd xmodits-cli
cargo build --releaseThe compiled binary is placed in: xmodits-cli/target/release/
(*nix systems only) You may get a Permission denied error if you attempt to run the program. In that case, you'll need to mark the binary as executable:
chmod +x xmodits(Optional) Compile with build metadata embedded in the binary (enables --Meta flag), This will take longer to compile:
cargo build --release --features="with_metadata"(Experimental) Compile with multi-threading:
cargo build --release --features="rayon"Minimum supported OS: Windows 7
XMODITS is compiled with vcruntime (msvc only) embedded, so it should run out of the box.
For backwards (and forwards) compatibility, it is recommended that you download the *-musl variant.
Older linux systems may have glibc versions too old to run the program.
You'll most likely get an error like this if you attempt to run the *-gnu variant:
libc.so.6: version `GLIBC_2.18` not found (required by ./xmodits)
xmodits-cli is licensed under the LGPLv3
| Program | License | Description |
|---|---|---|
| XMODITS-GUI | GPLv3 | xmodits gui application |
| XMODITS-PY | LGPLv3 | xmodits Python library (Mainly used for DawVert) |
| XMODITS-LIB | MPLv2 | xmodits core library |