Phrase = Arpeggiator

phrases could work like arps

You know that you can use the scales to make depending note-schemes based on the notes that are in the Phrase? If you use a specific scale, the notes will be adjusted according to which key you actually press so in that regard there is not just a “plain” transpose but a relational transpose.

Yes, tried it, it’s great. Though… is there a feature that allows me to play and hold a chord on my master keyboard and Renoise will play an Arpeggio based on this? The one were you hear a broken chord?

My idea was a “chord breaker” so to say.

Currently the phrases are only a “one-finger” Arp, which is cool. But I’m used to “multiple-fingers” Arps from synthesizers too. So I thought, it would be neat to have this kind of “Key Tracking” in addidion to the “Transpose” setting.

Load any specific short instrument in slot 00
Copy this phrase into a newly created phrase of that instrument (set the phrase length to 2 rows):

Click to view contents
  
<?xml version="1.0" encoding="UTF-8"?>  
<patternclipboard.blockbuffer doc_version="0"><br>
  <columns><br>
	<column><br>
  	<column><br>
    	<lines><br>
      	<line index="0"><br>
        	<notecolumns><br>
          	<notecolumn><br>
            	<note>C-5</note><br>
            	<instrument>00</instrument><br>
          	</notecolumn><br>
        	</notecolumns><br>
      	</line><br>
      	<line index="1"><br>
        	<notecolumns><br>
          	<notecolumn><br>
            	<note>OFF</note><br>
            	<instrument>00</instrument><br>
          	</notecolumn><br>
        	</notecolumns><br>
      	</line><br>
    	</lines><br>
    	<columntype>NoteColumn</columntype><br>
  	</column><br>
	</column><br>
  </columns><br>
</patternclipboard.blockbuffer>  
  

Set the LPB of the phrase to something like 6 or 5.

Put this on the first row of track one in the main pattern editor:

Click to view contents
  
<?xml version="1.0" encoding="UTF-8"?>  
<patternclipboard.blockbuffer doc_version="0"><br>
  <columns><br>
	<column><br>
  	<column><br>
    	<lines><br>
      	<line index="0"><br>
        	<notecolumns><br>
          	<notecolumn><br>
            	<note>C-5</note><br>
            	<instrument>00</instrument><br>
            	<volume>75</volume><br>
          	</notecolumn><br>
        	</notecolumns><br>
      	</line><br>
    	</lines><br>
    	<columntype>NoteColumn</columntype><br>
  	</column><br>
  	<column><br>
    	<lines><br>
      	<line index="0"><br>
        	<notecolumns><br>
          	<notecolumn><br>
            	<note>E-5</note><br>
            	<instrument>00</instrument><br>
            	<volume>6B</volume><br>
            	<delay>40</delay><br>
          	</notecolumn><br>
        	</notecolumns><br>
      	</line><br>
    	</lines><br>
    	<columntype>NoteColumn</columntype><br>
  	</column><br>
  	<column><br>
    	<lines><br>
      	<line index="0"><br>
        	<notecolumns><br>
          	<notecolumn><br>
            	<note>F#5</note><br>
            	<instrument>00</instrument><br>
            	<volume>79</volume><br>
            	<delay>80</delay><br>
          	</notecolumn><br>
        	</notecolumns><br>
      	</line><br>
    	</lines><br>
    	<columntype>NoteColumn</columntype><br>
  	</column><br>
  	<column><br>
    	<lines><br>
      	<line index="0"><br>
        	<notecolumns><br>
          	<notecolumn><br>
            	<note>A#5</note><br>
            	<instrument>00</instrument><br>
            	<volume>75</volume><br>
            	<delay>C0</delay><br>
          	</notecolumn><br>
        	</notecolumns><br>
      	</line><br>
    	</lines><br>
    	<columntype>NoteColumn</columntype><br>
  	</column><br>
  	<column><br>
    	<lines><br>
      	<line index="0"></line><br>
    	</lines><br>
    	<columntype>NoteColumn</columntype><br>
  	</column><br>
	</column><br>
  </columns><br>
</patternclipboard.blockbuffer>  
  

There you have your chord arpeggiator (although i do know what you mean by now, it would be lovely to be able to do this without having to set delay time)

Thanks! I selected “line” at the quantisation Q and tried it. It works!..but…When playing live, as you say, hitting the chord on the keyboard with the neccessary delay for at each key isn’t easy.
And, to avoid this, if I were to create different phrases with different delays inside themselves, Renoise had no way to chose different phrases, since I cannot use certain keys for the arp and certain keys (key zones) for different phrases at the same time. A simmilar problem arises when a note in my whished broken chord appears twice, e.g. when trying to get the arp play C-5,G-5,E-5,G-5 with a master-keyboard. I cannot hold and double-trigger the same key on the keyboard. I could in theory trigger it once, Renoise has “hold” button pressed and holds it, then I could hit they key again. This would be complicated. Another way to get the missing G-5 line playing would be triggering it not by using the same phrase but a different one, in a different keyzone. But then this zone/triggernote conflict comes again: How would I be able to chose my chord? In a song, yes, but live on keyboard, seems complicated to me. And it actually seems not easy in a main pattern too. But I say this only regarding the attempt to use a phrase as an arpeggiator for monophonic broken chords, as you might be used to it when playing a synthesizer, e.g. Poizone. Phrases as phrases are great. No complains about this.

Also, if there was this additional “Arpeggio” setting as described in my proposal, you could edit various glides and effects into the arp line easily, since all consecutive notes would reside in a single phrase, which would be triggered only once (and loop). Whereas with triggering a phrase several times within some time frame, you would not be able to edit such articulations into the phrase, because you have not all notes standing there. Instead you would have to edit this in the main pattern, which seems not so good, because of the way you had to trigger it, and because it doesn’t allow re-use as phrases do.

Edit: I corected the basenote calcing in the proposal. Also, if you find any flaw in the approach, please let me know. It’s just meant as a simple “mode” that could be added, after applying the necessary optimizations to the idea.

You cannot overlap phrases, but you can create more phrases than just one (as much as there are keys assignable), so you can use different phrases at the same time, but the phrases are then fixed to the limited noterange and basenote that you attach to it.

The former solution makes it possible to compose independent chords. For live events, predefining a couple of phrases would perhaps just do fine depending on how much chords you need. With 10 octaves you can spread ten different arpeggio chords across each octave. With scripting you could even change the basenote of each chord (phrase-range) to allow playing the same chord in higher or lower octave ranges.

Yes. I actually understand there are many of those posibilities. With several phrases. And actually, as long as they are called “phrases” and not “arp”, nobody will expect them to act like an arpeggiator. So everything is actually fine. That’s why I changed my subtitle into “Brainstorming…”. I’d just like to explore if phrases could resemble one of these “arps” many of us are probably used to. And there sorting and mapping is a key issue.

When I - forgive me ;) - open FL Studio and open Poizone. Just to have any reference at all. Then I see that its arpeggiator does a simmilar approach in terms of sorting the input as I proposed.
E.g. when its set to “UP”, all it does is play what I hold, from lowest to highest, again and again. So, it uses every key. Whereas phrases only use the first/single key and do not map. In other words: Phrases: you define
the chord in the phrase. Arpeggiator: you define the chord by your playing. ** It’s a different thing, and … well… would be nice to have. And with the phrase you could define a typical arpeggio mode very flexible.

E.g. if you hold a C chord with 3 keys. What Poizone does, is, in terms of my proposal: In mode “UP”: indexes 1,2,3. in mode “DOWN”: 3,2,1. with UP/DOWN 1,2,3,2,1. Could all be defined with a phrase easily (C-4,D-4,E-4).

A weakness of my proposal is that using indexes doesn’t keep the note intervals. Poizone does offer a “RANGE” setting, if that is higher than 1, then exactly this “index weakness” is exploited. When you then hold a single key with Poizone, it plays an octave, a fixed interval. Actually in terms of my proposed indexes it plays: 1,2,upperoctave(1),upperoctave(2) when the “RANGE” is set to 2, and so on.

So, to sum it up, if there was an easy way to mix the mapping (indexing) with the fixed (saved in phrases/presets) intervals, that would make the whole thing capable of resembling the arps we have in plugins.

** I know, with several phrase instances or several phrases, this behaviour (define the chord by your playing) can be somehow achieved too. But - to be honest - in a too complicated way, and not ready for re-use (since in many cases it would use different phrases for *one expected result).

Sorry, I didn’t completely understand this. Which feature does “the former solution” base on? The current “Transpose” Keytracking or my proposed “Map Keys” Keytracking?

The former solution i copied in the code boxes.

Oh, ok, now I understand it. ^_^

For other arpeggio solutions i noticed now i can stack envelopes on the pitch and make advanced arpeggios with points, but i think it’s a bit sad i only see the point value as a decimal and not the corresponding pitch note.

would be actually a nice feature if the modulation system would show the resulting note, even though it would have to process that modulation chain till the end just for the gui

Yes, but i’m talking more about how it was in the previous version, where it was 100 cents per note which made it easy to see where you were on the scale.

yep but it’s obvious that they had to remove this since you need to know the final frequency to say what a cent is

on the other hand, maybe the whole pitch chain uses cents and they just missed to do the input format correctly. maybe should write them a kind bug report ^_^

TheBellows: sorry I forgot the word “you” in the last sentence, so it looked as if I was going to write them, instead i wanted to suggest you do this. well, so now I’ve simply created a new topic ^_^

lol

Wow, I was about to ask for this feature:)

just wanted to note again, the scale setting and vv’s way with triggering multiple phrases are cool

but…having an arpeggiator and being able to play chords on the keyboard is quite different

I think there was a tool for Renoise that could generate arpeggios in a give scale. You could try generating a bunch of them and insert as instrument phrases.

It is not ideal, but maybe there will be a proper inbuilt arpeggiator in Renoise instrument facility some day. That would be quite cool.