## MIDI Channel output Cycler

Device/Module Wishlist

Original topic on PlanetZ: https://forums.scopeusers.com/viewtopic.php?t=16466

####

Posted: Tue Jul 26, 2005 9:43 am
by paulrmartin
This module would have one MIDI input and a selectable number of outputs, up to 16, not unlike ASIO modules.
Each new MIDI note is cycled through the number of selected channels.
Example:
5 outputs are selected.
If a solo line is played each new note will cycle to the next channel and back to channel 1( 1,2,3,4,5,1,2.....)
If, say, a 3-note chord is played repeatedly, the notes will be split up and cycled though the channels thus:
1,2,3
2,3,4
3,4,5
4,5,1
5,1,2 and so on
On the panel of the module, we can have selectable MIDI channels for the outputs.
Transposition(this is important) and delay(if possible) parameters would be displayed for each channel.
You can refer to the Yamaha TX-81Z performance patches for an example of what this could do.
I used this "effect" a lot when I had the TX-81Z.
I like to use such randomisers
I know this type of module is possible to make. Or is something out there that I missed?
Cheers
Paul

####

Posted: Tue Jul 26, 2005 3:39 pm
by hubird

####

Posted: Tue Jul 26, 2005 4:01 pm
by paulrmartin
Is that a yes or a no, Huub?

####

Posted: Tue Jul 26, 2005 4:38 pm
by hubird
both, as I think it's a nice idea, but i can't help you
I thought, if you take 5 channels, and put five notes in a time setting that deviates from the song's one, then you get an interesting always-changing pattern.
Combined with some modulation on one or more synths you get a living thing
It will help to keep the sequencer's arrangment clean if you try stuff like this

####

Posted: Tue Jul 26, 2005 6:00 pm
by paulrmartin
Yeah! Can you imagine a chord being broken down, one note to Prisma, another to Vectron and another to Minimax? The possibilities are endless!

####

Posted: Thu Jul 28, 2005 6:42 am
by Casper
Well, there is a midichannelchanger module in the SDK , together with an event counter it will do the trick I think,
Good luck.

####

Posted: Thu Jul 28, 2005 7:46 am
by paulrmartin
Does anybody with SDK have the time to create this module?
I don't have 15 DSP's so SDK is out for me...

####

Posted: Thu Jul 28, 2005 8:00 am
by Casper
Well, I was trying.. But no promisses.
So far only manual changing the channel.
But then it would be to hard to split a chord. The counter is counting a little weird. But I'll keep trying ,for today that is. (darn that there is no normal midi messagebuilder in SDK)
Cheers

####

Posted: Thu Jul 28, 2005 8:04 am
by paulrmartin
Cheers to you, Casper

####

Posted: Thu Jul 28, 2005 8:53 am
by astroman

> On 2005-07-28 09:00, Casper wrote:
> ...(darn that there is no normal midi messagebuilder in SDK)

exactly, you name it...
it would be easier to program the midi stuff with any traditional language (midi is bits shifting and masking anyway) and link it externally, but then how's to keep timing aligned ???
cheers, tom

####

Posted: Thu Jul 28, 2005 12:47 pm
by Casper
...Back to the drawing bord

####

Posted: Thu Jul 28, 2005 12:56 pm
by paulrmartin
Gee, I wish I could help...

####

Posted: Thu Jul 28, 2005 1:22 pm
by at0m

> On 2005-07-28 09:53, astroman wrote:
> but then how's to keep timing aligned ???

Here's some logic on how they deceided on note priorities etc, could help on the timing:
http://www.cim.mcgill.ca/%7Eclark/nordm ... peggiation

####

Posted: Thu Jul 28, 2005 1:36 pm
by paulrmartin
That's interesting but if we have 3 outputs selected and 3-note chords played, the separate notes would always go to the same outputs unless there is a function to change their priority.

####

Posted: Sat Jul 30, 2005 2:25 pm
by Casper
Well, an attempt that sort of works.
Only there are these differences in midiimplementation like Roland vs Cubase.
To be short , it still has bugs.
But I think this is the idea.
Reset only when sequencer stopped.
download at
http://www2.hku.nl/~casper0/
cheers

####

Posted: Sat Jul 30, 2005 2:29 pm
by Casper
For now , I must create some music...
All this searching for the right stuff takes up ours.

####

Posted: Sat Jul 30, 2005 2:48 pm
by Casper
Oh , and sorry but chords arn't doing great so far..

####

Posted: Sun Jul 31, 2005 1:28 pm
by paulrmartin
Nothing there to try, Casper. Just a screen shot

####

Posted: Mon Aug 01, 2005 1:53 am
by Casper
mm, thats odd.
It's working over here. (it's a flash page)
But here is the exact link.
http://student-kmt.hku.nl/~casper0/CreamwareDevices/
Don't expect too much of it.
It still has hanging notes. And sometimes it is nessesary to disconnect the synths and reconnect to get rid of the hanging notes.

####

Posted: Mon Aug 01, 2005 3:21 am
by paulrmartin
Cool!
I did not know I had to click in "Centrox Devices". The page does work.

####

Posted: Mon Aug 01, 2005 7:04 am
by Casper
In order to make this baby bug free,
I realy need some ideas/sollutions to some problems.
The first and most difficult problem is how to make sure that a midi noteon's channel matches it's brother , the midinote off.
The way it works now is that two counters count seperatly the noteon and noteoff.
That way chords will never work.
Also an overlapping note will cause the previous noteon to hang cause it's noteoff is changed to a different channel at the time of the following note on.
And thats the problem.
Single notes go ok.
Now how do we remember the noteon channel so it's noteoff gets the same channel?
I was thinking of writing a sort of map in an Array. But I have not found out jet how to write a value in an array. Only read values out of a static array (table).
If you have an idea please tell me?
cheers,
Casper

####

Posted: Mon Aug 01, 2005 7:30 am
by paulrmartin
What if you:
First split the chord,
Send each note to outputs through the cycler,
The note on and off should be inherent to the complete note message, no?
Maybe it would be easier to have the outputs all on the same channel. It would only be a question of assigning synths to the separate MIDI outs. After all, the synths don't care what channel they are on. We could always put a channel changer if we need separate MIDI channels

####

Posted: Mon Aug 01, 2005 7:58 am
by paulrmartin
Hmmm....no channel changer plugin for us lowly SFP users...hehe

####

Posted: Mon Aug 01, 2005 10:11 am
by Casper
That might be a great idea but,
About the noteon /off spec.
this is a note on
byte 1 -> 144 (channel 1)
byte 2 -> 60 (note)
byte 3 -> 100 (velo)
this is the end of the message .
the note off is a seperate and single event too.
byte 1 -> 128 (or 144 with velo 0)
byte 2 -> 60
byte 3 -> 100
Because they are seperate I have to somehow match the noteon with the noteoff.
ok , any breaktroughs will be reported here.
cheers,
Casper

####

Posted: Mon Aug 01, 2005 1:36 pm
by paulrmartin
What about working with the "reject" principle?
If number of notes < 1, reject the others and repeat the same operation until there is only one note left.
Make sense?

####

Posted: Mon Aug 01, 2005 2:55 pm
by Casper
So that the channel changes only when there is no key pressed ?

####

Posted: Mon Aug 01, 2005 3:13 pm
by paulrmartin
Actually you may have hit upon it!
No key pressed means note off, right?
So, what I am saying is maybe there should be a chord splitter first (maybe using that rejection protocol)and then each individual note would go through the cycler where the channel changes occur when Note Off messages are percieved.
Hey I'm just shooting in the dark, making suggestions. I may be totally wrong.
Let me know if you want me to shut up

####

Posted: Mon Aug 01, 2005 3:43 pm
by Casper
no keys pressed means that every note that was set to the "on" status , are set to the off status. You can imagine that you press a key on the keybord , and the hold that one. Then pressing a second key and releasing the first one after that event. So a channel change on the moment the second key is pressed also changes the first note off message.
I'm gonna be off this tonight.
Gotta do other stuff.

####

Posted: Mon Aug 01, 2005 4:18 pm
by paulrmartin
I found this link that may help if you have an Atari or you know someone who does:
http://tamw.atari-users.net/msg.htm

####

Posted: Mon Aug 01, 2005 5:04 pm
by Casper
Well, it is a realy nice link , but it doesn't quite solve our SDK related problem.
I do own an Atari Falcon , so maybe i'd give it a try anywayz.
We need a messagebuilder , simple and clear.
set statusbyte, set databyte1 , set databyte2 and bang , message out.
I fully understand how midi works. It's the SDK that's hiding things from me
cheers,
Casper

####

Posted: Mon Aug 01, 2005 7:54 pm
by hubird
why not forget the chords :-0
start making it function for linear mono midi sequences, it would be great on its own.
doubling this proces allows chord thinking anyway

####

Posted: Tue Aug 02, 2005 12:34 am
by alfonso

> On 2005-08-01 08:58, paulrmartin wrote:
> Hmmm....no channel changer plugin for us lowly SFP users...hehe

Not true...
https://forums.scopeusers.com/viewtopic ... orum=16&11

####

Posted: Tue Aug 02, 2005 1:25 am
by Casper
Oh dear, it's the same module i'm using to let it all cycle
But rest asure , you'l get stuck notes with this one too. so single noteon/off messages only.
We'd love to see you make it cycle Alfonso.
cheers,
Casper

####

Posted: Tue Aug 02, 2005 5:21 am
by alfonso

> On 2005-08-02 02:25, Casper wrote:
> Oh dear, it's the same module i'm using to let it all cycle
> But rest asure , you'l get stuck notes with this one too. so single noteon/off messages only.
> We'd love to see you make it cycle Alfonso.
> cheers,
> Casper

I've a bit left SDK for now, I should also fix a couple of modules I posted that have problems with polyphony....
I'm a bit busy with a project of electronic-acoustic music, I have a gig the 7th of august, after that I should start to study SDK again, because I'm not very skilled yet...but with some brain activity it should be possible to find solutions...
Anyway, a MIDI cycler is not something that I would need, Cubase permits all of that without any resource consumption and with more control and possible variations, and even in that case it's not an effect that I would use often, but solving a problem can be stimulating, so if I have a good idea about it I will share it for sure....at the moment I have no idea on how to keep note offs tied to the previous note on message in a poly situation...

####

Posted: Tue Aug 02, 2005 6:01 am
by paulrmartin
You guys are great!
I'd really like to have this module in Scope since switching to Cubase is not an option for me(Spent too long learning Logic).
Is there an SDK manual I could look at to try and help?

####

Posted: Tue Aug 02, 2005 6:51 am
by alfonso

> On 2005-08-02 07:01, paulrmartin wrote:
> You guys are great!
> I'd really like to have this module in Scope since switching to Cubase is not an option for me(Spent too long learning Logic).
> Is there an SDK manual I could look at to try and help?

You mean you can't assign different midi channels to each event of a midi track in Logic?
SDK manual? wazzat?

####

Posted: Tue Aug 02, 2005 6:58 am
by paulrmartin
Ok, I did the research after my last post and saw there is no manual.
Of course I can assign whatever channel I want in Logic. I want to have a module that will do this automatically without having to change each and every note by hand.
Once I get the outputs recorded it will be just a matter of assigning synths/samplers to them. Zappa had instant orchestrations in his Synclavier this way because the cycler was integrated.

####

Posted: Tue Aug 02, 2005 7:02 am
by Casper
"Cubase permits all of that without any resource consumption "
I think cubase e.g. the miditransformer lacks a save mechanism too in case of changing a value (note).
I'm gonna do some work on a different device. Cause I'm a little bored with this problem now. But we'l get it in due time.
Until after the 7th then Alfonso and good succes with the gig.
cheers

####

Posted: Tue Aug 02, 2005 7:05 am
by alfonso
Thx!

####

Posted: Tue Aug 09, 2005 9:09 am
by paulrmartin
I really hope you guys are still up to my challenge.
This would be a dream-come-true for me

####

Posted: Wed Aug 10, 2005 12:25 pm
by Casper
Yes , I'm up for the challenge.
Are you willing to give some help Alfonso ?
Casper

####

Posted: Wed Aug 10, 2005 2:53 pm
by alfonso
I tried something but with no luck to now...
I've checked some modules, made some attempts, but I find always a wall that I don't know how to climb. The fact is that I have to dig a bit more, there are a lot of modules that i really don't know what they do. Anyway, let's keep in contact, because it might be that if you make a step that I was not able to make, at that point i could be able to find a solution for the next one and so on...I'm not spending too much time on SDK, but at least I started again to open it sometimes...
I mostly made some little circuits in wich some math is involved, like calculating note numbers out from the freq. output of the mvc, that are not immediatly useful but can become so later, but I never found the time to make some big device...If I need a synth I find it less difficult and better sounding if i use Modular+FleXor...and i really don't see what could i find more in SDK...however some little tools that Scope misses are my first goal for SDK, like those few I've posted...

####

Posted: Fri Aug 12, 2005 9:49 am
by Casper
I have a module online. It's outputting noteon's and noteoff's already. This is where I got stuck.
http://student-kmt.hku.nl/~casper0/Crea ... 20Midi.mdl
Note I don't work with the MCV , but rather the midicontrol2vale module.
Alfonso if you'd be able to take a look , that would be great.
Cheers,
Casper

####

Posted: Mon Aug 22, 2005 9:56 am
by Casper
Alfonso? Have you read this post lately ?
Casper

####

Posted: Mon Aug 22, 2005 2:49 pm
by alfonso

> On 2005-08-22 10:56, Casper wrote:
> Alfonso? Have you read this post lately ?
> Casper

Yes, I' sorry, I'm having some tough time with music work (that's good )...
I've downloaded the module and seen it, but I couldnt figure how to come out with a device that does what requested in this topic...
There are lot of modules to analyze and study what they are for, all the midi array stuff etc., and I'm not really an expert of all this stuff and now I'm too busy with music to spend time on it...but my istinctive impression is that this is a territory a bit out of reach for my knowledge, considering the unexistent documentation.
As I said I've put the sdk a bit apart in this period...

####

Posted: Tue Aug 23, 2005 2:15 am
by Casper
That's ok Alsonso ,maybe in the near future this baby will rock.
How this thing is gonna create this cyler device: We only have to add 1 to the sum of notenumber and the controlvar. Then it will be a channel higher. Ofcourse first there has to be a safetycheck (noteon detector)
that allows the change to happen or not.
we'll see in future times..
cheers,
Casper

####

Posted: Thu Oct 06, 2005 3:39 am
by paulrmartin
Hi guys. I was wondering if this project had been definitely shelved. Has it?

####

Posted: Thu Oct 13, 2005 12:01 am
by Casper
I guess....
No time left to create plugins I'm afraid.
Full working on a school project.
sorry,
Casper

####

Posted: Sun Dec 18, 2005 9:22 am
by paulrmartin
Maybe someone has a bit of time for this one over the Christmas Holidays?

####

Posted: Wed Nov 15, 2006 5:54 pm
by paulrmartin
I'm bumping this one.
Maybe MCCYRANO has the finishing touch?

####

Posted: Fri Nov 17, 2006 9:44 am
by djmicron
hi,
i did miss this message, because i did not have scope sdk, but i have found this idea very interesting and i'm working on it.
The device is developed in a different way than the previous examples, so this is the very first version.
I will work to make it as perfect as possible.
For the moment, if you want to beta test it, i have uploaded it here https://forums.scopeusers.com/viewtopic ... 519#161519
Best Regards
Sal

####

Posted: Wed Jan 17, 2007 3:09 pm
by paulrmartin
Bumpity-bumpity-bump