Live recording, autocreate patterns


(vital.fadeev) #1

I dream so:

I record live.

Patterns are automatically created.

If the pattern is over, a new one is created.

How can I do that, o guru?

Thanks.


(danoise) #3

AutoClonePatterns allows you to loop a range of patterns and automatically extended them as you record:

https://www.renoise.com/tools/auto-clone-patterns

Very simple to use: loop a range of patterns, start playback + record.

Once the playback reaches the loop, a clone is automatically created.


(vital.fadeev) #4

AutoClonePatterns allows you to loop a range of patterns and automatically extended them as you record:

https://www.renoise.com/tools/auto-clone-patterns

Very simple to use: loop a range of patterns, start playback + record.

Once the playback reaches the loop, a clone is automatically created.

I happy! Because your answer is useful to me. :slight_smile:


(Raul (ulneiz)) #5

I dream so:

I record live.

Patterns are automatically created.

If the pattern is over, a new one is created.

How can I do that, o guru?

Thanks.

I made a couple of functions a long time ago so that I had exactly this behavior. The result is so simple and the performance so good that I have added it to one of my latest tools:

--auto sequence
function kng_auto_sequence()
  local song = renoise.song()
  --print( song.selected_sequence_index, #song.sequencer.pattern_sequence )
  if ( song.selected_sequence_index == #song.sequencer.pattern_sequence ) then
    if ( song.selected_sequence_index < 1000 ) then
      song.sequencer:insert_new_pattern_at( song.selected_sequence_index + 1 )
    end
  end
end
---
KNG_AUTO_SEQUENCE = false
function kng_auto_sequence_obs()
  local song = renoise.song()
  if ( KNG_AUTO_SEQUENCE == false ) then
    if not song.selected_sequence_index_observable:has_notifier( kng_auto_sequence ) then
      song.selected_sequence_index_observable:add_notifier( kng_auto_sequence )
    end
    kng_auto_sequence()
    KNG_AUTO_SEQUENCE = true
    vws.KNG_BT_AUTO_SEQUENCE.color = KNG_CLR.WHITE
  else
    if song.selected_sequence_index_observable:has_notifier( kng_auto_sequence ) then
      song.selected_sequence_index_observable:remove_notifier( kng_auto_sequence )
    end
    KNG_AUTO_SEQUENCE = false
    vws.KNG_BT_AUTO_SEQUENCE.color = KNG_CLR.DEFAULT
  end
end

This only needs a button to activate or deactivate it from a window ( kng_auto_sequence_obs() ). It can also be replaced by a checkbox. If you do not want a window, it is possible to use the drop-down menu of the pattern sequence panel.Regardless of the way to activate it, the function uses a notifier that always adds a new pattern at the end of the sequence, without doing anything else, in the cleanest way possible.

The problem with using a notifier is that it reacts with a few milliseconds of delay. This implies that it will not work properly with BPM & LPB extremely high.

Anyone who knows a bit of LUA code will know how to use it…


(joule) #6

I made this to resolve the issue. https://forum.renoise.com/t/new-tool-3-1-auto-grow-sequence/49420