rinth/README.md
Ivan Bushchik 02bf01a6c1
Add "contact ivabus" LICENSE note
Signed-off-by: Ivan Bushchik <ivabus@ivabus.dev>
2024-01-21 18:05:42 +03:00

93 lines
1.4 KiB
Markdown

# Rinth synthesiser
FM and SSG synthesiser
## Usage
```shell
rinth-synth b[uild] <path/to/project.yml> # Will build separate tracks
rinth-synth m[aster] <path/to/project.yml> # Will "master" tracks into one track
```
See `--help` for more
## File formats
### \<project\>.yml
```yaml
name: <NAME>
bpm: <BPM>
channels:
- type: <SSG|FM>
path: <RELATIVE_TO_YML_PATH>
volume: [Optional in [0;1]]
```
Example:
```yaml
name: Megalovania
bpm: 210
channels:
- type: SSG
path: _channel
- type: FM
path: _channel
volume: 0.7
```
### _channel (FM)
```
/ Comment
#<Frequency deviation>
@<Modulating frequency>
<Note in SPN> <Note value> [Time from previous note]
```
Example:
```
#1
@2000
D4 0.0625
Dd5 0.0625 0.0125
Db5 1/32+1/32 1/80
```
### _channel (SSG)
```
/ Comment
# Ignored
@ Ignored
<Note in SPN> <Note value> [Time from previous note]
```
Example:
```
/ Comment
# Comment 2
@ Comment 3
D4 0.0625
Dd5 0.0625 0.0125
Db5 1/32+1/32 1/80
```
More examples in [examples/](./examples)
## MIDI Converter
WIP MIDI converter is available in the `rinth-midi` crate.
### Usage
```shell
rinth-midi <path/to/midi.mid>
```
## License
The project is available for non-commercial personal use under the terms of the [BSD 3-Clause New (Revised) License](./LICENSE) and you should contact [ivabus](https://sr.ht/~ivabus) if you want to use Rinth in other cases.