u-he and Bitwig CLAP plugin standard

PRESS RELEASE — Berlin, Germany — Bitwig and u-he are excited to announce CLAP (CLever Audio Plugin API), the new open standard for audio plugins and hosts. CLAP offers modern features, innate stability, and rapid support for plugin and host developers. And since it’s open source and liberally licensed, CLAP is a safe bet for the future.

Advantages of CLAP for Musicians

Developed in collaboration with experts from diverse fields in the music software industry, CLAP is a cutting-edge plugin standard, designed for modern computers, software, and paradigms. CLAP caters to novel DAW concepts, and opens up new horizons for what a plugin 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 plugin and host. Specifically, CLAP allows collaborative multicore support between plugin and host through a so-called “thread-pool”, also allowing hosts to manage CPU-threading for plugins that provide their own multicore support. Preliminary tests show significant performance gains compared with current solutions.

Better and Faster Organization

CLAP hosts can read plugin metadata and help organize your plugins. As CLAP hosts can retrieve information from plugins without having to wait for them to initialize, plugin scans can be much faster.
Furthermore, we’re currently finalizing an extension which lets plugins 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 plugins 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 Plugin 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 plugin, 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 plugin, 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. Plugins 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

Bitwig Studio 4.3 latest beta
u-he CLAP beta versions
Chowdhury DSP
Surge Synth Team

Open Source Projects Using CLAP

Avendish project
CLAP JUCE Extensions project
nih-plug framework
TheWaveWarden (Odin2)

Companies and Projects to Watch Out For

Following companies and projects are already evaluating CLAP for their host and plugin software:

Epic Games (Unreal Engine)
Expressive E
iPlug2 framework
LHI Audio
Node Audio (Entonal Studio)
Togu Audioline (TAL)
Vital Audio
Xfer Records

For Developers

For latest updates, example code and information check the CLAP Github page, linked below.