plugdata-team / plugdata

Pure Data as a plugin, with a new GUI
https://plugdata.org
GNU General Public License v3.0
1.47k stars 62 forks source link

Getting MIDI note data into FX audio plug in mode. #1775

Open pereshaped opened 1 month ago

pereshaped commented 1 month ago

Im wondering how I might get around this issue? I read the docs and it gives examples how to get MIDI to a Plug Data instrument. Ekkko Station however is an FX AND Instrument. So there are situations where the user can play the delay time of the echo unit using a MIDI keyboard attached to the DAW.

I couldn't, for the life of me, find a way to do this in Logic Pro X, Reaper.

Many thanks

Screen Shot 2024-07-27 at 12 05 07

timothyschoen commented 1 month ago

Hi! I think if you manage to put MIDI into the plugin it should work. Here I'm inputting MIDI into plugdata-fx from within Gig Performer, for example:

https://github.com/user-attachments/assets/fc68dbcc-a217-42af-9db2-b3901668ff13

The main issue here seems to be whether or not the DAW and the plugin format support it.

pereshaped commented 1 month ago

MIDI works 100% when I use Plug Data as standalone. As it does in Vanilla.

Note data gets to it when as an AU VST Instr. It doesn't however, when it as a Host FX(only). I have a huge suite of AUVSTs and all work great.

My problem is that Ekkko Station is both FX (audio ins) and Instrument (midi ins incl note in and CC data)

I noticed that in the Plug Data documentation the examples include either an example of note-in data or audio fx in but not both.

Tbh, I haven't done extensive tests as Im not a developer and like most musicians, tend to use a prefered DAW, which in this case is Logic Pro X on OsX and AUM, Drambo, Audiobus on iOs but will keep testing as I go along. Thanks for your help.

pereshaped commented 1 month ago

So I have found a nice solution at the moment and it work with any DAW which has a plugin window with a sidechain facility.

in Logic Pro X.

Set toure source audio track - set to "No Output", no buses nothing.

Create an Instrument Audio Track (so that you have MDII cc control and load the PD effects unit.

IN the top right corner of the AU window containing the Plug Data patch set the side chain to the desired source audio track.

Works great.

pereshaped commented 1 month ago

I think I understand this better now.

There is a difference between automation using param objects and using MIDI cc automation.

I can address Plug Data patch with realtime MIDI CC control or MIDI CCautomation no problem if the instance of Plug Data is loaded as an Instrument.

However, it when loaded as an Audio FX plugin that it would seem that the MidiIn flag is set to "false" in the aufx mode. Thus you cannot send realtime midi for control over the audio fx plugin or note data in all versions of Osx and iOs.

Sorry about all the rambling but it took me a while to understand the difference. I have the issue nailed now

timothyschoen commented 1 month ago

I think I understand this better now.

There is a difference between automation using param objects and using MIDI cc automation.

I can address Plug Data patch with realtime MIDI CC control or MIDI CCautomation no problem if the instance of Plug Data is loaded as an Instrument.

However, it when loaded as an Audio FX plugin that it would seem that the MidiIn flag is set to "false" in the aufx mode. Thus you cannot send realtime midi for control over the audio fx plugin or note data in all versions of Osx and iOs.

Sorry about all the rambling but it took me a while to understand the difference. I have the issue nailed now

Yes, though more specifically: plugdata will report that it can receive MIDI even if it's an effect plugin. But it depends on your host whether or not it allows this. I think in Logic doesn't but some other DAW/hosts do.

pereshaped commented 1 month ago

"... I think in Logic doesn't..." That is completly incorrect Tim. Plug Data is the only plugin when in audio Fx mode that doesn't receive MIDI cc automation data. Every other of the 200 (Waves, Eventide, Lexicon, you name any manufacturer) we have, receive and accept MIDI data and do so fine in Logic (for years) and we use them for production every day. This is a Plug Data issue only. The Plug Data "audiofx" AU header or preferences has "midin" = "false". That is my bet. And as long as that is the case it will limit the appeal and use of Plug Data as a plugin for audio in DAWs not just Logic. Automation and especially MIDI CC automation is core in DAws. The same lack of MIDI CC input happens in Cubasis (even on Win), Drambo, AUM etc etc etc

timothyschoen commented 1 month ago

OK I think I found something, working on it now.

pereshaped commented 1 month ago

No worries, Im still testing at this end.

timothyschoen commented 1 month ago

I think this should be fixed in the new release!

pereshaped commented 1 month ago

Amazing Tim, really! Hopefully it will work on my 10.13 Mac. 0.90 is pretty solid on it.