This post is an attempt to get better tuning support in Renoise as quickly as possible by brainstorming a practical way that the developers would be inclined to implement in a near future release. For a design concept of a more powerful and permanent, yet still unobtrusive solution, please see my small tuning proposal webpage. Your input is encouraged!
In the realm of instrument tuning, Renoise needs improvement. Composing music in tuning systems other than our standard 12-tone equal temperament (Javanese, Indian, historic European, non-octave, experimental, etc.) is a major hassle. While serious enhancements could end up being a lot of work for the benefit of a relatively small audience, I believe there are some short-term steps that can greatly improve Renoise’s utility for microtonal and non-western-music communities.
Of course, the microtonal wet-dream would be the ability to modify the frequency lookup table for sequenced notes, or the ability to load Scala .scl files, but I suspect such feature requests are too elaborate for now. I propose instead that Renoise should support tuning systems in the same unobtrusive way that MIDI sequencing software often does: by allowing dynamic alteration of pitch of individual notes by means of FX commands and automation.
Current capabilities and problems
- One can fine-tune a sample statically – i.e., “permanently” set a sample’s pitch – but not alter it during song playback.
- One can automate the tuning of a plugin instrument (VSTi) by using the “Instr. MIDI Control” meta-device – provided the plugin supports pitchbend to some degree. Tuning support of plugins will always be left up to the plugin author, not Renoise developers.
- One can send MIDI pitchbend data in the FX column, though it is a cumbersome technique.
- One cannot set special interval tuning for samples in the instrument settings.
- One cannot alter a sample’s fine-tuning during playback by means of FX commands or automation. This means that its interval sizes are inherently stuck in 12-tone equal temperament; microtonal intervals are not possible without creating a unique sample for each pitch. The issue is compounded for non-octave tunings.
Another problem: Fine-tuning for samples is expressed in 1/128 of a semitone. This is unintuitive – nobody tunes using such a measurement – and relatively inaccurate. Fine-tuning must always be expressed in cents, and should have floating point accuracy. For example: “-5.02336 cents”
The shared-sample model would not accomodate non-octave tunings without further features. Again, such features could certainly be added but I am truncating this post to limit its mass.
Despite these limitations, I feel these methods acheive significant new functionality without heavily altering Renoise’s UI or overhauling its engine. It is a compromise, but one which would still be an improvement.
Please brainstorm with me! Let me know what you think of this, and if you have your own ideas for how to improve tuning support in Renoise.