Sample Editor Play Notes From Active Selection

When I have a sample in the sample editor, I can play any note I want - the whole sample will play.
What I would like to see is that when a selection is made, only the selection is played in that pitch when I use the keyboard.

A work around to accomplish it now, is by selecting the correct note/octave and press play.
This is way to much steps to play some creative slices fast.

I am guessing it should be easy to program that, play only the current selection in the sample editor (not the whole sample), and play that using the keyboard (or midi or whatever).

Please look at it, thank you! :lol:

!!! THE LONG REQUESTED FEATURE IS IMPLEMENTED TODAY !!!
Thank you developers!!! I cannot thank you enough!

1 Like

unless someone comes up with a way how this is already possible, i really like the idea.
a tool could possibly made for this as well?

Middle mouse button will play from where the cursor is.

Hitting Enter key will play the current selection. Although I have pointed out many times the drop-down note selector below doesn’t behave as I would expect when doing this and to hear at different pitches and get the rulers to change with it you have to change the Transpose in the Instrument Properties, rather than just change the value here.

But just jamming with the keyboard (computer or MIDI) you can’t. Insert markers (so you keep the exact selection marked) and copy/paste into new sample. Bit of extra work though really…

To do this the “zone” method from akai and such would be nice perhaps inside renoise.
Only the selected part would be played then.

I know the current methods of changing the note / transpose / etc. but this is all about speed.
The faster I can jam those notes on different pitches, the better :)
And currently when I have a mini soundtrack (a minute or so), I just cut out the part I want to jam in a different pitch.
But that takes time to load, and has to be undone to see the rest of the sample.

It is almost a bug, so simple to implement, yet never made possible.
But I did not pay multiple licenses for nothing, I strongly believe that some developer may spot this quickly… (hint hint!)

I’m sure when say Taktik reads this, he can fix this in the source in under 10 minutes :rolleyes:

  1. Selection = start & stop position.
  2. Keyboard / Midi input play only the selection.
  3. Profit, happy users! :yeah:

Hell, I bet he can do it in under a minute. :drummer: regardless of whether he reads this thread :P

You can also slice that part and then use the copy each slice to an individual instrument tool and then jam each instrument the way you desire.

I just tried, and its the same “speed” as doing copy paste for each piece of sample.
I have high quality samples, which are large, and even on my i7 takes time to load.
While the whole sample is loaded and anytime ready to play, I have to use copy slice / copy selection for each piece.

I’m a programmer in various languages, but not the type Renoise is written in.
But I am sure its something small to make the midi keyboard play a selection, and I can change those selections on the fly while playing.

A quick drag on the loaded sample, and whoosh I can experiment with different pitches, instantly… that is what I really really want :)
I never post much on the boards, let alone do suggestions, but this feature - I would pay for it individually. :yeah:

I just downloaded the latest beta, 2.8.0.b2 that has still the same behaviour.
I really would like to pay for this feature alone to be implemented; i have not that much to wish in such a great program.

maybe I should explain it in different words;

Select sample, hit notes on the keyboard, play sample in different pitches from the selected start/stop point (a-b in my screenshot).

now, one has to select the slice, select the desired pitch by mouse and press enter.
That feels the same like having to select a note from a drop downlist and press OK, and play live music with that :P

I don’t feel like crossposting, spamming the board with this idea, but I really would spend a fortune of having this rather frusty “bug” fixed.
How can I draw attention? help me :(

This function would be amazing and would move Renoise workflow potential to a new level.
right now you can create a phrase with a 0SXX command and experiment with value, it will do something simillar but it is not very user-friendly so i hope that your idea will be realized.

you can write a tool that does this quite easily, i’d say the direct approach (straight copying of the sample part) is best

also there was that really long ‘keyjazz thread’

you can write a tool that does this quite easily, i’d say the direct approach (straight copying of the sample part) is best

also there was that really long ‘keyjazz thread’

And here it is, revived :wink:

https://forum.renoise.com/t/play-a-selection-of-a-sample-in-any-note-instantly/41105

Thanks for reviving / bumping this one as well. I really WANT the keyjazz-on-sampleselection feature to be real…

So like two slice markers that automatically follow the selection? And the slice will be created over some octaves, instead over one note ?

here’s a basic idea of the code if anyone is willing to write a tool, just paste it into a .lua and execute it

--we'll make it simple non-stereo for the example
--todo: manage interpolation errors, different interpolations will require a different additional amounts of frames around the loop (the sample length is the same to also reduce interpolation inconsistencies)
local sng = renoise.song()
local sel_inst = sng.selected_instrument
local smp_1 = sel_inst:sample(1)
local smp_2
--duplicate first sample
smp_2 =sel_inst:insert_sample_at(2)
smp_2:copy_from(smp_1)
--change key mapping
smp_1.sample_mapping.note_range = {0,0}smp_2.sample_mapping.note_range = {1,119}
--create sample buffers for quick access
local smp_1_buff = smp_1.sample_buffer
local smp_2_buff = smp_2.sample_buffer
--clear sample data of sample 2
for f=1, smp_2_buff.number_of_frames do
smp_2_buff:set_sample_data(1, f, 0)
end

--the function to trigger/loop
local function kjz_pone()
smp_2_buff:prepare_sample_data_changes() --must have by API design like 'start'
--the loop
local smp_1_selection_start = smp_1_buff.selection_start
local smp_selection_len = smp_1_buff.selection_end - smp_1_selection_start

for f = 1, smp_selection_len +1 do
smp_2_buff:set_sample_data(1, f, smp_1_buff:sample_data(1, smp_1_selection_start + f -1))
end
smp_2_buff:finalize_sample_data_changes() --must have by API design like 'end'

--adjust the loop markers of sample 2
--activate pingpong loop for sample 2
smp_2.loop_mode = renoise.Sample.LOOP_MODE_PING_PONG
smp_2.loop_start = 1
smp_2.loop_end = smp_selection_len
end
kjz_pone()
1 Like

Isn’t there Api functions to set a slice key zone etc? I mean you are creating a new sample on each change? Why not let two slice markers follow selection?

jurek: only the function needs to be looped/triggered, as it’s commented, and in the fully functioning tool , loop_mode = pingpong and loop_start= 1 can also be removed for efficiency

Slices can only be played on 1 key, therefore you’d need to create 119 slices and adjust their loop length, which method is more efficient? no idea

Slices can only be played on 1 key, therefore you’d need to create 119 slices and adjust their loop length, which method is more efficient? no idea

Oh thought it’s possible in another way using API… If this is the case, Taktik, DBlue , please allow different/variable mappings/key zones for slices! Even not for the case described here, at least I usually do mappings where a slice has 3 keys/pitches at least (I do this commonly on Korg M3 for example), so I can easily play the samples/drums on slightly other pitches.

Is it possible to make key zones of slices flexible, expandable, movable?

Jurek; no, but you can simply triple click in one spot and create 3 slices then adjust their note properties.

Click to view contents

.slap jurek, we’re never going to get audio routing this way :c

Ah ok. Anyway never using slices…

Click to view contents

True… :(. Maybe it’s bitwig time. seems to be no much love around here anymore.

if you have a fast machine, a pseudo code would be something like this;

select a piece of the sample, instantly do a CTRL+T and when moving the mouse again, CTRL+Z

The visual of this solve is shit, the loading time is awful but its something.