CLAP plugin format support

I know there are a lot of people wanting AU support, but I’m intrigued by the open source CLAP plugin format. Bitwig has just announced its support for it across platforms and u-he too. The built in CV stuff sounds wild and would no doubt be a great fit with VCV.

Got this below from Bitwig’s site…

CLAP: The New Audio Plug-in Standard

Bitwig and u-he are excited to announce CLAP (“CLever Audio Plug-in API”), the new open standard for audio plug-ins and hosts. CLAP offers modern features, innate stability, and rapid support for plug-in and host developers. And since it’s open source and liberally licensed, CLAP is a safe bet for the future.

CLAP Clever Audio Plug-in

Advantages of CLAP for Musicians

Developed in collaboration with experts from diverse fields in the music software industry, CLAP is a cutting-edge plug-in standard, designed for modern computers, software, and paradigms. CLAP caters to novel DAW concepts, and opens up new horizons for what a plug-in can do or be.

Here are some immediately useful advantages of CLAP:

Better Performance From Modern CPUs

Developed with modern CPUs in mind, CLAP takes multi-thread management to a new level, with a clear and efficient allocation of roles between plug-in and host. Specifically, CLAP allows collaborative multicore support between plug-in and host through a so-called “thread-pool”, also allowing hosts to manage CPU-threading for plug-ins that provide their own multicore support. Preliminary tests show significant performance gains compared with current solutions.

Better and Faster Organization

CLAP hosts can read plug-in metadata and help organize your plug-ins. As CLAP hosts can retrieve information from plug-ins without having to wait for them to initialize, plug-in scans can be much faster.

Furthermore, we’re currently finalizing an extension which lets plug-ins tell the host which files they need (e.g. samples or wavetables), and the host can consolidate those in the project file. That means you’ll never lose a sample while transferring a project between systems!

Better Modulation

The CLAP standard promotes new ways to create music with automation, modulation, and expressions. Here are a few examples:

  • CLAP supports per-note automation and modulation (in accordance with the recent MIDI 2.0 specifications).
  • Going one step further, CLAP’s parameter modulation concept allows for temporary parameter offsets. Parameter modulation is non-destructive, so as soon as the modulation has finished, the target parameter will return to its original state.
  • CLAP makes it possible for polyphonic plug-ins to have their per-voice parameters modulated for individual notes (“MPE on steroids”).

With this new standard we aim to inspire host developers to add exciting new features to their products. Initial implementations by Bitwig, u-he and the Surge project demonstrate just a few of the possibilities.

Information for Plug-In and Host Developers

The KISS (keep it simple, silly) mantra belongs to CLAP. From the C-only ABI, which allows binding to any programming language, to the transparent client-server model between host and plug-in, the robustness and clarity of the threading model, and the single event queue for all kinds of parameter changes, timing and MIDI. Despite being so comprehensive, everything in CLAP is easy to find and easy to implement.

A single cpp/hpp glue layer for C++ offers a quick start into the ABI, and its built-in “proxy layer” finds common threading bugs in an instant. Apropos C-only ABI: There are no platform specific dependencies: In theory CLAP should also run well on embedded platforms, game consoles or specialized supercomputers.

Open Source & Liberal License

CLAP is open source, released under the MIT license: No fees, memberships or proprietary license agreements are required before developing or distributing a CLAP capable host or plug-in, and the license never expires. In a nutshell, there are no entry hurdles for developers, and plenty of open source projects already benefit from CLAP.

MIDI Just Works!

Inspired by MPE and MIDI 2.0, CLAP can adapt to any future MIDI standard. Wherever a solid standard exists, we allow developers to freely decide how to apply it. Plug-ins can receive and send any MIDI event on multiple ports.

Extensibility & Governance

A simple system for extensions makes CLAP future-proof. Companies can offer proprietary extensions if required for specific features.

CLAP 1.0 is the result of a multi-year project initiated by u-he and Bitwig, with design and implementation contributions by a group of commercial and open source audio developers from across our industry. As we proceed beyond the initial set of extensions, we are committed to establishing a transparent process to govern the standard which allows participation from the entire audio software community. We welcome participation from the development community today, and we will share details of these processes and governing models over the second half of 2022.

An Invitation to Collaborate and Explore

CLAP does not only exist on paper; there are several ways you can try it out now. See the links below for projects from u-he, Bitwig, and others. Several other industry players are currently evaluating the CLAP standard.

Available From Bitwig, u-he and Others Today

9 Likes

Great news. I really hope this works for the industry.

I missed this bit, looks like VCV is already looking into it

Available From Bitwig, u-he and Others Today

Bitwig Studio 4.3 (Latest Beta)

u-he CLAP beta versions

Chowdhury DSP

MultitrackStudio

Surge Synth Team

Open Source Projects Using CLAP

Avendish project CLAP JUCE Extensions project

Dexed

MIP2 framework

nih-plug framework

TheWaveWarden (Odin2)

Companies and Projects to Watch Out For

Following companies and projects are already evaluating CLAP for their host and plug-in software:

Arturia

Avid

BespokeSynth

CableGuys

Cockos

Cytomic

DMGAudio

Epic Games (Unreal Engine)

Expressive E

FabFilter

Image-Line

iPlug2 framework

LHI Audio

Node Audio (Etonal Studio)

Oddsound

Plogue

Presonus

Qtractor

Togu Audioline

Valhalla DSP

VCV

Vital Audio

Xfer Records

For Developers

For latest updates, example code and information check CLAP’s Github page: github.com/free-audio/clap

3 Likes

CLAP looks really interesting (if the name a little unfortunate!)

Have you got clap yet?

Anyway… looking forward to trying the u-He betas out but unfortunately my Bitwig upgrade plan expired on June 6th so waiting for a (hopefully imminent) summer sale to buy access to another year of upgrades.

CLAP isn’t going to help anyone that wants AU since none of the AU plugin hosts support it (or likely ever will).

Personally I do not see much advantage with CLAP. All the MIDI-2.0 stuff is pointless since Rack uses rtmidi which I think is very unlikely to have MIDI-2.0 any time soon. Perhaps the thread-pooling is useful for Rack2Pro, however that would need some serious adjustments to the engine to facilitate (iirc it currently heavily relies on external threads). Can you name any other advantage of this plugin format for the Rack2Pro case?

The main advantage of CLAP is that it’s not owned by Steinberg, but the current VCV2 Pro VST2 implementation also doesn’t use the Steinberg SDK.

I really hope VCV jump on this, I might actually be able to use Pro in Bitwig.

Why can’t you use Pro in Bitwig already?

This is great but I’d love to see a common plugin standard for the modules within virtual modular synths to allow interchange of VCV, softube modular, voltage, bitwig grid, aas cv-1, etc modules across virtual modular hosts natively.

1 Like

(insert xkcd standards comic)

4 Likes

The vst crashes when trying to open the UI.

Ouch - that thread sounds quite painful. I didn’t know there were issues with the VST under Linux. Hopefully you get the CLAP sorted out :wink:

1 Like

that would be next level… but softube should just make their modular available in vcv.

looking forward to seeing how CLAP shapes the plugin world. I sometimes wonder where we would be without the VST standard… is it one of the most popular and most used plugin formats of all time in any software? Its legacy is pretty amazing. where would we be without it?

While that’s true, the problem is that while most developers are happy with VST2 (issues around licensing and it being a proprietary format aside), many are not so happy with VST3. Although it’s been around for almost a decade already, take up has been very slow. There’s no Rack VST3 for example. It’s particularly an issue for developers of certain midi generator/arp modules (eg. Xfer Cthulhu) which iirc can’t be made to work with VST3.

The final push to this new CLAP format was Steinberg announcing that Cubase will soon no longer support VST2 - which seems to be being done for ‘corporate’ reasons and to push developers to use VST3, rather than because the VST2 format itself is obsolete in terms of functionality.

1 Like

It’ll certainly be interesting to see how this plays out. Not sure we’ll be seeing it in Cubase or Logic. Apple have a powerful and functional ecosystem where AU & AU3 are due to merge and I can’t see them embracing it (not invented here), whereas Steinberg has made a bit of a mess of things, and are on weaker ground. It looks like Arturia are on board but Native Instruments & Izotope on the plugin side are needed, and Live & other DAWs.

Proper

Well no-one seems to be suggesting a DAW that only supports CLAP so it’s not like some enforced ecosystem. Nothing to stop you mixing and matching CLAP with VST etc unless you happen to have some monopolistic minded DAW.

hasn’t it been more like two decades?

1 Like

Indeed, but momentum is required if it is to gain traction, and not just be seen as yet another format that devs are expected to support. If many of the biggest players in the space don’t support it then what is the incentive for smaller devs to take it on?

1 Like

yeah, not seeing it either…

Ooh that sounds nice