Welcome to %s forums

BrainModular Users Forum

Login Register

Piano roll, randomization,note duration

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

Unread post by noise2sine » 15 Sep 2010, 10:56

Hello,

here is my reqest :

let's say i'm writing a B Dorian scale in the piano roll : B C# D E F# G# A B

And this scale is written in 4/4 using eighth note (croches). My wish, would to be able to switch from what is written in the piano roll to some others notes duration, for example let's say switching to triplets for example with randomized B dorian scale notes ?

It would be nice as well to be able to modify the time signature in the piano roll ? switching from 4/4 to 5/8 for example ? and so the note duration options will follow the maximum time value offered by the time signature ?

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

Unread post by senso » 15 Sep 2010, 17:14

The events inlet/outlet is designed to make complex manipulations on midi events exactly as you describe.
the main pb is that this parameter is not yet documented...
I'll create a wiki page soon!

noise2sine
Member
Posts: 458
Contact:

Unread post by noise2sine » 15 Sep 2010, 17:31

Great ! i'm looking forward to experiment this feature. I would like to mention that Usine give me every day amazing musical sensation ! pure pleasure.....

23fx23
Member
Posts: 2545
Contact:

Unread post by 23fx23 » 15 Sep 2010, 17:35

wait a sec ya mean we can now feed in?

if so that's awesome and mean such things could be build now

23fx23
Member
Posts: 2545
Contact:

Unread post by 23fx23 » 15 Sep 2010, 20:55

woa quick tested yaeh now can enter notes in first pianoroll, make process in between and retransfer to a second pianoroll.
insane. (blow my head for few second imagining possibilities and how 'relatively' easy that could be now..)
transfert notes events to script data and vice versa without bothering the playing/outputing process as done by pianoroll
is simply awesome and endless powerfull.

little mouse the thing you're after seems pretty doable now.

noise2sine
Member
Posts: 458
Contact:

Unread post by noise2sine » 15 Jun 2011, 09:05

Hello,

I'm going back to this request....

@23fx23 : How a patch as describe above can be done ? Can u help me making that tool ?

Cheers mate


User avatar
nay-seven
Site Admin
Posts: 5684
Location: rennes France
Contact:

Unread post by nay-seven » 18 Jun 2011, 08:50

i suppose 23fx is really busy those days...;-)
have you read this tips noise2sine..?

manipulate_events_array_pianoroll

could be a first start, then what type of manipulation have you in mind..?

noise2sine
Member
Posts: 458
Contact:

Unread post by noise2sine » 19 Jun 2011, 08:40

Hello,

Thanks Nay for the tip. No i didn't read it before! Well the manipulation i need are the one i mention, in the first post : like moving randomly within a pattern, with the possibility to change the note duration...

I dont know where to start for building a patch like that.....

23fx23
Member
Posts: 2545
Contact:

Unread post by 23fx23 » 19 Jun 2011, 15:15

Hi little mouse , yeam sorry i was/am very busy actually, plus i had my internet connection purely shut down :(. I had started some midi reapeater, but it was still a bit harder than i thought. But i promise to get back on this when free time. Sadly ( i just so enjoyed patching new stuff this week, but i got to go back to intense work :(. Ill try to help ya asmuch as i can. See u soon. Cheers

noise2sine
Member
Posts: 458
Contact:

Unread post by noise2sine » 19 Jun 2011, 15:57

Hi 23fx23 !

Thanks a lot for your attention, i will wait , when you will have free time, i'm looking forward to see yr brillant patching ideas.

Good Work then !

noise2sine
Member
Posts: 458
Contact:

Unread post by noise2sine » 12 Nov 2012, 12:00

Hello !

Anymore ideas about this patch request ? It would be an amzing xmas gift !

any suggestion would be great !

Cheers

23fx23
Member
Posts: 2545
Contact:

Unread post by 23fx23 » 12 Nov 2012, 22:13

hi noise2sine, iam really sorry i forgot about this and had so little time for patching those days...

here i made two little scripts that could let you experiment things. one demultiplex the datas out of events to separate arrays, and one do the reverse, remultiplex all datas to the events. that mean in between you can manipulate the arrays to do various things like random, rescale, shift ect... ive made a basic wksp with an exemple to randomize starts, length, velocity and note.
maybe can be a starting point for your experiences ;) hope it helps cheerz

http://sensomusic.com/forums/uploads.ph ... ents03.wkp

User avatar
nay-seven
Site Admin
Posts: 5684
Location: rennes France
Contact:

Unread post by nay-seven » 12 Nov 2012, 22:48

Cool one 23fx !
Thanks to share !

noise2sine
Member
Posts: 458
Contact:

Unread post by noise2sine » 12 Nov 2012, 22:50

Thank you so much ! i will have a go and let you know ! thanks again to share

noise2sine
Member
Posts: 458
Contact:

Unread post by noise2sine » 14 Nov 2012, 10:26

Hello 23fx23,

Yes it's working really fine ! It's exacty what i needed .


Thanks again

23fx23
Member
Posts: 2545
Contact:

Unread post by 23fx23 » 14 Nov 2012, 11:13

cool ;) ive worked on a 'scale' plugin matrix based to allow to filter some notes or not, i will try to implement it for it to work with piano roll, still having reflexion on how to do kind of quarter/1/8th/1/16, triplet or any lenght fill/convert thing, will let ya know and upload if find something cool..

noise2sine
Member
Posts: 458
Contact:

Unread post by noise2sine » 14 Nov 2012, 11:35

At the moment i'm connecting a Midi transform module to the outinlet of your piano roll in order to rescale the note after pressing the randomize note button.it's working quite fine. The problem with the Midi transform module is that there are really few scale. But it can be an easy option.

Randomizing duration works fine to me .

The only request i could mention would be the randomize starts, when i'm pressing it some of the values don't correspond to a quantisation value.

Thanks again

23fx23
Member
Posts: 2545
Contact:

Unread post by 23fx23 » 14 Nov 2012, 18:01

oh yup clever to use after the midi transform module.

the quantisize random start should be easy to implement, i just need to round values in the script so that it falls on integer beat, will try to have a look tonight when im back from work..by waiting you could test to just add a round or trunc module after the start array where you press randomize, should work.

noise2sine
Member
Posts: 458
Contact:

Unread post by noise2sine » 15 Nov 2012, 09:42

After some testing, i think it will be really cool that when you enter notes in the piano roll you can then randomize them but keeping the initial scale :

B C# D E F# G# A B and after pressing the randomize note BUTTON we can have for example :

G# E A F# B C# D D

hard to do ?

23fx23
Member
Posts: 2545
Contact:

Unread post by 23fx23 » 16 Nov 2012, 10:20

mmm should be doable but little more complicate, will try and let ya know

noise2sine
Member
Posts: 458
Contact:

Unread post by noise2sine » 16 Nov 2012, 11:01

very kind of you! thanks again four your attention !

noise2sine
Member
Posts: 458
Contact:

Unread post by noise2sine » 13 Dec 2012, 09:09

Hello 23fx23,

I presume you are really busy, i just wanted to mention that your patch you have made is really great, and i didn't find other patch or plug doing this kind of thing. for now it needs to be improved and i suppose you are really busy.
My only request would be to be able to use the random note duration on more than one bar. Actually it's just working on just one bar. If can find time for fixing that, i would be very happy.

Would you think Hollyhock would do that kind of trick ?

Anyway thanks again for your attention

23fx23
Member
Posts: 2545
Contact:

Unread post by 23fx23 » 13 Dec 2012, 13:39

hello noise to sine, yeah im sadly overbusy those days, but i should be soon on holydays and back to patching.
ive worked hard on a 'scale' patch matrix based to allow to filter different scales, sadly i don't know what ive messed, i lost the file during backups:(
anyway, will script it back, and will have a look for the more than one bar thing.
can't promise you before xmas but will do my best. cheerz

noise2sine
Member
Posts: 458
Contact:

Unread post by noise2sine » 29 Mar 2013, 09:24

Hello,

Any fresh news about this request ? :)

Fléau
Member
Posts: 99
Contact:

Unread post by Fléau » 29 Mar 2013, 12:41

Hello,

@noise2sine:
I think i can patch it,
would you prefer to randomize notes from a chosen scale
or from a scale made from initial notes?
(how many notes in general? more than one octave?)

@23fx23:
i did this by the past with a get matrix column
but matter comes when you have a huge pianoroll array
and you want to filter events before startposition and after endposition,
(60000 makes 5*12000 arrays) becomes really painfull for the CPU.
Could it be possible that you modify the script with an 'extract sub array'
based on that:?
Ls:= getvalue(startpos);
Le:=getvalue(endpos);

23fx23
Member
Posts: 2545
Contact:

Unread post by 23fx23 » 29 Mar 2013, 14:32

in fact i made a scale plugin matrix based, instead of having a huge mx with all note, i kept only a 12x12, but it reminds the input octave , filter the note and reaply the octave. im really sorry i didn't post it yet, will try to find it back and post

23fx23
Member
Posts: 2545
Contact:

Unread post by 23fx23 » 29 Mar 2013, 14:52

aaarf i can't find it back im so sad i had worked hard on it :( i may have lost it during format aaf..im so dumb i should have posted it as soon as it was done checking my external drives but im affraid i lost it

23fx23
Member
Posts: 2545
Contact:

Unread post by 23fx23 » 29 Mar 2013, 15:10

i will try to redo it :/ but it will take some time im really sorry, i promise it was done :( by wayting fleau if you wanna try the patch idea.

the trick i would use is make a 12*12 mx, on input apply a div 12 so you get the octave number.
ie if you get note 26, div 12 will give ya 2, the note to be filtered is 26 - (12*2) = 2 or (26 mod 12) , then the mx will remap to wanted note/scale, and on output you keep the new note, ie 4 if you offseted of +2, then you you re-add input 'octave) so you will get the new note to be 4+24 =28

Fléau
Member
Posts: 99
Contact:

Unread post by Fléau » 29 Mar 2013, 16:37

my tought was keeping the octave with a div12 like you,
but not filtering the randomized notes:
randomize (rnd 1 to 7 for ex)and remap according to the scale array then add the octave.
(remapping non authorised notes is a bit tricky)

i use just a combobox and the 'dec to bin' module to store a lot of scale.
take a look at :
harmo

after a quick test on your script,
the randomize starts button apply to ALL the pianoroll array, not only the loop.


@ noise2sine:
you didn't managed to use my note scaler patch?

Fléau
Member
Posts: 99
Contact:

Unread post by Fléau » 29 Mar 2013, 17:04

here is your patch with a real time scaler:
http://www.sensomusic.com/forums/uploads.php?file=events04.wkp
but i think it would be better and more efficient to randomize only scaled notes.

noise2sine
Member
Posts: 458
Contact:

Unread post by noise2sine » 31 Mar 2013, 12:44

Hello,

First , really thank you for your attention !
@noise2sine:
I think i can patch it,
would you prefer to randomize notes from a chosen scale
or from a scale made from initial notes?
(how many notes in general? more than one octave?)
Actually both are quite interesting . it can be good to set a scale and then using the random possibilities.But at the same time it can be really cool to to write notes in the piano roll and beeing able to randomize them. I think around seven note it's cool.i don't mind about octave possbililities.

Do you think it will be possible to have randomization for 2 bars ?

I didn't manage to use your resacler :(

The last patch is really cool and very useful

really thank you to all of you for your help

percuson
Member
Posts: 105
Location: Leipzig, Germany
Contact:

Unread post by percuson » 31 Mar 2013, 23:46

Hi,
when I was trying to run fléaus patch, the dec2bin.usr module was missing
download it here and install to your library:

decimal 2 binary

and a quick test showed, that it seems to be a great work!
Very nice idea with the dec 2 bin module for storing the scales!

Fléau
Member
Posts: 99
Contact:

Unread post by Fléau » 08 Apr 2013, 15:33

hi,
another way to do it (not in real time, less cpu) :
http://www.sensomusic.com/forums/uploads.php?file=events05.wkp

noise2sine
Member
Posts: 458
Contact:

Unread post by noise2sine » 09 Apr 2013, 09:37

Thanks but i couldn't make it work properly . I'm using the 5.80.06 version.

The patch is open but i can't randomize note above C0 ? No randomization possible in C1 and over ?

Do you think it's possbile to have random action within 4 bars ?

Fléau
Member
Posts: 99
Contact:

Unread post by Fléau » 14 Apr 2013, 13:11

Sorry noise2sine,
even after 2 hours of investigation, i can't find the problem.
so you should use the first one i've uploaded.

about the 4 bar random action, it only depends on the script and i'm not able.

Post Reply

Who is online

Users browsing this forum: Bing [Bot] and 8 guests