https://github.com/b0ney/xmodits-lib
xmodits core library, used for xmodits-cli, xmodits-gui and xmodits-py
https://github.com/b0ney/xmodits-lib
audio extended-module impulsetracker protracker rust screamtracker tracker-music
Last synced: about 2 months ago
JSON representation
xmodits core library, used for xmodits-cli, xmodits-gui and xmodits-py
- Host: GitHub
- URL: https://github.com/b0ney/xmodits-lib
- Owner: B0ney
- License: mpl-2.0
- Created: 2022-12-22T13:31:40.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-11-14T15:16:23.000Z (7 months ago)
- Last Synced: 2025-02-13T14:17:16.801Z (4 months ago)
- Topics: audio, extended-module, impulsetracker, protracker, rust, screamtracker, tracker-music
- Language: Rust
- Homepage:
- Size: 6.24 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# XMODITS Core Library
Work in progress
## Supported Formats
| Extension | Description |
| --- | --- |
| IT | Impulse Tracker |
| XM | Extended Module |
| S3M | Scream Tracker 3 |
| MOD | Amiga ProTracker |
| MPTM | ModPlug Tracker module (Impulse Tracker) |## Supported Containers
| Extension | Description |
| --- | --- |
| UMX | Unreal Music Package|
| PT36 | ProTracker 3.6 project file |## Formats samples can be exported to:
| Extension | Format |
| --- | --- |
| WAV | Microsoft Wave |
| AIFF | Audio Interchange File Format |
| IFF (8SVX) | 8-Bit Sampled Voice |
| ITS | Impulse Tracker 2 Sample |
| S3I | Scream Tracker 3 Instrument|
| RAW | Headerless PCM |## API
Subject to changeExtract a module from a path:
```rust
use xmodits_lib::{Ripper, AudioFormat};let self_contained_samples = true;
Ripper::default()
.audio_format(AudioFormat::ITS) // Export samples to the impulse tracker instrument instead of .wav
.extract_from_path(
"./module1.xm",
"~/Downloads/",
self_contained_samples
);
```Load a module from a path:
```rust
let module = xmodits_lib::load_from_path("./module1.xm").expect("valid module");
```## License
The xmodits core library is licensed under the Mozilla Public License 2 (MPLv2)