MIDI-FX chain

The problem occurs with Tempo control. It works until you start recording. Once you start the Audio Recorder, the Tempo control in the PD patch no longer responds to changes. I haven’t figured out what causes the problem yet. Here are the two patches I have been working with and I have prepared them to work with the Zynthian. They are both Organelle open source patches. I setup both to send Midi notes to CH 1. If there is a reason to make them send notes to a different Midi Channel, just let me know which one and I’ll revise and re-post the patches. The MidiFileSynth will start playing as soon as you select a song number.

MidiFileSynth.zip (358.4 KB)

ArpeggioSynth.zip (178.3 KB)

I brought the problem up in today’s Zynth Club meeting. and @riban thought it could be the Internal Midi Clock was taking control when recording. He was correct, I turned it off and the issue is resolved.

3 Likes

Nice! I will try to solve the problem when MIDI Clock is enabled …

BTW … i just merged midi-chain branch on Master.

So everybody can enjoy the MIDI-chain by simply updating. It would be available in the next nightly builds too …

Regards,

4 Likes

That’s excellent news… I have been wanting to combine the power of a midi arp and the stepseq! Now I can :smiley:

I was a bit confused on how to use this. I enabled a few LV2 MIDI Tools in webconf then added a MIDI-FX Layer on channel 3: #3 JV/MIDI Keysplit. I see that ZynMidiRouter channel 3 is connected to MIDI Keysplit’s input but its output is not routed to anything. It took me a while to figure out you need to use the MIDI Routing option in the context menu of the plugin to route its output. I guess it is just me not being familiar with it yet. I guess we will see something in the docs soon…

It is not clear how to match the MIDI channels. You select a MIDI channel for the MIDI-FX Layer and it will generally listen on that channel so when you route it to an instrument that must sit on a different channel, the instrument will ignore the MIDI-FX chain (wrong MIDI channel). I guess there is something you can do with clone or rules but I would like a simpler solution.

But we do now have a way to add keyboard splits within the Zynthian which is cool and has been requested in the past (here and (here).

This is not the “intended” use-case for MIDI-FXs and it’s not easy to address with the current layer architecture. You have to be creative …

I’m working in a simple & intuitive keyboard split mechanism, so please, a little bit of patience. Until then, better use the MIDI-FX for adding chorders, arppeggiators, adjusting velocity, etc. These are the intended use-cases …

Thanks!

So we can currently use MIDI tools which allow configuration of their output channel or to modify signals entering and leaving the Zynth, i.e. not driving Zynth audio engines? So far I have only got the key split working because it can set output channel for both halves.

Have you tried to add a MIDI FX to your synrh layer from the layer options?

Ah! No! I saw the entry in the main menu to add MIDI-FX layer and started there. I did look at the inverse, i.e. was I able to add a synth layer to a MIDI-FX layer (which seems more logical because it is the flow of signal) but that wasn’t an option. It didn’t occur to me to check if I could insert a MIDI-FX before the synth engine.

Layers is the key concept on Zynthian, so it seems logic to do it on this way. In fact it’s almost the same workflow with Audio-FX. It’s quite symmetric, my friend :wink:

  • You create a layer of a certain type:

    • Synth => Receive MIDI notes, sends audio
    • Audio-FX => Receive audio, sends audio
    • MIDI-FX => Receive MIDI, sends MIDI
    • Audio Generator => With the new categorization system, this could be moved to “Synth”
    • Special => I’m thinking about this …
  • You configure your layer from layer options menu:

    • MIDI clone
    • Transpose
    • Split Keyboard (this is coming very soon!!)
    • MIDI-FX chain
    • Audio-FX chain
    • MIDI Routing (only MIDI-FX layers)
    • Audio Output Routing (all layer types except MIDI-FX & special)
    • Audio Capture (only Audio-FX layers)

Wiki’s cocumentation will be updated ASAP …

Enjoy!

1 Like

Where do we file lv2’s that turn Audio into MIDI…?

I’ve never tried it, but isn’t aubio notes there for that?

Don’t take @wyleu seriously.
He needed an example for an lv plugin that can’t be clearly categorised .
He is a fan of tagging :slight_smile:

2 Likes

Actually the original is worth a watch or how much you can see of it . . .

3 Likes

I love that episode! And how applicable! :wink: :laughing:

Hi,
Is there a chance to use midi plugins to play prime, fifth and octave with one finger on whole keyboard? That should not be related to any scale.
I think that Chord plugin gives that chance but it forcing the scale notes so, for example, in scale Cmajor this works only on white keys. Please if somebody know the way I will be grateful.
I was using “clone and transpose”, but i think that this way does not work now. :frowning_face:
Maybe I’m doing something wrong once again.

Edit:
Ok, so check request: since I can’t possibly use midi fx for my needs (described above) I am trying “the old way” to use clone and transpose. And unfortunately it doesn’t work. I put a layer on channel 1 and a second on channel 2. I clone 1 into 2 and when i try to transpose layer 2 - transposition doesn’t work. Do you have the same? I am using the latest updated version. One more thing: where has the “detailed layer list” option gone?
Adam

1 Like

Of course you could have submitted a feature request upstream (like what I just did) to add a chromatic scale to the chords plugin :wink:. That doesn’t guarantee that @x42 will want to implement it or have time to. If he isn’t opposed to the idea but lacks time / inclination to implement then maybe someone might want to do so and submit a pull request.

There’s a whole raft of options like this that would suit pedalboards…

Major scales on the white pedals for Maj, Min, Min, Maj, Maj ,Min, Dim, Maj, etc …

As with a lot of these things it’s the configuration that’s almost more involved than the actual implementation.

Yes! You discovered a bug, my friend. I opened an issue and solved the bug:

The “old way” should be working now. Simply update and test!

Thanks a lot!