https://github.com/AlexCharlton/m8-files
Parse the Dirtywave M8's file formats
https://github.com/AlexCharlton/m8-files
Last synced: about 2 months ago
JSON representation
Parse the Dirtywave M8's file formats
- Host: GitHub
- URL: https://github.com/AlexCharlton/m8-files
- Owner: AlexCharlton
- License: mit
- Created: 2023-02-23T23:10:05.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2023-04-03T04:21:30.000Z (about 2 years ago)
- Last Synced: 2024-04-24T08:29:26.689Z (12 months ago)
- Language: Rust
- Size: 51.8 KB
- Stars: 5
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
- awesome-m8 - m8-files - Read and write M8 files in Rust (Tools)
README
# m8-files
[](https://crates.io/crates/m8-files)
[](https://docs.rs/m8-files)
[](https://github.com/AlexCharlton/m8-files/actions/workflows/ci.yml)Reads [Dirtwave M8](https://dirtywave.com/) files into Rust structs.
Big thanks to [m8-js](https://github.com/whitlockjc/m8-js) who did all the real dirty work.
## Usage
Add to your `Cargo.toml`:
```
m8-files = "0.3.1"
```
Or
```
$ cargo add play-files
```Load an example song:
```
$ cargo run --example read_song -- examples/songs/DEFAULT.m8s
```## TODO
- Add song groove, scale, note_preview
- Add settings: output/speaker volume
- Throw more parse errors
- Displays: MixerSettings, EffectsSettings, Instrument, MidiSettings, MidiMapping## Changelog
### 0.3.1
- Fixing visibility of Eq types (was private in 0.3)
- FmAlgo content is now publicly visible
- Each instrument filter type can now be accessed through the filter_types method
- Parameters and modulation destination constants is now public.### 0.3
- v4 reading
- v4 overwriting, you can load, modify elements and rewrite the same song.
* Does not work with song other than v4/v4.1
- Added EQ with plotting
- Mapped all FX instruction depending on the names
- Mapped enums to many instrument parameters with human readable information### 0.2
- Add V3 support
- Fix instrument alignment issues