Bitwig and plug-in maker u-he today are announcing a new plug-in format into beta, dubbed CLAP, for CLever Audio Plug-in API. It’s open and has features missing from the leading proprietary formats – and boasts some significant support at launch. So what will that mean for you?
I’m guessing that as a user your main interest in plug-ins is “will they work so I can get on with music?” followed by… actually, just that. But a plug-in format can get in the way of user-requested features – and can constrain developers or slow them down. Those plug-in architectures also can contribute to other issues with stability and performance, to the point that some DAWs have even decided to roll their own – see Reason Rack Extensions and Tracktion Engine.
But what about developers wanting to target multiple DAWs and OSes? Since AU only works on Apple platforms and VST3 has frustrated some developers, that means turning to open alternatives like LV2 (see Reaper, Ardour) or now, today, CLAP.
(CLAP for its part has been in discussion with developers for years and had its repository available since April of last year. Today’s development is all about shipping hosts and plug-ins.)
What CLAP does
CLAP’s main draw for a lot of developers is the API’s similarity to the now-defunct VST2 – while adding more modern features that match or exceed what VST3 provides. That includes:
Improved performance – more efficient multi-thread management between plug-in and host (“thread pools”). Right now, you can watch a lot of plug-ins sort of all max out your CPU by sitting on a single thread, on a single core – this approach improves support for modern multicore CPUs.
Faster plug-in scans and improved project organization. Metadata features should improve plug-in library scans and help organize plug-ins. A promised extension will help consolidate samples and wavetable files used by plug-ins when you save your project.
Expression. And a lot of this has to do with further extending polyphonic expression and modulation – especially appealing in the space of advanced synths and software modulars:
- Per-note automation and modulation (a la MIDI 2.0)
- Non-destructive parameter modulation – so it snaps back to its original value – and temporary offsets
- Per-voice parameters for individual notes of polyphonic plug-ins
These features for expression and modulation do go well beyond standard implementation – and are part of the reason this pairs well with Bitwig Studio’s advanced approach to polyphonic instruments.
Licensing and governance
CLAP is open source – you can go check it out on GitHub. And it’s licensed under a permissive MIT license. (LV2 is similar, under the ISC license.)
Bitwig and u-he note that they’ve had contributions from a wide range commercial and open source developers over a multi-year development process. That means today is a pretty big day for a lot of plug-in devs. They’ve also emphasized collaboration and transparency.
LV2 is open, too, but while developers I talked to generally described a good experience working with LV2, they found that additions or changes tended to be delivered as extensions. There is a sense that the CLAP development process is far less monolithic, which will appeal to some.
Governance itself might ultimately be CLAP’s killer feature. AU and VST are entirely proprietary property of Apple and Steinberg, respectively; AAX of Avid. (That makes it even more interesting to see Avid on the “prospective” list – that’d be a sea change.) But that means any changes to those formats is ultimately the domain of those three companies, each of which makes DAWs, instruments, and effects that compete directly with its licensees on top of it.
LV2 is open, but lacks a defined governance structure. So CLAP launching not only with a permissive license but also a collaboration that’s building a process for how the format evolves over time is something really appealing to a great many people. And sure enough…
CLAP (uff, that name…) is spreading. There are some significant early adopters – with releases in at least beta form from some big players, available right now, today. That includes the Bitwig Studio 4.3 beta, beta of u-he plug-ins, ChowDSP, and the popular Surge Synth Team, plus a number of open-source projects.
Bitwig also links some tantalizing potential partners who have confirmed they’re evaluating the framework, including Arturia, Cockos, Unreal Engine, Image-Line, Plogue, Presonus, VCV, Xfer, and even the mighty Avid. (Check the full list.) But there’s no commitment from any of those, just a willingness to be listed as interested.
I will say that some developers I talked to are fairly bullish on the format. A number of others said it’s a no-go until there’s official support for the widely-used cross-platform JUCE toolset – right now there’s only limited, unofficial support via a CLAP extension for now. Others are perfectly satisfied with rival open format LV2.
A representative of JUCE had no additional comment other than to say JUCE 7 is coming soon; I hope to check in with them about what’s in 7 when it’s released. (JUCE’s creator, Julian Storer, is now on the Tracktion team – so do check that out.) Bitwig tells us they’re in touch with JUCE but there’s nothing official to announce for now, and JUCE is not listed in the “evaluating” list.
Any mention of new formats brings up the infamous xkcd comic strip, 927 “standards” – one so well known, at this point you can mention it by its number and many nerds will know exactly what you’re talking about. (“Oh – nine two seven.”)
But even as snarky commenters “927” this whole issue, there is reason to look for a new standard from a technical standpoint. Some of this developer dissatisfaction is squarely aimed at Steinberg, whose VST format dominates the industry. That’s amplified as not all developers are happy with VST3, and the previous VST2 has been aggressively deprecated (as in Steinberg isn’t even making licenses available anymore).
The trick is finding an intersection between technical sophistication, cross-platform support, wide adoption, and open availability.
Bitwig has done a nice write-up – though with the caveat that not all of the features they describe are not exclusive to CLAP. (They’re still cool, though – and it makes a difference that there’s an open standard gaining some new traction.)
CLAP: The new audio plug-in standard [Bitwig]
You’ll find the best breakdown of this plug-in format in an article on LWN.net by Alexandre Prokoudine. It runs down the complete history of CLAP’s evolution, talks to a number of developers, and I think gives CLAP a fair shake – both criticism and potential.
The Clever Audio Plugin [LWN.net]
And for another great hot take, see the same author on Libre Arts (with a slightly more breezy discussion):
It’s worth highlighting this bit:
CLAP developers created a JUCE extension to simplify making CLAP binaries. LV2 official support is finally coming to JUCE7 probably later this year. As far as I’m concerned, there is no reason to fight. One way or another, they will coexist.
Devs, check out the Git repository:
And lastly Urs has a lot more information on their stuff, with a … lot of discussion, if you want to wade through that:
CLAP 1.0 betas for ACE, Diva, Hive, MFM 2.5 [KVR Audio]
Plus for something totally different as an approach to deploying across platforms, and very interesting if out of the scope of this article:
All in all, CLAP is good news – it’s got features users want, it’s open and transparent, it’s got some great partners, and some early adopters.
Technically speaking, LV2 and CLAP have some overlap, and developers can (and definitely will) get into some debates about the formats. But my sense is support for either LV2 or CLAP is a good thing, in advancing open, capable formats. And I agree this is not really a battle between those two so much as a battle between these open, very easily arguably better formats versus the proprietary tools that now dominate the market.
In short, if JUCE does start to support these formats, I think there’s good reason for users to clamor for support in more DAWs. And it could ultimately be good for the whole industry. And there are also new potentials for advanced use cases that don’t need to wait on every plug-in and host to provide support – you’ll get the best experience with a combination like using your u-he plug-in with Bitwig Studio, for instance. Edge cases, maybe, but musically interesting ones; hope we can cover that soon.
And yeah, I hate the name. Completely hate the name. Then again, names like “Nintendo Wii” managed to be loved over time, so – if CLAP delivers, I can learn to love it. You could say that feeling might be infect– I’m sorry. I’ll stop.
We’ll keep an eye on this one and I welcome more feedback from developers. Stay tuned.