Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Woyten/tune
Make xenharmonic music and create synthesizer tuning files for microtonal scales.
https://github.com/Woyten/tune
audio microtonal midi modular modular-synthesizers mts music musical-scales piano rust scales sound-effects synthesizer wasm xenharmonic
Last synced: about 1 month ago
JSON representation
Make xenharmonic music and create synthesizer tuning files for microtonal scales.
- Host: GitHub
- URL: https://github.com/Woyten/tune
- Owner: Woyten
- License: mit
- Created: 2019-01-06T19:05:25.000Z (almost 6 years ago)
- Default Branch: main
- Last Pushed: 2024-08-23T11:06:05.000Z (4 months ago)
- Last Synced: 2024-10-29T09:17:54.975Z (about 2 months ago)
- Topics: audio, microtonal, midi, modular, modular-synthesizers, mts, music, musical-scales, piano, rust, scales, sound-effects, synthesizer, wasm, xenharmonic
- Language: Rust
- Homepage:
- Size: 20.3 MB
- Stars: 134
- Watchers: 9
- Forks: 6
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-open-synth - Tune
README
Explore musical tunings and create synthesizer tuning files for microtonal scales.
# Overview
`tune` is planned to be part of a larger ecosystem for microtonal software in Rust.
Current projects relying on `tune` are:
- [tune-cli](https://github.com/Woyten/tune/tree/main/tune-cli): A command line tool with live-retuning capabilities
- [microwave](https://github.com/Woyten/tune/tree/main/microwave): A microtonal modular waveform synthesizer
- [fluid-xenth](https://github.com/Woyten/tune/tree/main/fluid-xenth): A microtonal soundfont renderer## Resources
- [Changelog](https://github.com/Woyten/tune/releases)
- [CLI Documentation](https://github.com/Woyten/tune/blob/main/tune-cli/README.md)
- [API Documentation](https://docs.rs/tune/)
- Demo: [Ephemeral Happiness (17-EDO)](https://youtu.be/FZlZE4hLLhs)
- Demo: [I'm a Lumatic (17-EDO)](https://youtu.be/zKnJJEaidWI)
- Demo: [Stay Strong (17-EDO)](https://youtu.be/JutcUVrA8Tg)
- Demo: [Xênerie (15-EDO)](https://youtu.be/0PczKDrOdUA)
- Demo: [Don't Take Five (16-EDO)](https://youtu.be/LLgClI8pyNw)
- Demo: [The Bedoginning (17-EDO)](https://youtu.be/gaYvK9OBHK0)## Features
### Pitch Conversions
- Convert between linear and logarithmic pitch ratios
- Determine the frequency for a given note in a custom tuning system
- Determine the note for a given frequency in a custom tuning system
- Find fractional approximations for frequency ratios### Export Scales
- To Scala (scl and kbm) format
- As Midi Tuning Standard (MTS) Sysex Messages
- Single Note Tuning Change (with Bank Select)
- Scale/Octave Tuning (1-Byte and 2-Byte)### Import Scales
- From Scala (scl and kbm) format
### Live Retuning
- Enhance the capabilities of synthesizers with limited tuning support
- Tune channels ahead of time for a glitch free tuning experience
- Tune channels just in time for full pitch freedom
- Pick the message type that your synth supports
- Single Note Tuning Change (with Bank Select)
- Scale/Octave Tuning (1-Byte and 2-Byte)
- Channel Fine Tuning
- Pitch Bend### MOS Scales and Isomorphic Keyboards
- Find MOSes for a given generator
- Find generators for a given MOS
- Find MOS-based isomorphic keyboard layouts
- Supported genchains: Meantone, Mavila, Porcupine, Tetracot, Hanson
- Determine step sizes
- Generate automatic color schemas
- Print generalized note names and accidentals### Commas and Temperaments
- Find patent vals
- Find tempered-out commas### MIDI Messages
- Create basic MIDI messages
- Create tuning-related RPN messages
- Parse basic MIDI messages