New randomizer engine suggestions.
-
- KVRian
- Topic Starter
- 625 posts since 8 Apr, 2014
I'm shapping another new randomizer engine (generator), and while I finish it I'd like to hear from you some ideas or suggestion to another one. How would be your ideal randomizer engine (generator or mutator)? What kind of phrases should it generate?
Notice that it must have only few parameters. I don't want to create a randomizer that you need more time to setup than writting a random phrase manually
Notice that it must have only few parameters. I don't want to create a randomizer that you need more time to setup than writting a random phrase manually
-
- KVRist
- 378 posts since 18 Aug, 2014
Great news any additional random features will be appreciated.
For happy accidents Flip X and Flip Y are often quite useful when applied to phrases.
One thing that I think would really add power to the randomizer would be the possibility to interact with the phrase grid while still having access to the open randomizer window.
In that way it would be possible to make very small adjustments to the phrase without having to close and re-open the randomizer before moving onto the mutator.
Also the end cursor could be quickly manipulated which would be useful to quickly increase/decrease the phrase length.
I have a small tip for those that are new to the randomizer and may have overlooked
track configuration.
Consider leaving the track configuration window open and floating before any randomize sessions.
That way you will have access to both the speed of the phrase as well as access to quickly drag and drop quantize files in.
I find that /2 can result in convincing motifs that aren't too busy.
Both can have a huge impact on how randomized phrases turn out and of course can be adjusted to suit.
For happy accidents Flip X and Flip Y are often quite useful when applied to phrases.
One thing that I think would really add power to the randomizer would be the possibility to interact with the phrase grid while still having access to the open randomizer window.
In that way it would be possible to make very small adjustments to the phrase without having to close and re-open the randomizer before moving onto the mutator.
Also the end cursor could be quickly manipulated which would be useful to quickly increase/decrease the phrase length.
I have a small tip for those that are new to the randomizer and may have overlooked
track configuration.
Consider leaving the track configuration window open and floating before any randomize sessions.
That way you will have access to both the speed of the phrase as well as access to quickly drag and drop quantize files in.
I find that /2 can result in convincing motifs that aren't too busy.
Both can have a huge impact on how randomized phrases turn out and of course can be adjusted to suit.
-
- KVRian
- Topic Starter
- 625 posts since 8 Apr, 2014
I thought about it long time ago. I was thinking to include them in a "magnet" mutator but it's only a vague idea, because maybe it's better create separate actions for them. You select the notes and then you flip them using their central axis. What do you think?kurodo wrote:For happy accidents Flip X and Flip Y are often quite useful when applied to phrases.
We're testing it in our 'lab'. It works in this way: you press a button in the mutator and it's minimed, then you can do the changes you want and optionally select few notes. When you restore the mutator you can decide if mutate all notes or just the selected. Two new features for the price of one.kurodo wrote:One thing that I think would really add power to the randomizer would be the possibility to interact with the phrase grid while still having access to the open randomizer window.
In that way it would be possible to make very small adjustments to the phrase without having to close and re-open the randomizer before moving onto the mutator.
Also the end cursor could be quickly manipulated which would be useful to quickly increase/decrease the phrase length.
I have a small tip for those that are new to the randomizer and may have overlooked
track configuration.
Thanks for the tip! I will try to include it in a future video tutorial.kurodo wrote:Consider leaving the track configuration window open and floating before any randomize sessions.
That way you will have access to both the speed of the phrase as well as access to quickly drag and drop quantize files in.
I find that /2 can result in convincing motifs that aren't too busy.
Both can have a huge impact on how randomized phrases turn out and of course can be adjusted to suit.
-
- KVRist
- 378 posts since 18 Aug, 2014
Separate actions would be awesome if possible.squaredheads wrote:
I thought about it long time ago. I was thinking to include them in a "magnet" mutator but it's only a vague idea, because maybe it's better create separate actions for them. You select the notes and then you flip them using their central axis. What do you think?
Even a basic flip on the whole phrase would offer many creative possibilities.
squaredheads wrote: We're testing it in our 'lab'. It works in this way: you press a button in the mutator and it's minimed, then you can do the changes you want and optionally select few notes. When you restore the mutator you can decide if mutate all notes or just the selected. Two new features for the price of one.
Really cool, being able to mutate isolated notes within a phrase will take melody creation to a new level.
Once again thanks for the considerations.
-
- KVRist
- 275 posts since 11 Nov, 2012
I might be wrong here as I haven't fully investigated the random function but it seems it just randomizes once (then the function has to be invoked again manually), right?
I'd like to see it re-randomize each time it loops through the phrase (at the users discretion of course, via a switch/button). It would make for very interesting live presentation. I tend to use controlled-random approaches on a lot of things (eg. pitch, velocity, slide, strike, ratchet etc. - Thesys excels at that kind of stuff).
Just my 3 cents!
I'd like to see it re-randomize each time it loops through the phrase (at the users discretion of course, via a switch/button). It would make for very interesting live presentation. I tend to use controlled-random approaches on a lot of things (eg. pitch, velocity, slide, strike, ratchet etc. - Thesys excels at that kind of stuff).
Just my 3 cents!
-
- KVRist
- 378 posts since 18 Aug, 2014
Yeah that would be very good.Protocol_b wrote:I might be wrong here as I haven't fully investigated the random function but it seems it just randomizes once (then the function has to be invoked again manually), right?
I'd like to see it re-randomize each time it loops through the phrase (at the users discretion of course, via a switch/button). It would make for very interesting live presentation. I tend to use controlled-random approaches on a lot of things (eg. pitch, velocity, slide, strike, ratchet etc. - Thesys excels at that kind of stuff).
Just my 3 cents!
Perhaps the midi mapping could be extended to the randomizer module? we could then use midi learn to control the randomizer directly from our midi keyboards in our own way.
The more things within Nora that can be midi mapped the better.
-
- KVRian
- Topic Starter
- 625 posts since 8 Apr, 2014
This is a bit problematic, let me explain you the reason.
Plugins have different thread that works in parallel. One of them is the high-priority audio thread, that process your input and generate the output. The other one is the interface thread, with low priority (there are more threads).
When you create a random sequence, Nora removes some notes from the memory, and add another ones. Such operations that the interface do have a low priority and they're performed when the CPU have some spare cycles. An high priority thread cannot reserve memory and create a new note, and the audio thread is really sensitive with such operations. It could even freeze your host. MIDI operations, like CCs, are in the audio thread and if the order generate a new phrase they would be performing an illegal action in this high priority thread.
The only way to do this is send a signal to the interface thread so it would do it when it can (usually, in few milliseconds). Is the reaction period. But if I do this there is a new problem. Imagine you send a signal to randomize your phrase just when a phrase start. The firsts notes wouldn't be randomized at all, because they would sound in this short reaction period. Then the phrase would be randomized and since the engine would detect that the old notes were deleted, it would stop it sound, doing that the new phrase sounds wrong.
There is another solution used by the classic arpeggiators, but that cannot be applied to Nora. As you know, Nora isn't a static 16 steps arpeggiator. It can be 1, 32, 87 or 4832904 steps arpeggiator. And each 'step' can have multiple notes placed in the time and or pitch octave. It means that a sequence that have 4 notes, only have information for those 4 notes in memory. If you add or remove them, they're added or removed from the memory. I guess other arpeggiators that have, let's say, 16 steps, have 16 notes in memory, enabled or not, but always 16 notes reserved in memory.
If I do this technique about reserve all the possible notes in memory, a simple 16 steps grid in Nora with 3 notes/octave and 3 octaves could have more than 7000 notes! That's is too much for a CPU. Then the only way to do it is creating and removing notes.
And (this is a minor problem that can be omitted) I created Nora because I wanted an highly musical arpeggiator, for classic genres of electronic/instrumental music. That's why I didnt included realtime randomizations.
Now, let's talk about some viable alternatives:
- You could generate multiple phrases in different patterns, and trigger them.
- I could implement something to alter the note/pitch of the notes in the same way that the velocity real time randomization - but this is a bit tough and it will need some time. The caveat is that this would be happening always, and that chords in nora couldn't sound appropriately (imagine one note changing towards up, and another towards down).
I'm open to your ideas.
Plugins have different thread that works in parallel. One of them is the high-priority audio thread, that process your input and generate the output. The other one is the interface thread, with low priority (there are more threads).
When you create a random sequence, Nora removes some notes from the memory, and add another ones. Such operations that the interface do have a low priority and they're performed when the CPU have some spare cycles. An high priority thread cannot reserve memory and create a new note, and the audio thread is really sensitive with such operations. It could even freeze your host. MIDI operations, like CCs, are in the audio thread and if the order generate a new phrase they would be performing an illegal action in this high priority thread.
The only way to do this is send a signal to the interface thread so it would do it when it can (usually, in few milliseconds). Is the reaction period. But if I do this there is a new problem. Imagine you send a signal to randomize your phrase just when a phrase start. The firsts notes wouldn't be randomized at all, because they would sound in this short reaction period. Then the phrase would be randomized and since the engine would detect that the old notes were deleted, it would stop it sound, doing that the new phrase sounds wrong.
There is another solution used by the classic arpeggiators, but that cannot be applied to Nora. As you know, Nora isn't a static 16 steps arpeggiator. It can be 1, 32, 87 or 4832904 steps arpeggiator. And each 'step' can have multiple notes placed in the time and or pitch octave. It means that a sequence that have 4 notes, only have information for those 4 notes in memory. If you add or remove them, they're added or removed from the memory. I guess other arpeggiators that have, let's say, 16 steps, have 16 notes in memory, enabled or not, but always 16 notes reserved in memory.
If I do this technique about reserve all the possible notes in memory, a simple 16 steps grid in Nora with 3 notes/octave and 3 octaves could have more than 7000 notes! That's is too much for a CPU. Then the only way to do it is creating and removing notes.
And (this is a minor problem that can be omitted) I created Nora because I wanted an highly musical arpeggiator, for classic genres of electronic/instrumental music. That's why I didnt included realtime randomizations.
Now, let's talk about some viable alternatives:
- You could generate multiple phrases in different patterns, and trigger them.
- I could implement something to alter the note/pitch of the notes in the same way that the velocity real time randomization - but this is a bit tough and it will need some time. The caveat is that this would be happening always, and that chords in nora couldn't sound appropriately (imagine one note changing towards up, and another towards down).
I'm open to your ideas.
-
- KVRist
- 378 posts since 18 Aug, 2014
Do the above problems relate to mapping the dials of Nora to a midi controller?
I mean everytime I click the randomizer button on the mouse controller it occurs to me wouldn't it be nice to map that to one of my midi controller buttons.
Same for the dials within the randomizer.
The above would at least allow the user to move away from their their computer qwerty keyboards and give a sense of freedom.
The only thing then required would be a way to take snapshots of phrases that the user likes (via a snapshot button also mapped to the midi controller) snapshots could be stored in physical memory or hard disk.
I currently manually drag and drop phrases I like but hopefully that could be automated via snapshots. (Generic incremental names would do, could always rename them after)
Each bank could hold up to 10 phrases and the user could recall any one of them via their midi controller.
The big advantage is the end user could quickly generate, store and recall all from their midi controller.
But anyway the dust has hardly settled on your last update with so many new cool features and here I am again pushing for even more new features
I mean everytime I click the randomizer button on the mouse controller it occurs to me wouldn't it be nice to map that to one of my midi controller buttons.
Same for the dials within the randomizer.
The above would at least allow the user to move away from their their computer qwerty keyboards and give a sense of freedom.
The only thing then required would be a way to take snapshots of phrases that the user likes (via a snapshot button also mapped to the midi controller) snapshots could be stored in physical memory or hard disk.
I currently manually drag and drop phrases I like but hopefully that could be automated via snapshots. (Generic incremental names would do, could always rename them after)
Each bank could hold up to 10 phrases and the user could recall any one of them via their midi controller.
The big advantage is the end user could quickly generate, store and recall all from their midi controller.
But anyway the dust has hardly settled on your last update with so many new cool features and here I am again pushing for even more new features
-
- KVRian
- Topic Starter
- 625 posts since 8 Apr, 2014
It's not related. Assigning MIDI controllers to randomizer knobs/switch/buttons is absolutely viable. However I cannot do this until I finish the add/remove tracks and a couple of features. But it will be done.kurodo wrote:Do the above problems relate to mapping the dials of Nora to a midi controller?
I mean everytime I click the randomizer button on the mouse controller it occurs to me wouldn't it be nice to map that to one of my midi controller buttons.
Same for the dials within the randomizer.
The above would at least allow the user to move away from their their computer qwerty keyboards and give a sense of freedom.
How would be if you could drag each snapshot without closing the randomizer to the Pattern Editor or Playlist and then recall them with your MIDI Controller?kurodo wrote:The only thing then required would be a way to take snapshots of phrases that the user likes (via a snapshot button also mapped to the midi controller) snapshots could be stored in physical memory or hard disk.
I currently manually drag and drop phrases I like but hopefully that could be automated via snapshots. (Generic incremental names would do, could always rename them after)
Each bank could hold up to 10 phrases and the user could recall any one of them via their midi controller.
The big advantage is the end user could quickly generate, store and recall all from their midi controller
Yes! You should be doing music a show me what you're creating to make me feel proud!!kurodo wrote:But anyway the dust has hardly settled on your last update with so many new cool features and here I am again pushing for even more new features
-
- KVRist
- 378 posts since 18 Aug, 2014
No rush at all, its comforting to know sometime down the line it may be implemented.squaredheads wrote:
It's not related. Assigning MIDI controllers to randomizer knobs/switch/buttons is absolutely viable. However I cannot do this until I finish the add/remove tracks and a couple of features. But it will be done.
That sounds good but as I said no pressure or rush ...all in good time.squaredheads wrote: How would be if you could drag each snapshot without closing the randomizer to the Pattern Editor or Playlist and then recall them with your MIDI Controller?
I think you have bigger fish to fry dealing with other user requests. I've already had my fair share of features implemented and I am very happy indeed, its always fun though discussing these things.
Rest assured as soon as the stars align in a perfect configuration I'll make and release the greatest album ever and you will be proud.squaredheads wrote: Yes! You should be doing music a show me what you're creating to make me feel proud!!
-
- KVRist
- 283 posts since 17 Feb, 2014
There exists an old ARP VSTi which is able to modulate note position and pitch via 2 LFOs. These LFOs have also a random feature.
This sounds sometimes very interesting and could somehow also be integrated in Nora.
Just a suggestion.
This sounds sometimes very interesting and could somehow also be integrated in Nora.
Just a suggestion.
-
- KVRian
- 541 posts since 1 Jan, 2004
which one? maybe i have it.MorpherX wrote:There exists an old ARP VSTi which is able to modulate note position and pitch via 2 LFOs. These LFOs have also a random feature.
This sounds sometimes very interesting and could somehow also be integrated in Nora.
Just a suggestion.
"..What is simple, is simply seen.."
-
- KVRian
- Topic Starter
- 625 posts since 8 Apr, 2014
I'll think about it, due to the high flexibility of Nora phrases it's not easy. Anyway, I'll place it in the user wishlist. However at the moment, it's not planned for the next patch.
-
- KVRist
- 283 posts since 17 Feb, 2014
Hi,squaredheads wrote:I'll think about it, due to the high flexibility of Nora phrases it's not easy. Anyway, I'll place it in the user wishlist. However at the moment, it's not planned for the next patch.
you are right.
I think it's nearly impossible to add randomising LFO features to a clip based arpeggiator, but maybe something similiar.
A randomizing feature which is live active while playing back one or more clips.
-
- KVRian
- 1371 posts since 11 Nov, 2013
maybe its not too late. maybe it is usefull, when you can add rythm strings like this.squaredheads wrote:I'm shapping another new randomizer engine (generator), and while I finish it I'd like to hear from you some ideas or suggestion to another one. How would be your ideal randomizer engine (generator or mutator)? What kind of phrases should it generate?
Notice that it must have only few parameters. I don't want to create a randomizer that you need more time to setup than writting a random phrase manually
+H--+-+-. + mean play a note H mean hold this note in next step. - mean play no note. and if there can such ryhtms store in browser there can choose a rythm pattern and the randomizer can create random notes for +
it is also usefull if there can store melodie lines as this. 0242004
And depend on the rythm template string the the melody line is play in the chooce ryhtm. So with mix of diffrent melody lines and rythms you can create fast diffrent sounding patterns.
win 10 64 22H2 intel i5 8600K (6*3.6 GHZ) 32 GB Ram