Stage / multitimbral mixed mode

I tried it in testing branch, but not with successful end. I made two synth chains (and one audio) where I set MULTI - Network MIDI-IN. Other midi were unchecked. From PC I send midi notes on channel one and two, but played only active channel (in mixer screen) notes from both incomming channels. In MIDI Log from ZynthMidiRouter Main was all notes on chanel one or two depending on selected channel.
Is there anything else that needs to be set up?

1 Like

Nothing. There was a bug in MIDI network routing. Now it’s solved. Simply update and test.

Thanks!

1 Like

Yep, now MULTI mode over net working.

1 Like

Hi everybody.
I was testing a tune using my MPC One as a sequencer and Zynthian as sound module, as i always did in stable mode. In testing branch i’m not able to see all the options in Midi Capture menu so it’s impossible to separate midi channels. It’s just like i’m working in a common Stage mode. I’ve updated of course, but there’s no difference.
This is what i have. No chance to have different midi channels. Any idea? Thanks!

1 Like

You can change the “MODE” of any input device by “bold-clicking” it. There are 3 MODES you can choose:

  • ACTI => Active Channel. MIDI events are translated to the active (currently selected!) chain, if routed. Zynthian behaves as Stage Mode for this device. It’s the default/initial mode for all devices.
  • OMNI => MIDI events are translated to routed chains, “cloning” the events to each routed chain. So you can have a given device assigned to one or more chains and it works not matter what MIDI channel is using the device or the chains. You can play several chains unison with this, etc.
  • MULTI => MIDI events are not translated at all. They reach routed chains that match the event’s MIDI channel. Zynthian behaves as Multi-Timbral Mode for this input device and the assigned chains.

BTW, how is your MPC connected to the Zynthian? DIN-5 MIDI-IN connector?

Regards,

2 Likes

Yes, i use a common Midi Din connector. Now it works well, thanks!
About the Midi connection, it seems that i have a bit of latency but i must do some further test.

This is far from intutive!!! I was trying to figure out how to do this on my V5 today without luck. I had to search this forum (which isn’t that easy sometimes) and find this post then try something that seemed wrong / counter-intutitive - bold press on a toggle option. It does work but it feels like there is a better solution waiting to be found. Now where did I put my looking glass? :face_with_monocle: :mag:

[Edit] Also be aware that this setting is made in a chain context menu but is actually global, i.e. a change to the mode of a MIDI input made in chain 1 affects that input for all chains.

4 Likes

Totally agree on this. We must improve it, but I didn’t want to delay having this (on testing) and hope the community give feedback to find a better solution before merging on stable.

Regards

1 Like

It is, perhaps, a characteristic to learn in the same way one MIDI learns a control parameter, rather than select from an option…?

So use the same technique for going into midi learn to enable the option selection menu and employ a selection for a list there so you can see the options that are available. For this.

Could even be dome from within the menu item that Midi Capture appears in.

@jofemodo Great idea. I was just needing that feature a couple of weeks ago as I wanted one MIDI input behave like stage and the other 2 in Multitimbre.

But you were saying, that you were thinking of removing the Clone To Midi Channel feature.
I am mainly using it to use three sfz samples at once.
I haven’t figured it out, but I really liked the option to split a chord into its part and lets say play the bottom note as tuba, the middle as trombone and the upper as trumpet. I don’t know if the midi filter can do that.
But that’s one of the more sophisticated scenarios I would have in mind.

Hi @mheidt !

Glad to know you like it.

Regarding midi clone, I’ve realized it’s better to keep it. Although Omni mode can be used for getting similar results, it’s not exactly the same, and clone works better for some cases.

Instead of chord, Have you tried to use clone + transposing for this?
I think it could work nicely.

Regards

1 Like

It’s not static. the intervals are different for each note.

Sounds challenging to implement. Imagine a chord being played but the middle note triggering before the lower note. A simple rule based MIDI router may send the middle note to the wrong destination then adjust after it receives the whole chord.

You should need a kind of chorder-splitter plugin. Not difficult to program. Simply put generated notes in different channels

Regards

I find little bug.

Sorry, i can’t reproduce the issue in stable branch.
I loaded your snapshot and MIDI from the “OMNI” device doesn’t reach chain 2, only chain 1.

I try different controllers.
Please can you try this:
Channel #1 - selected OMNI controler 1,
- unselected OMNI controler 2,
Channel #2 - unselected OMNI controler 1,
- selected OMNI controler 2,

Somehow I suspect that WIDI Bud Pro can also cause the problem. Midi from it are on midi channel 1.

I have the same behavior in both the test build and the stable build.
Could anyone else try a similar configuration? It would be best if controller 2 was of the wind controller type and influenced/transmitted to cc11. It can then be clearly recognized because it affects the volume (ie expression) of channel 1 for me, which should not be the case.

Channel 1 with  - selected OMNI or MULTI controler 1,
                - unselected OMNI controler 2,

Channel 2 with  - unselected OMNI or MULTI controler 1,
                - selected OMNI controler 2,

Hi @ToFF !!

CC messages doesn’t reach ANY chain directly. They are captured by zynthian MIDI learning system and they can be assigned to ANY parameter in ANY chain. Not matter the MIDI input configuration.

Some engines, perform some auto-MIDI-learning when added to a chain, and this can be a problem and result in collisions.

I’m not fully convinced about this and we are probably changing this behaviour in chain_manager branch.
Regarding current stable, i’m thinking about it too.

Until then, try to unlearn those controllers from the engines you don’t want.

Regards

OK, so I’m smarter again.
I set it to Re.corder midi channel 2 and if I choose MULTI, I avoid this problem.
Please can you close my bug report.