Welcome to %s forums

BrainModular Users Forum

Login Register

Access MIDI scale transformation by "index"

Tell us what you'd like Usine to do
Post Reply
ceasless
Member
Posts: 330
Contact:

Unread post by ceasless » 20 Sep 2014, 13:58

This feature will change forever the use of grids in Usine, in my opinion. Working with arrays of values happens a lot with grids, and so it makes more sense from the grid that the MIDI transform module is not actually 'correcting' but actually 'accessing' the right note for the current key. Let me explain a bit further:

There is a "scale" listbox which will make sure all notes will be in a specified key. When you play a C or C#, it will play C# for both if you are in the key of C. It's not always two notes mapping into one note, sometimes it is three notes and sometimes one.

I'd like to use it from the perspective of a grid -- so 0 is the first note of the selected scale, 1 is the next note, etc. I guess we would also need an output from the transformer that says how many notes the current scale has in an octave. Then I could indicate scales properly on the grid by highlighting every root note. Say it is D Minor, then every 8th pad will be highlighted in a different color than the rest of the pads. (See Launchpad95 or Push for an example). The transformer module wouldn't really care, it just takes whatever note number (ie grid index) and sends out the right note in the selected scale.

This is the last feature I should need for the Push patches to become really useful. I've been looking into the SDK and it should be pretty straightforward to create the "scaffolding" for everything else, but it would make the project much less heavy if I don't have to code up a new scale transformation module as well.

Thanks for all the additions you've added for me already, senso! Now I just need one more.. It will keep me busy on the anxious wait for Hollyhock 2 ;)

Fléau
Member
Posts: 99
Contact:

Unread post by Fléau » 20 Sep 2014, 19:21

hi ceasless, not sure i've understood all.
did you digged into my v5 patch (isomorphic keyboard)?
there's around 90 scales coded in 12 lenght arrays.
there is also a "array remove zero" script in in it,
so if zero is the root note, concatenate with the same array +12(if it's octave based, or 'array lengh' if it scale based)
then you could easily find every root note with a modulo of 12 or scale lenght.
i know that you're not familiar with v5 but it's quasi same patching and you could find good ideas.
good luck.

ceasless
Member
Posts: 330
Contact:

Unread post by ceasless » 21 Sep 2014, 13:38

Thanks fléau, I will take a look!

User avatar
senso
Site Admin
Posts: 4424
Location: France
Contact:

Unread post by senso » 21 Nov 2014, 10:59

hello,
thanks for the suggestion
I think that is a little bit specific to your needs and you could easily create a patch for that?

Post Reply

Who is online

Users browsing this forum: No registered users and 12 guests