Personally, I’m waiting to see what the next version brings, I have some ideas around XRNI instruments and realtime midi note processing but if these are overhauled in the next release (which I really hope they are) then it may become a lot easier to implement them, or I might find myself having to rewrite things.
Anyway, seeing as you asked…
Here’s a script that lets you do micro tuning in instruments. The first line has an array of 12 variables where you can set the fine tuning (-127 to +127) of each note starting at C. This is then repeated across the keyzone range.
-- SET YOUR FINE TUNINGS HERE - RANGE FOR EACH VALUE = -127 to +127
local tunings = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
-- CODE
local ins = renoise.song().selected_instrument_index
local notes = { "C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B" }
local note_layer = renoise.Instrument.LAYER_NOTE_ON
local base_note = 48
local min_note = 0
local max_note = 119
local current_note = 1
local current_sample = 2
local mappings = #renoise.song().instruments[ins].sample_mappings[note_layer]
for n = mappings, 1, -1 do
renoise.song().instruments[ins]:delete_sample_mapping_at( note_layer, n )
end
local samples = #renoise.song().instruments[ins].samples
for n = samples, 2, -1 do
renoise.song().instruments[ins]:delete_sample_at(n)
end
for n = current_sample, (current_sample + 11), 1 do
renoise.song().instruments[ins]:insert_sample_at(n)
renoise.song().instruments[ins].samples[n]:copy_from(renoise.song().instruments[ins].samples[1])
renoise.song().instruments[ins].samples[n].name = notes[current_note]
renoise.song().instruments[ins].samples[n].fine_tune = tunings[current_note]
for note_index = min_note, max_note, 12 do
renoise.song().instruments[ins]:insert_sample_mapping( note_layer, current_sample, base_note, {(note_index+current_note-1), (note_index+current_note-1)} )
end
current_note = current_note + 1
current_sample = current_sample + 1
end
I was going to mash this up with DBlue’s SCL loading script but with the current version I would need to duplicate the sample 120 times to make it work properly! So like I said, ima gonna wait…