CLAP: The New Audio Plug-in Standard (by U-he, Bitwig and others)
- u-he
- 30206 posts since 8 Aug, 2002 from Berlin
We have systems showing no improvement at all with some presets, and we have systems showing 100% more instances of Diva with other. A conservative estimate is 20% on average, but our sample size (number of computers tested) is too low to say for sure.HcDoom wrote: Fri Jun 17, 2022 8:03 am How much improvement are we going to see on the cpu/asio side with, for example, a bit
more complex Diva patch? 5-10-15-20-30% compared to vst2/3?
But yes. 100% more on some systems. Twice as many voice.
- u-he
- 30206 posts since 8 Aug, 2002 from Berlin
Thing is though, with CLAP developers can safely and easily implement multicore processing for their more expensive algorithms. More CPU cores has been "the future" for a while now, and there's no reason to believe that this will change. CLAP offers a great option to make use of this.
-
- KVRist
- 302 posts since 25 Jun, 2005
I'd really love to see a universal plugin format that is aware of the plugins it precedes.
i.e. to place a modulation plugin in slot 1 that can modulate the parameters of slot 2.
Is that even a possibility?
i.e. to place a modulation plugin in slot 1 that can modulate the parameters of slot 2.
Is that even a possibility?
- KVRAF
- 2674 posts since 18 Mar, 2006 from The Void
That's effectively CV, and should be possible. However, a plugin should never need to know about other plugins (unless they share a codebase).skijumptoes wrote: Fri Jun 17, 2022 9:53 am I'd really love to see a universal plugin format that is aware of the plugins it precedes.
i.e. to place a modulation plugin in slot 1 that can modulate the parameters of slot 2.
Is that even a possibility?
- u-he
- 30206 posts since 8 Aug, 2002 from Berlin
-
- KVRAF
- 2296 posts since 23 May, 2012 from London
On my M1 Air with a 256 sample buffer I can play 8 VST3 instances of the same 12 voice Diva patch before the audio drops out. With multicore enabled on the CLAP version I can play 10 instances before audio drops out, a 25% performance increase.HcDoom wrote: Fri Jun 17, 2022 8:03 am How much improvement are we going to see on the cpu/asio side with, for example, a bit
more complex Diva patch? 5-10-15-20-30% compared to vst2/3?
Always Read the Manual!
-
- KVRian
- 1213 posts since 25 Dec, 2018
I have been thinking about this a lot (and it is different than CV if you do it in the control channel). I plan to share an extension proposal for this once we are all calmed down with 1.0.skijumptoes wrote: Fri Jun 17, 2022 9:53 am I'd really love to see a universal plugin format that is aware of the plugins it precedes.
i.e. to place a modulation plugin in slot 1 that can modulate the parameters of slot 2.
Is that even a possibility?
-
- KVRian
- 1213 posts since 25 Dec, 2018
So I understand why you say this, but it's not quite necessarily true. Most importantly, CV isn't polyphonic.koalaboy wrote: Fri Jun 17, 2022 9:56 amThat's effectively CV, and should be possible. However, a plugin should never need to know about other plugins (unless they share a codebase).skijumptoes wrote: Fri Jun 17, 2022 9:53 am I'd really love to see a universal plugin format that is aware of the plugins it precedes.
i.e. to place a modulation plugin in slot 1 that can modulate the parameters of slot 2.
Is that even a possibility?
I have an idea for a sequencer which can explicitly target params of downstream plugins. They don't need to share a codebase but you do need to know the parameter identities to target, and also you need to augment the note stream with that information. This is not just a CV api, it's more a note stream thing to do targeted polyphonic modulation.
-
tasmaniandevil tasmaniandevil https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=62450
- KVRAF
- 2171 posts since 22 Mar, 2005 from a planet called u-he
https://urs.silvrback.com/clapboingy wrote: Fri Jun 17, 2022 11:17 am It's a shame the designers of this didn't give more thought to the name.
That QA guy from planet u-he.
- KVRAF
- 2674 posts since 18 Mar, 2006 from The Void
Maybe I mis-used CV in this instance. I meant that outbound modulation should be possible, and CV is often a concept that people can relate to.baconpaul wrote: Fri Jun 17, 2022 11:27 am So I understand why you say this, but it's not quite necessarily true. Most importantly, CV isn't polyphonic.
I would absolutely love to see this - as mentioned in another thread, being able to have (for example) Bitwig expose 'outbound' modulation from a device to influence others would be awesome. Two questions off that, I guess:baconpaul wrote: Fri Jun 17, 2022 11:27 am I have an idea for a sequencer which can explicitly target params of downstream plugins. They don't need to share a codebase but you do need to know the parameter identities to target, and also you need to augment the note stream with that information. This is not just a CV api, it's more a note stream thing to do targeted polyphonic modulation.
1) How is this different (conceptually) from MIDI CC messages ?
2) I presume it could still be abstract enough that those parameter identities do not need to be specific to a plugin - if we go down the route of implementation-specific rather than an interface, that could cause more confusion and become far less of a standard.
-
- KVRian
- 1213 posts since 25 Dec, 2018
With the caveat that I haven't even made a concrete proposal yet and people may hate it
MIDI 1 CC messages are monophonic. MPE solves this by using channels which works up to 15 voices. but surge goes to 64 voices pretty easily. Think about if midi CC messages had a note id rather than a channel id and you get closer. And them imagine if they had more resolution.koalaboy wrote: Fri Jun 17, 2022 12:20 pm 1) How is this different (conceptually) from MIDI CC messages ?
So that might be the case. See my comment above. There's a scaling question which I am working through and also a user experience one. But like I said, we are still in the middle of 1.0 but the idea isn't that well developed in my head yet.koalaboy wrote: Fri Jun 17, 2022 12:20 pm 2) I presume it could still be abstract enough that those parameter identities do not need to be specific to a plugin - if we go down the route of implementation-specific rather than an interface, that could cause more confusion and become far less of a standard.
- KVRAF
- 2674 posts since 18 Mar, 2006 from The Void
I really appreciate the info, and will keep an eye (ear ?) out as things progress. I'm hoping to dive more into CLAP this weekend (once the day job is out of the way), and hopefully I'll understand more of the specifics when I can play with what's available.baconpaul wrote: Fri Jun 17, 2022 12:28 pm But like I said, we are still in the middle of 1.0 but the idea isn't that well developed in my head yet.
Thanks again
-
- KVRian
- 1213 posts since 25 Dec, 2018
No problem!
If you start with https://github.com/surge-synthesizer/clap-saw-demo I think it will walk you through using the API and help understand some of these polymod and note expression ideas clearly.