You are here

Can a single plugin be triggered from multiple tracks?

I used to just outsource this job to an external plugin host like Carla but I'd like to know if it's possible. Here's what I tried:

  1. Create a MIDI bus named DRUMMIDI. Mode type is Duplex.
  2. Create a MIDI track with the following attributes:
    • Name: DRUMPLUGIN
    • MIDI input/output set to DRUMMIDI/DRUMMIDI
    • Plugin:
  3. Create a MIDI track with the following attributes:
    • Name: DRUMTRACK1
    • MIDI input/output set to Master/DRUMMIDI

Granted, some of the names used above are overly generic and silly but they're meant to clearly articulate separation of responsibilities.

So now, when focused on DRUMTRACK1 track, I strike note 35 on my MIDI controller and see it is receiving the MIDI event. What I do not see is that same MIDI data being sent out through DRUMMIDI and being received by the DRUMPLUGIN track.

Trying to use my imagination, I removed the instrument plugin from the DRUMPLUGIN Track, recreated the DRUMMIDI MIDI bus but this time, added the actual plugin to the bus as a input plugin. That didn't do anything either and I'm realizing now I'm not exactly sure what a input plugin or output plugin actually is.

So before I go too nuts, does anyone have any wins when it comes to this kind of workflow?

Thanks in advance.

Forums: 
bluebell's picture

Check if MONITOR is on in the MIDI bus.

You can use the ShowMIDI plugin to see what happens inside the MIDI bus, see https://github.com/gbevin/ShowMIDI.git

You can try MIDI Insert Sends/Receives as well.

rncbc's picture

yes, if it's a MIDI instrument plugin inserted on an MIDI output bus.

br.

Your setup should be:
- Bus Out (does not need to be duplex):
---- DrumBusOut (hosts the plugin)

- Midi Tracks:
---- Snare (input:master/output: DrumBusOut)
---- Kick (input:master/output: DrumBusOut)
---- Etc. (input:master/output: DrumBusOut)

You also have to take into account the configuration of the tracks: midi channel and program banks. These configurations will depend on what you want to do and the specific plugin you are working with, because not all of them behave the same.

For example, you can use Carla-plugin to host two different batteries, one sent through channel 1, and the other through channel 2, each having different banks and programs.

For more complex cases (imagine that I want a single track to activate two plugins without using Carla-plugin) you can use MIDI auxiliary sends (if it is to buses) and inserts (if it is to buses or tracks).

Got it! This is great

Here's a .qtz using the geonkick lv2 showing off how this works! My system is set for 44100 so just edit the .qts file if needed.

File attachments: 

I think I understand what you're trying to do. Since Geonkick supports up to 32 channels, even though you're using just one plugin, you'll be able to work on each sound on a separate bus.

Very clever. I'd never thought of that workflow before.

Yes. I'd say there are 2 workflow issues being addressed here. For me, these mostly come up when working with drums.

  1. Multiple (related) MIDI tracks operating against a single instrument plugin.
  2. Isolating each of the plugin's audio outputs to their own bus for further signal processing while also having a bus available capturing the collection as a whole.

Of course, geonkick doesn't exactly serve as the greatest example for this use case given how "tweakable"any given sound is. The approach will offer more value when working with plugins which act more as romplers with limited abilities to tinker.

While this is really nice, I'm now realizing the plugin on the MIDI output bus can't be automated. At least not without using a mapped controller which just begs to be forgotten about and/or overlooked given time.

The compromise would seem to be to abandon the splitting of the MIDI tracks and just consolidate everything to a single track. That way, the plugin would be associated with the track itself which means it would be reachable via automation. The single track would still use the multi-out audio bus which routes down on a per channel basis (via inserts) in order to isolate things for additional processing.

If you want to automate you can use tracks as buses with the help of inserts.

The problem with inserts is the delay, but I think it only happens with the audio signal, not with the midi.

BlueBell created a technique to equalize the delays as much as possible and cancel them.
https://sourceforge.net/p/qtractor/wiki/How%20To%20-%207%20Equal%20Laten...

Anyway, these are very complex workflows.

Fortunately for me, I only make songs, and a song does not require complex automations like electronic.

Add new comment