#microtonal #midi #scales #synthesizer #tuning

tune

Explore musical tunings and create synthesizer tuning files for microtonal scales

17 breaking releases

new 0.18.0 Oct 23, 2020
0.16.0 Sep 27, 2020
0.12.0 Jul 30, 2020
0.5.0 Sep 23, 2019
0.4.0 Mar 23, 2019

#239 in Audio

Download history 25/week @ 2020-07-04 33/week @ 2020-07-11 16/week @ 2020-07-18 16/week @ 2020-07-25 36/week @ 2020-08-01 75/week @ 2020-08-08 21/week @ 2020-08-15 9/week @ 2020-08-22 45/week @ 2020-08-29 51/week @ 2020-09-05 7/week @ 2020-09-12 21/week @ 2020-09-19 45/week @ 2020-09-26 32/week @ 2020-10-03 36/week @ 2020-10-10 30/week @ 2020-10-17

141 downloads per month
Used in 2 crates

MIT license

165KB
3.5K SLoC

Explore musical tunings and create synthesizer tuning files for microtonal scales.

Resources

Overview

tune is planned to be part of a larger ecosystem for microtonal software in Rust. So far, tune offers a CLI and an API with the following features:

  • Pitch conversions
    • Convert between linear and logarithmic 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
      • Scale/Octave Tuning
  • Import scales
    • From Scala (scl) format
  • Create tuning maps / Apply live retuning
    • Enhance the capabilities of synthesizers with limited tuning support
    • Tune multiple channels ahead of time or tune a single channel just in time
    • Send pitch-bend messages (polyphonic or monophonic) if no MTS is supported at all
  • Equal-step tunings
    • Analyze meantone and porcupine temperaments
    • Find keyboard layouts
    • Find patent vals
  • MIDI messages
    • Create basic MIDI messages
    • Parse basic MIDI messages

No runtime deps