CLAP, new plugin interface proposal
CLAP, new plugin interface proposal
Hi,
I worked on a new plugin interface, it is not yet finished and set in stone, but ready enough to gather initial feedback and advice.
The specification is hosted on github: https://github.com/free-audio/clap and is available under the MIT license.
There is a generated specification document at: http://free-audio.github.io/clap/
In a few words CLAP features:
- per sample and ramp automation
- per note automation
- you can play a note at any frequency
- extensible design
- preset browsing
- parameters grouping
- event based
- the plugin can say which parameters are used and which aren't
- the plugin can dynamically add new parameters
- the plugin can expose multiple ports configuration, including repeatable sidechain input which lets the host connect any number of inputs to the plugin, and name those inputs. It is useful for an analyzer.
- The plugin can inform the host that it does not need to process the next block, like when all the voices are off. It will help to save a lot of CPU on big project when you have hundreds of plugin instances idle.
- The interface is very easy to understand and use, anyone can get started from the example synthesizer and host.
I hope that you'll find it interesting and give it a chance. Thanks.
Regards,
Alexandre
I worked on a new plugin interface, it is not yet finished and set in stone, but ready enough to gather initial feedback and advice.
The specification is hosted on github: https://github.com/free-audio/clap and is available under the MIT license.
There is a generated specification document at: http://free-audio.github.io/clap/
In a few words CLAP features:
- per sample and ramp automation
- per note automation
- you can play a note at any frequency
- extensible design
- preset browsing
- parameters grouping
- event based
- the plugin can say which parameters are used and which aren't
- the plugin can dynamically add new parameters
- the plugin can expose multiple ports configuration, including repeatable sidechain input which lets the host connect any number of inputs to the plugin, and name those inputs. It is useful for an analyzer.
- The plugin can inform the host that it does not need to process the next block, like when all the voices are off. It will help to save a lot of CPU on big project when you have hundreds of plugin instances idle.
- The interface is very easy to understand and use, anyone can get started from the example synthesizer and host.
I hope that you'll find it interesting and give it a chance. Thanks.
Regards,
Alexandre
Re: CLAP, new plugin interface proposal
How does the "modulation" works between CLAP plugins?
Can a filter FX plugin instance be made polyphonic and connected with a poly synth instance in the same Track (with a single click, or even automagically)?
Can a LFO-like plugin instance easily connect with the synth and filter FX "polyphonically" as well?
Would it need host or user actions or would it connect by default (with a on/off toggle possible of course)?
How easy would be to connect with non-CLAP stuff (like Live's devices and M4L devices, and hell even VST3 and AUv3 too, I mean those not "dead" like VST2, they could add stuff).
Can a filter FX plugin instance be made polyphonic and connected with a poly synth instance in the same Track (with a single click, or even automagically)?
Can a LFO-like plugin instance easily connect with the synth and filter FX "polyphonically" as well?
Would it need host or user actions or would it connect by default (with a on/off toggle possible of course)?
How easy would be to connect with non-CLAP stuff (like Live's devices and M4L devices, and hell even VST3 and AUv3 too, I mean those not "dead" like VST2, they could add stuff).
♥♥♥
Re: CLAP, new plugin interface proposal
Also, just remove the A from the name...
Is it really audio-only? I would assume it contemplates MIDI FX. If so, that A (for audio) is not even accurate....
Is it really audio-only? I would assume it contemplates MIDI FX. If so, that A (for audio) is not even accurate....
♥♥♥
Re: CLAP, new plugin interface proposal
CLAMP is a manga/anime studio for me (definitely better).
Yesterday I was bit skeptic, but today I read a bit more and I'm bit disappointed with some stuff, but more optimistic in general.
I'm disappointed that seems there is no inter-plugin communication. I thought this could enable loading LFOTool and use it to connect and do poly modulation with any other CLAP plugin, synths and FX.
But some stuff is looking good to me now, like it being stricter with processing and bugs, and the metadata and other "MIDI 2.0 ready" stuff, I'm wondering how much it could improve plugin hosting in Max (and hence M4L).
Well, I'm voting in favor of adding CLP to Live.
Hope Live calls it CLP even if CLAP board insists in calling it CLAP.
Put somewhere that CLP it is short for CLAP and then use only CLP for all the rest of documentation and GUI, hahaha.
Yesterday I was bit skeptic, but today I read a bit more and I'm bit disappointed with some stuff, but more optimistic in general.
I'm disappointed that seems there is no inter-plugin communication. I thought this could enable loading LFOTool and use it to connect and do poly modulation with any other CLAP plugin, synths and FX.
But some stuff is looking good to me now, like it being stricter with processing and bugs, and the metadata and other "MIDI 2.0 ready" stuff, I'm wondering how much it could improve plugin hosting in Max (and hence M4L).
Well, I'm voting in favor of adding CLP to Live.
Hope Live calls it CLP even if CLAP board insists in calling it CLAP.
Put somewhere that CLP it is short for CLAP and then use only CLP for all the rest of documentation and GUI, hahaha.
♥♥♥
Re: CLAP, new plugin interface proposal
probably due to the latency differences between various channels, it's rare that the host will inform various channels of the peer audio stream latencies. That reliance on the host reporting would be a pitfall because it asks a lot of the host.
I'm guessing here obviously.
Re: CLAP, new plugin interface proposal
Personally it seems to me that what doesn't fit Bitwig and U-He's business plans is not going to be implemented, that simple.
Saw people ask about the preset system. There is none, because U-He plugins already have a fancy preset system, they don't need one, so CLP won't have one.
If you insist they will say "you can build you own with extensions", which is pretty much the same argument Steinberg shoved in their faces when asked about whatever failings people detected in VST3 (usually MIDI related).
Anyways, I trust Ableton, whatever they decide either way, I know there is a good reason behind it.
Saw people ask about the preset system. There is none, because U-He plugins already have a fancy preset system, they don't need one, so CLP won't have one.
If you insist they will say "you can build you own with extensions", which is pretty much the same argument Steinberg shoved in their faces when asked about whatever failings people detected in VST3 (usually MIDI related).
Anyways, I trust Ableton, whatever they decide either way, I know there is a good reason behind it.
♥♥♥
Re: CLAP, new plugin interface proposal
How is the relationship between Ableton and Bitwig? I have no idea, but my guess would be politely frosty.
I imagine someone asking Gerhard if he wants to back their project and Gerhard pulls a blaster from under his desk and shoots the messenger
Re: CLAP, new plugin interface proposal
Maybe it is frosty, but I know 100% that some people involved in "CLP" talked a lot of sh-t publicly about Avid and Protools over the years, yet seems they are both politely reaching out to each other now for this.
My previous comment was a bit too negative, let me say again, I'm voting in favor of "CLP" in Live.
EDIT: Changed my mind, I retract my support for CLAP.
My previous comment was a bit too negative, let me say again, I'm voting in favor of "CLP" in Live.
EDIT: Changed my mind, I retract my support for CLAP.
♥♥♥