CLAP... thoughts?

VST, AU, AAX, CLAP, etc. Plugin Virtual Instruments Discussion
Post Reply New Topic
RELATED
PRODUCTS

Post

Actually yeah it seems that J-8 changelog really pertains to note expressions, NOT polyphonic modulation. Not the same things.

Post

teilo wrote: Fri Aug 12, 2022 1:47 pm It occurs to me that Bitwig still has some ways to go to fully support CLAP poly-mod. Currently you are limited to two poly-mod automation curves (timber and pressure). These should be arbitrary, and not named after the MPE note expressions.
Im not sure I understand - You can modulate any polyphonic parameter if the synth supports it. Try surge and any parameter can get any stack of modulators assigned

Note expressions (a constrained set of properties on a note) are a smaller subset of modulation targets than parameter modulations and parameter modulations have lifetime voice not note

Post

teilo wrote: Fri Aug 12, 2022 1:47 pm It occurs to me that Bitwig still has some ways to go to fully support CLAP poly-mod. Currently you are limited to two poly-mod automation curves (timber and pressure). These should be arbitrary, and not named after the MPE note expressions.
If I add a Bitwig Env as a modulator to CLAP Hive (for example), and then modulate the filter cutoff, it is per voice. So PolyMod works with any per voice Bitwig modulator and any parameter on the synth that is per voice. Obviously Delay Mix for example is not polyphonic in the synth itself.

Post

baconpaul wrote: Fri Aug 12, 2022 3:42 pm
teilo wrote: Fri Aug 12, 2022 1:47 pm It occurs to me that Bitwig still has some ways to go to fully support CLAP poly-mod. Currently you are limited to two poly-mod automation curves (timber and pressure). These should be arbitrary, and not named after the MPE note expressions.
Im not sure I understand - You can modulate any polyphonic parameter if the synth supports it. Try surge and any parameter can get any stack of modulators assigned

Note expressions (a constrained set of properties on a note) are a smaller subset of modulation targets than parameter modulations and parameter modulations have lifetime voice not note
You can use as many modulator devices as you want, yes. You cannot draw any more than two automation curves per note. You only have Timber and Aftertouch. That's an MPE limitation that should not apply to CLAP. You should be able to have an arbitrary number of automation curves per voice, modulating whatever parameters you want. Currently Bitwig hijacks the existing MPE note expression system to utilize those curves. Thus the limitation.

Post

Can someone shed more light on these 3 different competing modulation systems and how a host like Bitwig is dealing with it and how Clap deals with it.
We have Midi 1.0 MPE whose polyphony according to Bitwig is limited to timbre (cc74), pitch (pb), aftertouch. Though Midi itself would be able to send any cc to a voice per channel synth…
Then we have VST3 expressions. Bitwig seems to translate pitch correctly to all Steinberg VSTs at least. But does not seem to map MPE to other expressions. I am not sure how many other VST3s support expressions at all.
Then there is Midi 2.0 which can address per voice modulation out of the box…
The resolution of MPE is limited, compared to expressions (highest) and Midi 2.0 (more than sufficient)
If Clap simply supports Midi 2.0, a host should be able to provide high resolution automation to any Clap parameter. I think hosts need to decide what to use internally and then provide translations to the different plugin standards.
It seems Bitwig is using internally the 3 expressions, but I would prefer it uses Midi 2.0…

Post

Interesting notes above. As far as I can see Bitwig does not support vst3 note expression, I think that’s just a Cubase thing. Bitwig supports mpe (a few specific modulators per note according to the mpe spec) and CLAP, which is simply polyphonic modulators (e.g. envelope per voice), but not necessarily per note.That’s left to mpe which is per midi channel and only has the few modulators it has like timbre and pressure Etc. Mpe is its own mode and you have to tell Bitwig that it’s an mpe synth. You can have mpe in vst and clap without mpe.

Post

Tj Shredder wrote: Sat Aug 13, 2022 5:34 am Can someone shed more light on these 3 different competing modulation systems and how a host like Bitwig is dealing with it and how Clap deals with it.
There's a bit of history involved, read just the first two sections (MIDI in Plug-ins, Common Denominator):

https://cleveraudio.org/1-feature-overview/_midi/

1. MIDI

I think understanding how things are tied together starts with MIDI. One MIDI device does not know what another MIDI device is or can do, so MIDI was designed to have conventions as to what modulations are. Some are "expressions" such as ModWheel, PitchBend and Aftertouch. Some are less abstract such as "CC#7 - Volume", even if the actual use of Control Changes only loosely adhere to the naming of the controllers. Only few of those were polyphonic.

-> lots of options, very few polyphonic, widely adopted in software and hardware

2. Expressions and NoteID

Plug-In formats which sought to supersede MIDI added their own expression system, but it is somewhat hardwired to a handful* of targets such as pitch, pan, volume, aftertouch, modulation. The advantage of those "NoteExpressions" is the possibility of being polyphonic where e.g. classic MIDI wasn't. This works by attaching a NoteID to any NoteOn/NoteOff, by which e.g. a pitchbend signal could be routed to that specific NoteID. Everything else however is left to conventional parameters, i.e. not polyphonic.

-> few options, many polyphonic, but not widely supported among plug-ins (Common Denominator problem)

3. MPE and "PCK"

However, as these NoteExpressions were strictly DAW-specific, manufacturers of hardware controllers came up with a way to make those polyphonic in MIDI as well, hence MPE. This works by identifying a played Note in a specific instrument by MIDI Port, MIDI Channel and MIDI Key (PCK).

-> lots of options, but only few of the polyphonic ones are widely adopted

4. CLAP: Anything goes, NoteID or PCK, old or new

So here comes CLAP. CLAP ties all of the above together with the mother of all options: Each parameter can be modulated polyphonically (if applicable), addressed by either NoteID (like NoteExpressions) or PCK (like MIDI, and MIDI 2.0). This however certainly requires serious work on both host and plug-in side, because it is a new feature. Hence, it is *optional* and while many, many developers will take their time or never implement it, I'm sure that there'll be plenty of instruments (and effects maybe) in a year or two which go all the way with it.

CLAP *also* supports a handful of standard expression targets (pitch, vol, pan, aftertouch...) in the form of NoteExpressions, just like CLAP also supports MIDI, MPE or whatever else developers opt for. That's of course totally important to have because it's necessary for people to port their existing plug-ins and hosts to CLAP.

-> MIDI, MPE, NoteExpressions, Parameter Modulation (poly or not)

5. Do these compete?

I like to think of these channels as complementary rather than concurrent.

NoteExpressions are somewhat abstract modulation targets (pitch, vol, pan...), so they are universal among different plug-ins. It's a good, universal concept, it should be more widespread. I think CLAP adoption will lead to more adoption of NoteExpressions (see https://cleveraudio.org/the-story-and-m ... d-for-clap about the Common Denominator problem)

Parameter Modulation is specific to the plug-in - i.e. not universal -, but it is extremely powerful. I'm sure it'll be picked up more and more, even if it'll require many developers to rethink their codebase.

MIDI and MPE are universal by default and "everywhere". MIDI 2.0 will in the long run solve the issue of knowing device specific properties, i.e. I hope that MIDI 2.0 will make plug-in specific properties accessible across devices.



*Annotation: In all fairness, some formats allow for plug-in developers to add custom NoteExpressions, and thus have more than just a handful of targets. I do not know of any developer every going through this process and how similar it is to polyphonic parameter modulation in CLAP.

Post

Thanks for the very clear explanation!

Post

Echoes in the Attic wrote: Sat Aug 13, 2022 6:35 am Interesting notes above. As far as I can see Bitwig does not support vst3 note expression, I think that’s just a Cubase thing. Bitwig supports mpe (a few specific modulators per note according to the mpe spec) and CLAP, which is simply polyphonic modulators (e.g. envelope per voice), but not necessarily per note.That’s left to mpe which is per midi channel and only has the few modulators it has like timbre and pressure Etc. Mpe is its own mode and you have to tell Bitwig that it’s an mpe synth. You can have mpe in vst and clap without mpe.
Bitwig definitely supports clap note expressions as a distinct thing from MPE, using the MPE edit gestures in the track. I presume it would also do VST3 note expressions, but I haven't actually used a VST3 plugin which supports those to my knowledge! (Both Surge and the ClapSawDemo support CLAP note expressions)

Post

teilo wrote: Sat Aug 13, 2022 12:24 am You can use as many modulator devices as you want, yes. You cannot draw any more than two automation curves per note. You only have Timber and Aftertouch. That's an MPE limitation that should not apply to CLAP. You should be able to have an arbitrary number of automation curves per voice, modulating whatever parameters you want. Currently Bitwig hijacks the existing MPE note expression system to utilize those curves. Thus the limitation.
Logic Pro does that. I don't find it useful. It's too much work to draw lots of automation curves manually per note. That would be unbearably tedious.

Velocity, Pressure, Timbre, Pitch and Release Velocity plus modulators that do PolyMod is already enough. With Bitwig and CLAP PolyMod synths, there is nothing I can imagine wanting to do that I cannot already do.

Post

Would it be possible, and would there be some benefit, that a developer could code a native CLAP plugin with full polyphonic modulation, then have that wrapped to VST3 and converted over to VST3 Note Expressions where it could? If yes, that seems like it would be a huge benefit to porting over the codebase to CLAP first because it would buy Note Expressions for free.

Post

Funkybot's Evil Twin wrote: Sat Aug 13, 2022 4:54 pm Would it be possible, and would there be some benefit, that a developer could code a native CLAP plugin with full polyphonic modulation, then have that wrapped to VST3 and converted over to VST3 Note Expressions where it could? If yes, that seems like it would be a huge benefit to porting over the codebase to CLAP first because it would buy Note Expressions for free.
That is what I had in mind.

Post

For companies making instruments, that seems like a huge benefit.

Post

Funkybot's Evil Twin wrote: Sat Aug 13, 2022 5:10 pm For companies making instruments, that seems like a huge benefit.
How many DAW's support VST3 note expressions?

Post

Cubendo, Bitwig, MultitrackStudio, IIRC. Not sure about any others.
pdxindy wrote: Sat Aug 13, 2022 3:48 pmLogic Pro does that. I don't find it useful. It's too much work to draw lots of automation curves manually per note. That would be unbearably tedious.
Maybe for you, but not for everybody.

It's also easier to edit what was recorded from an MPE controller this way (or any future MIDI 2.0 controller that would have per voice expressions as well).

Post Reply

Return to “Instruments”