About Usine and MIDI
Hi Usiners, happy new year to all of you.
First of all thanx a lot Olivier for 2.6, it rocks!!!
Then I'd like to submit some thoughts about how midi implementation in Usine could be improved (to follow my previous posts about "midi transform").
Well let's say we have one track in Usine. Basically this track can receive midi for two things: patch remote, or midi input (notes, cc, etc... to play patches) that are loaded on the track.
Let's say also I have several midi devices plugged in (several midi keyboards, or controllers for instance, wich send notes, pitchbend, CCs, PCs, etc...)
For the moment, usine tracks (or midi in module) only make the difference between midi channels, and I only have the option in the setup to activate or not a given device.
For me, the best would be able to select the channel AND device.
What would seem logical (for me at least, and right now since the problem is complex and maybe needs more thinking), would be to have two selectors "on the track" (like the audio input selector) concerning the patch remote: the first selector would have a list of midi devices (All devices, device 1, device 2, device 3, ...), and the second a list of midi channels (All, 1, 2, .., 16). That woud be really flexible, and would allow any possible remote control options.
Then for note, pitchb, CCs, etc... inputs in the patches themselves, I think it's better to keep control of the midi input in the patch itself, regardless of in wich track it is loaded. That could be achieved with a midi IN module like the one that already exists, but with instead of the "mode" input, two selectors (or two inputs), like above: one to set the device, the other for the channel. I also think it would be great to be able to have several midi input modules in the one patch, each of them receiving from different devices/channels. This would allow for instance to create very simply a patch with several VSTi, each controlled by a different keyboard, or to have a VSTi controlled by one keyboard, and a VST effect controlled by another midi device (for example a BCF2000) in the same patch. This would also allow easily to load such a patch in another track without loosing these midi assignments, etc...
What do you other usiners think about this?
Rgds,
B.
First of all thanx a lot Olivier for 2.6, it rocks!!!
Then I'd like to submit some thoughts about how midi implementation in Usine could be improved (to follow my previous posts about "midi transform").
Well let's say we have one track in Usine. Basically this track can receive midi for two things: patch remote, or midi input (notes, cc, etc... to play patches) that are loaded on the track.
Let's say also I have several midi devices plugged in (several midi keyboards, or controllers for instance, wich send notes, pitchbend, CCs, PCs, etc...)
For the moment, usine tracks (or midi in module) only make the difference between midi channels, and I only have the option in the setup to activate or not a given device.
For me, the best would be able to select the channel AND device.
What would seem logical (for me at least, and right now since the problem is complex and maybe needs more thinking), would be to have two selectors "on the track" (like the audio input selector) concerning the patch remote: the first selector would have a list of midi devices (All devices, device 1, device 2, device 3, ...), and the second a list of midi channels (All, 1, 2, .., 16). That woud be really flexible, and would allow any possible remote control options.
Then for note, pitchb, CCs, etc... inputs in the patches themselves, I think it's better to keep control of the midi input in the patch itself, regardless of in wich track it is loaded. That could be achieved with a midi IN module like the one that already exists, but with instead of the "mode" input, two selectors (or two inputs), like above: one to set the device, the other for the channel. I also think it would be great to be able to have several midi input modules in the one patch, each of them receiving from different devices/channels. This would allow for instance to create very simply a patch with several VSTi, each controlled by a different keyboard, or to have a VSTi controlled by one keyboard, and a VST effect controlled by another midi device (for example a BCF2000) in the same patch. This would also allow easily to load such a patch in another track without loosing these midi assignments, etc...
What do you other usiners think about this?
Rgds,
B.
hello,
You are right, I have to improve the midi implementation.
In most other softs, as you suggest, there are two selectors on each track:
- device
- channel
It's simple, clear...
But it doesn't solve all the problems we can have with the midi. In a lot of configuration they are, for example, several keyboards, and one or two midi controlers (rotary, faders).
So, logically, we should have on each track, 4 selectors:
- device for keyboard (midi notes)
- channel for keyboard
- device for remote control (midi learn on faders)
- channel for remote.
too much?
You are right, I have to improve the midi implementation.
In most other softs, as you suggest, there are two selectors on each track:
- device
- channel
It's simple, clear...
But it doesn't solve all the problems we can have with the midi. In a lot of configuration they are, for example, several keyboards, and one or two midi controlers (rotary, faders).
So, logically, we should have on each track, 4 selectors:
- device for keyboard (midi notes)
- channel for keyboard
- device for remote control (midi learn on faders)
- channel for remote.
too much?
Olivier Sens
www.brainmodular.com
www.brainmodular.com
Well, as I said in my previous post, I think it would be great to have 2 selectors (device and channel) for midi remote (midi learn) ON the track (like the audio input).senso wrote:So, logically, we should have on each track, 4 selectors:
- device for keyboard (midi notes)
- channel for keyboard
- device for remote control (midi learn on faders)
- channel for remote.
too much?
But for the device/channel for "keyboard", it could be handeled IN the patch (regardless of the track) by a "midi in" module with two selectors (device/channel), with also the possibility to have several "midi in" modules with different input settings in one patch.
What do you think?
Rgds,
B.
my thought , the solution of a " midi in " module with a device selector could be cool in a first time ( with the possibility of rename it )
I think that things are more complex:
Imagine the following story.
I have a gig in a big festival with my band. So I decide to bring all my stuffs: 2 Midi keyboards, 2 remote controlers, my Lemur, etc.
I use for that band 7 workspaces, one for each tune.
The next day we have another gig in a small bar and I decide to take the minimum set: 1 Midi keyboard, 1 remote controler. We have 10 minutes of sound check.
With a good midi implementation I should be able to play WITHOUT any change in my workspaces or patches, but just the setup.
Almost like with Audio in Usine, we can change our in/ou routing without change the patches. (Isn't it the global philosophy of Usine?)
So the solution should be to invent the concept of Virtual Midi in/out. Exactly like the actual audio routing.
For example, we can have 8 Virtual Midi In/out, and assign them to any physical device we want.
Then on each track of Usine, we have 8+1 small switches that correspond to the 8 virtual inputs (number [1],[2], etc), and another one for [all].
If we turn the switch 1 it means that the track receives midi data from virtual in 1, and so on. The [all] means, it receives from all virtual devices. (Of course, we can activate [1] and [5] only)
Now we have to find something intelligent to handle the notion of MIDI channel.
What do you think about this direction?
Imagine the following story.
I have a gig in a big festival with my band. So I decide to bring all my stuffs: 2 Midi keyboards, 2 remote controlers, my Lemur, etc.
I use for that band 7 workspaces, one for each tune.
The next day we have another gig in a small bar and I decide to take the minimum set: 1 Midi keyboard, 1 remote controler. We have 10 minutes of sound check.
With a good midi implementation I should be able to play WITHOUT any change in my workspaces or patches, but just the setup.
Almost like with Audio in Usine, we can change our in/ou routing without change the patches. (Isn't it the global philosophy of Usine?)
So the solution should be to invent the concept of Virtual Midi in/out. Exactly like the actual audio routing.
For example, we can have 8 Virtual Midi In/out, and assign them to any physical device we want.
Then on each track of Usine, we have 8+1 small switches that correspond to the 8 virtual inputs (number [1],[2], etc), and another one for [all].
If we turn the switch 1 it means that the track receives midi data from virtual in 1, and so on. The [all] means, it receives from all virtual devices. (Of course, we can activate [1] and [5] only)
Now we have to find something intelligent to handle the notion of MIDI channel.
What do you think about this direction?
Olivier Sens
www.brainmodular.com
www.brainmodular.com
Hello,
I like very much the idea of "virtual midi channels", extremely practical, especially to adapt very fast to any situation, as you describe.
The idea of 8+1 switches to select the virtual midi in sounds very good!
For the midi channel thing I thougt about two possibilities:
1) in the setup:
a list of virtual midi ports (1-8)
in front of each port a selector with a list of all devices (device 1-n, all)
when one device is selected (or the "all" option) we have underneath a row of 17 small switches to activate midi channels: (1-16, all)
pros: any possible routing is allowed from: "device 1, channel 2 -> virtual midi 1", to "all devices, channel 4 and 7 -> virtual midi 3", etc...
cons: takes much room in the setup, seems complicated, are all these routing options really practical?, and this system doesn't allow routings like: "device 1, channel 2 AND device 4, all channels -> virtual midi 1"
2) a "graphical approach":
in the setup we can open a "midi routing" page, that looks like a "patch" with one module for each connected midi device (each one with 16+1 outputs (one for each midi channel, one for "all"), and one module with eight "virtual midi" inputs.
Then we just draw wires beetween all these "outs" and the "ins" (with the ability, of course to allow several outs to be connected to one in) and any routing is allowed. Of course we should be able to load and save presets.
We could even imagine inserting other modules in this "midi routing", like
midi transformers, midi filters, that would allows for instance to split midi keyboards to different virtual midi ins, or to switch octaves, to filter midi messages, etc... Could be really powerful.
Even with such a powerful routing system one thing will still be missing (for me):
- the ability to save a patch (and reload it anywhere in any workspace) wich would ALWAYS be connected to one (or several) specific device(s) and channel(s).
Let's imagine a complex patch-lemur configuration witch in itself forms an instrument: I won't use this patch without the lemur, but I'd love to be able to load it anywhere anytime my lemur is connected, without having to do any midi setting.
Maybe for such purpose we coud imagine an "additionnal midi input" module (with a selector "virtual midi 1-n", all) (a bit like your additionnal audio input module), that when loaded into a patch, allows it to get some other midi data that the data it receives from the track. With of course the possibility to have several such modules in one given patch, or even into subpatches.
Well these are some ideas, what do you think?
Rgds,
B.
I like very much the idea of "virtual midi channels", extremely practical, especially to adapt very fast to any situation, as you describe.
The idea of 8+1 switches to select the virtual midi in sounds very good!
For the midi channel thing I thougt about two possibilities:
1) in the setup:
a list of virtual midi ports (1-8)
in front of each port a selector with a list of all devices (device 1-n, all)
when one device is selected (or the "all" option) we have underneath a row of 17 small switches to activate midi channels: (1-16, all)
pros: any possible routing is allowed from: "device 1, channel 2 -> virtual midi 1", to "all devices, channel 4 and 7 -> virtual midi 3", etc...
cons: takes much room in the setup, seems complicated, are all these routing options really practical?, and this system doesn't allow routings like: "device 1, channel 2 AND device 4, all channels -> virtual midi 1"
2) a "graphical approach":
in the setup we can open a "midi routing" page, that looks like a "patch" with one module for each connected midi device (each one with 16+1 outputs (one for each midi channel, one for "all"), and one module with eight "virtual midi" inputs.
Then we just draw wires beetween all these "outs" and the "ins" (with the ability, of course to allow several outs to be connected to one in) and any routing is allowed. Of course we should be able to load and save presets.
We could even imagine inserting other modules in this "midi routing", like
midi transformers, midi filters, that would allows for instance to split midi keyboards to different virtual midi ins, or to switch octaves, to filter midi messages, etc... Could be really powerful.
Even with such a powerful routing system one thing will still be missing (for me):
- the ability to save a patch (and reload it anywhere in any workspace) wich would ALWAYS be connected to one (or several) specific device(s) and channel(s).
Let's imagine a complex patch-lemur configuration witch in itself forms an instrument: I won't use this patch without the lemur, but I'd love to be able to load it anywhere anytime my lemur is connected, without having to do any midi setting.
Maybe for such purpose we coud imagine an "additionnal midi input" module (with a selector "virtual midi 1-n", all) (a bit like your additionnal audio input module), that when loaded into a patch, allows it to get some other midi data that the data it receives from the track. With of course the possibility to have several such modules in one given patch, or even into subpatches.
Well these are some ideas, what do you think?
Rgds,
B.
thanks for ideas
I'm working on 'audio version' of patch routing, that can be extended to a Midi version. I will take few weeks (let's say few months).
The goal is to have exactly the same spirit with midi than audio:
complete routing, additional midi input, output, etc...
the only thing, not already clear in my mind is the way to implement the remote devices.
The ideal thing should be to create inlets in the virtual midi routing module:
- remote track 1
- remote track 2
then with a simple wire you choose which remote you want to assign to the tracks. Maybe heavy?
I'm working on 'audio version' of patch routing, that can be extended to a Midi version. I will take few weeks (let's say few months).
The goal is to have exactly the same spirit with midi than audio:
complete routing, additional midi input, output, etc...
the only thing, not already clear in my mind is the way to implement the remote devices.
The ideal thing should be to create inlets in the virtual midi routing module:
- remote track 1
- remote track 2
then with a simple wire you choose which remote you want to assign to the tracks. Maybe heavy?
Olivier Sens
www.brainmodular.com
www.brainmodular.com
Well,
Heavy, yes, but gives total freedom.
I'll continue thinking about all this, and post if I have other ideas.
Thanw again for your great work!
Rgds,
B.
Heavy, yes, but gives total freedom.
I'll continue thinking about all this, and post if I have other ideas.
Thanw again for your great work!
Rgds,
B.
This would be very usefull for implementing patching between other DAWS using Midi Yoke. here is my example...
have the following setup.
1. Ewi4000 and Beringher 1010
2. Usine
3. Ableton Live
4. Midi Yoke
I have 2 problems at the moment that this would solve.
Problem 1
The Ewi will only send on one midi channel at a time ie. it's not possible to use the instrument selector to change midi channel. The EWI midi channel is global all instruments. (can be changed in the setup for all)
Problem2
Live's Midi implementation sux. each midi channel can be assigned to a midi macro (like Usines midi learns) however. The learn is global within Live. So if i record midi marcoslearns to in live to midi track 1 I have am not able to use the same channel for an instrument in track 2.
Example
EWI Channel 1 CC7 (Volume) mapped to one of lives instruments Volume track1
EWI Channel 1 CC7 (Volume) mapped to one of lives instruments Volume track2
play the instrument in track 1 record the output set it to play back. good so far... all sounds great, but now the issues begin!! play the instrument in track 2 to biuld a multi layer sound sound with both instruments. Live now plays the second instrument but the volume for the first is tied to the seconds. NASTY
Solution
Using Midi Yoke Create a usine patch like this that has a midi in, midi out, data pass, Knob, and a switch.
Use the data pass and the swich to enable and disable midi data flow
Use the knob to change the midi out channel (1-16 int)
Right all i need now it to be able to recieve on Midi Yoke 1 into usine and send on Midi Yoke 2 out to ableton.
have the following setup.
1. Ewi4000 and Beringher 1010
2. Usine
3. Ableton Live
4. Midi Yoke
I have 2 problems at the moment that this would solve.
Problem 1
The Ewi will only send on one midi channel at a time ie. it's not possible to use the instrument selector to change midi channel. The EWI midi channel is global all instruments. (can be changed in the setup for all)
Problem2
Live's Midi implementation sux. each midi channel can be assigned to a midi macro (like Usines midi learns) however. The learn is global within Live. So if i record midi marcoslearns to in live to midi track 1 I have am not able to use the same channel for an instrument in track 2.
Example
EWI Channel 1 CC7 (Volume) mapped to one of lives instruments Volume track1
EWI Channel 1 CC7 (Volume) mapped to one of lives instruments Volume track2
play the instrument in track 1 record the output set it to play back. good so far... all sounds great, but now the issues begin!! play the instrument in track 2 to biuld a multi layer sound sound with both instruments. Live now plays the second instrument but the volume for the first is tied to the seconds. NASTY
Solution
Using Midi Yoke Create a usine patch like this that has a midi in, midi out, data pass, Knob, and a switch.
Use the data pass and the swich to enable and disable midi data flow
Use the knob to change the midi out channel (1-16 int)
Right all i need now it to be able to recieve on Midi Yoke 1 into usine and send on Midi Yoke 2 out to ableton.
Hi,
I like this thread! It gives some wieght to the future midi power of Usine.
++++1 for the "graphical approach" suggested by Benjamin (and very nice "Il pleure sur mon coeur" too).
A little heavy, but can face any situation; and quickly customisable with presets and/or setup. Or also have a separate configuration (separate 'file save as...'), just like the Master section, the Global Remote or the Setup.
And yes, it could not come without the ability to have an 'Additional Midi In' module.
That would just be a dream and Usine would fully deserve it's name!
Thanks to Benjamin for his such clever thoughts (I was actually thinking about a 'select Midi In Device' patch), and thanks to Olivier for his job!
I like this thread! It gives some wieght to the future midi power of Usine.
++++1 for the "graphical approach" suggested by Benjamin (and very nice "Il pleure sur mon coeur" too).
A little heavy, but can face any situation; and quickly customisable with presets and/or setup. Or also have a separate configuration (separate 'file save as...'), just like the Master section, the Global Remote or the Setup.
And yes, it could not come without the ability to have an 'Additional Midi In' module.
That would just be a dream and Usine would fully deserve it's name!
Thanks to Benjamin for his such clever thoughts (I was actually thinking about a 'select Midi In Device' patch), and thanks to Olivier for his job!
vincent michel
composer & novelist
composer & novelist
be patient the total audio/midi routing setup (which will be like a patch) starts to be at the top of my 'to do' list!
will just kill...
will just kill...
Olivier Sens
www.brainmodular.com
www.brainmodular.com
Who is online
Users browsing this forum: No registered users and 89 guests
