Automation and plugin without processor's parameter like Yoshimi

Since Ardour 6.6 if I’m correct, there is a new wonderful functionality you can activate with the following:
Edit > Show Automation Lane on Touch

That’s the perfect thing I’m seeking for: a search through the available automation controls for a simple plugin is quite easy but with a synthesizer for example, it become really complicated with so much controls.

However, some plugins do not seem to make any processor’s parameter available. For example it doesn’t seems to work with the Yoshimi LV2 plugin where according to the manual MIDI learn does exist so I suppose these should be available in some way.
Is there any explanation for that?

The manual entry for automation does not indicate anything particular on the availability of processor’s parameters.

Did I miss something? Is there any way to automate Yoshimi diverse parameters?

I always think there should be no difference between a hardware MIDI controller that Yoshimi can learn and automation lane (which behaves a bit like MIDI potentiometer across time).

I’m currently using Yoshimi 2.2.3 on Ardour 7.3.0 (what is available on Debian Stable currently, I’m keeping the same version at list through a project even though I buy the current one from time to time).

Thank you for reading!

Those are sadly two very different things, and in this case that difference is why you are seeing the behavior you are.

Plugin controls expose themselves to the host through the API. There is no real mechanism for the Plugin to identify specific MIDI signals to control aspects of the plugin on the other hand.

  Seablade

Thank you for your answer Seablade :slightly_smiling_face:

I think I understand now. Technically, this API is simply from the LV2 plugin format, isn’t it? Each format has it own API to expose its parameters?

I wonder if this as a feature could be in discussion on the Yoshimi side but I don’t think its developer have any use of it.

By the way, I think this entry should be updated to make it clear where does processor’s parameters come from but I’m still not really knowledgeable…
I tried to grasp some things on the LV2 website but the word “automation” only appears once…

I’m not sure I understand this point :face_with_diagonal_mouth:

Also, I found this subject on LinuxMusicians : Yoshimi LV2 automation

If I understand correctly, there should be a way to control Yoshimi parameters by sending MIDI message (the topic of MIDI CCs and NRPNs) and it is possible with MusE.

I was wondering if it would simply be possible with Ardour: a right-click on a track followed by “Automation > Controllers” seems to expose MIDI parameters (MIDI CC ? I’m not really knowledgeable on MIDI, It’s so hard to find a clear and sufficient documentation on it :pensive:) and corresponding channels though, even if it is possible, there are so much parameters…

There is no explanation on this menu at the moment on the reference manual, so all is suppositions.

Following this message from Lagos on the LinuxMusicians subject:

I tried it in Ardour:

  • I created a track with Yoshimi and a single long midi note on it
  • I choose the “102: (Undifined)” MIDI parameter on channel 1 in “Automation > Controllers”
  • I drew some points.
  • Activated the MIDI learn function on a lowpass filter frequency cut-off of an AddSynth voice.
  • I played the track

It worked! :star_struck:

So okay, automation management with “(Undefined)” tracks isn’t the best but at list there is a way to to do it.

Because everything or almost can be MIDI learnable in Yoshimi, it’s possible.

I guess for something like amsynth, nothing is possible, right?

Automation needs to be controlled by the host. It cannot be the responsibility of the plugin, for a variety of reasons that I’m not going to explain here.

In the VST3 plugin format, plugins do not even receive MIDI (this is a result of Steinberg realizing the problems with plugins trying to do MIDI Learn + automation themselves).

The “Undefined” part of what you did just refers to the fact that there is no actual name for MIDI CC 102.

You should do MIDI learn by ctrl-clicking on the fader of the automation track. That does the mapping in the host (Ardour).

Hi Paul, thank you for your answer!

OK, I think I understand.

I did something like Ardour emitting MIDI CC then Yoshimi learning it and doing job of linking one of its parameters with the MIDI CC of Ardour.

So if I understand well, Ardour should be the one doing MIDI learning like this:

I tried it like this:

  • I created a track with Yoshimi and a single long midi note on it
  • I choose the “102: (Undifined)” MIDI parameter on channel 1 in “Automation > Controllers”
  • I pressed ctrl + click on the fader of this track/lane

The only thing I see is the fader being set to 0 after that :confused:
I tried to move a fader in Yoshimi but nothing happened either.

Did I miss a step or something? Any specific configuration needed?
I use currently Ardour 7.3 here but if it’s a matter of versioning, I can get the last one if needed.

For Edit > Show Automation Lane on Touch to work, the plugin must send touch start/end events when a control knob is touched (mouse down, up).

It is mandatory for VST3 plugins, and not uncommon with VST2 plugin GUIs.

For LV2 (like VST2) its optional, and not every plugin GUI implements: LV2 UI Touch. This is something the plugin developer has to add.

Just to clarify “unused” meant a CC not being used to automate something else rather than a CC with no label. You can use any number CC. It was later added by the dev that you can use one CC to automate multiple things at the same time at different levels, if you so wish.

Thank you Robin for the clarification :slight_smile:
Yes I guess as MIDI CC are well used, UI touch wasn’t implemented at all sadly.

ZynAddSubFx, though very similar to Yoshimi, has something in between: a kind of macro learn exposed only when created.

Thank you for chiming in Lagos :slight_smile:

Yes I just choose the “Undefined” one just because I expected it to be really unused : the 10 Pan was already linked for panning for example.

And yes I’ve seen this one by folderol, it seems really nice, I’ll try it.

I still try to understand how it would have worked.

If the mapping of MIDI CC should be done by the host (Ardour), then the plugin (Yoshimi), should be able to send MIDI message to the host but as far as I know, Yoshimi output only audio, not MIDI.