How to create keysplits?
I've post an add-ons to show you how to do.
Midi In-> Midi Filter -> Code 1 attach to :
-Logical module (>=) pin A --->Stop Event Flow (in=midi input) --> Midi Out 1
Fader ( Note number 1-127) pin B
-Logical module (<) pin A --->Stop Event Flow (in=midi input) --> Midi out 2
Fader ( Note Number 1-127) pin B
Midi In-> Midi Filter -> Code 1 attach to :
-Logical module (>=) pin A --->Stop Event Flow (in=midi input) --> Midi Out 1
Fader ( Note number 1-127) pin B
-Logical module (<) pin A --->Stop Event Flow (in=midi input) --> Midi out 2
Fader ( Note Number 1-127) pin B
just a suggestion:
Try to activate the "Unpack" option in the MIDI In module.
Try to activate the "Unpack" option in the MIDI In module.
Olivier Sens
www.brainmodular.com
www.brainmodular.com
Not sure what you are meaning. Could you elaborate a bit more on it, please?senso wrote:just a suggestion:
Try to activate the "Unpack" option in the MIDI In module.
The unpack switch splits messages in to one per block execution (AKA cycle) (at least note messages - not sure about the other), so that logical and mathematical operations (like a key split) can be done on one message at the time. Manually played MIDI would almost never contain more than note message within one cycle, but that's of course not the case with sequenced, quantized MIDI.
In effect the unpacking creates a "mini-arpeggio". MIDI going through a cable is also a serial message, so that a chord would also be split up and sounded during some milliseconds. The resolution of the unpacking will be a bit slower or faster than a MIDI signal through a cable, depending on your block size and sampling rate.
In effect the unpacking creates a "mini-arpeggio". MIDI going through a cable is also a serial message, so that a chord would also be split up and sounded during some milliseconds. The resolution of the unpacking will be a bit slower or faster than a MIDI signal through a cable, depending on your block size and sampling rate.
Bjørn S
Yes Bsork, I just add a small comment.
Even if you play a chord with the best precision, MIDI msg never arrive exactly at the same time.
For many reasons:
1)The Human precision is very bad compare to the computer timing...
2) Midi Drivers and latency.
So, with a buffer size of around 256 (or less), or if the Asio buffer size is a multiple of 128 (128,256,512) the unpack option has no audible consequence. The "arpeggio" is too fast.
Anyway, the best way to create a key splitter is to make script!
Even if you play a chord with the best precision, MIDI msg never arrive exactly at the same time.
For many reasons:
1)The Human precision is very bad compare to the computer timing...
2) Midi Drivers and latency.
So, with a buffer size of around 256 (or less), or if the Asio buffer size is a multiple of 128 (128,256,512) the unpack option has no audible consequence. The "arpeggio" is too fast.
Anyway, the best way to create a key splitter is to make script!
Olivier Sens
www.brainmodular.com
www.brainmodular.com
Hey guys,
The split question has been a small pb for me, so I can perhaps suggest some solutions...
For splitting patching, I gave up using exclusively Usine's modules (except for the final script that can remap midi notes and change velocities). You can do many things with Usine, including hosting VST. For that reason, Senso does not develop already existing plugs.
For MIDI proposes, you can try NDC plugins. They work fine. To split keyboard and filter MIDI notes, I've done a very small and very simple plug with Synthedit.
The best way to patch in Usine is to use the best thing in each domain and to combine them. This is a part of Usine power and flexibility.
The split question has been a small pb for me, so I can perhaps suggest some solutions...
For splitting patching, I gave up using exclusively Usine's modules (except for the final script that can remap midi notes and change velocities). You can do many things with Usine, including hosting VST. For that reason, Senso does not develop already existing plugs.
For MIDI proposes, you can try NDC plugins. They work fine. To split keyboard and filter MIDI notes, I've done a very small and very simple plug with Synthedit.
The best way to patch in Usine is to use the best thing in each domain and to combine them. This is a part of Usine power and flexibility.
vincent michel
composer & novelist
composer & novelist
Hello,
I'm learning the script language, and I've just made a simpe midi split script, posted in the add-ons.
Maybe Senso and/or Bsork coumd have a look at it to see if it can be improved.
I haven't tested it thoroughly, but for simple purposes it seems to be working.
Rgds,
B.
I'm learning the script language, and I've just made a simpe midi split script, posted in the add-ons.
Maybe Senso and/or Bsork coumd have a look at it to see if it can be improved.
I haven't tested it thoroughly, but for simple purposes it seems to be working.
Rgds,
B.
Hi bmoussay,
I've taken a look at your patch, and it looks almost ok to me. There's one thing missing though - and I think that's an error most of us have done the first time we've done something like this - you treat all the MIDI messages, not only the note messages.
The simplest way to fix it would be to filter before entering the script. You should use two MIDI Filter modules with NOTE ON and NOTE OFF respectively, but if you don't plan on using the pitch wheel, you can however use one filter with the ON/OFF/BEND setting.
Happy scripting!
I've taken a look at your patch, and it looks almost ok to me. There's one thing missing though - and I think that's an error most of us have done the first time we've done something like this - you treat all the MIDI messages, not only the note messages.
The simplest way to fix it would be to filter before entering the script. You should use two MIDI Filter modules with NOTE ON and NOTE OFF respectively, but if you don't plan on using the pitch wheel, you can however use one filter with the ON/OFF/BEND setting.
Happy scripting!
Bjørn S
Thank Bsork,
Good idea ideed, it'll make things lighter!
Rgds,
B.
Good idea ideed, it'll make things lighter!
Rgds,
B.
If by lighter you mean lighter on the CPU when other types of messages are present; that's true since the script will not have to to deal with them. The important thing though is that other types of messages aren't affected.
You could of course also create some sort of filtering inside the script for all types of messages, and for instance send CC messages to out1 and pitch bend to out2 or whatever.
Hm - maybe an idea for a generic midi splitter add-on patch? Splits/zones for not only note messages, but also CC, pitch, aftertouch might be useful for those who like to stack a lot of VSTs and/or external MIDI instruments.
You could of course also create some sort of filtering inside the script for all types of messages, and for instance send CC messages to out1 and pitch bend to out2 or whatever.
Hm - maybe an idea for a generic midi splitter add-on patch? Splits/zones for not only note messages, but also CC, pitch, aftertouch might be useful for those who like to stack a lot of VSTs and/or external MIDI instruments.
Bjørn S
Thanks for all the replies. Actually I was a bit surprised at first that Usine has no "pre-build" Midi-Split function, because stacking sevaral VSTs over different keyboard ranges is one of the most important functions for me when creating patches for Live gigs. But people work differently of course. Anyways, as I'm not yet a gold member, I cannot D/L from the addon-section at the moment.
So, Vincent, would you perhaps be so kind to send me your Synthedit plug for checking it out?
So, Vincent, would you perhaps be so kind to send me your Synthedit plug for checking it out?
The solution posted by moody works fine. You don't have to download a special vst.
Olivier Sens
www.brainmodular.com
www.brainmodular.com
Hi guys,
Unfortunately, I did not manage to do something working perfectly fine. It comes maybe from my MIDI setup which is using USB ports.
Using Stop Events Module seems to be the simplest, but it does not work fine. The Synthedit plug I did does not work perfectly ether but I'll try to find it on my disk and leave it some day on some link I'll give here.
As nofish said, stacking several VSTis over different keyboard ranges is one of the most important functions.
Unfortunately, I did not manage to do something working perfectly fine. It comes maybe from my MIDI setup which is using USB ports.
Using Stop Events Module seems to be the simplest, but it does not work fine. The Synthedit plug I did does not work perfectly ether but I'll try to find it on my disk and leave it some day on some link I'll give here.
As nofish said, stacking several VSTis over different keyboard ranges is one of the most important functions.
vincent michel
composer & novelist
composer & novelist
Who is online
Users browsing this forum: No registered users and 75 guests
