summaryrefslogtreecommitdiffstats
path: root/audio/clap/README
diff options
context:
space:
mode:
Diffstat (limited to 'audio/clap/README')
-rw-r--r--audio/clap/README77
1 files changed, 77 insertions, 0 deletions
diff --git a/audio/clap/README b/audio/clap/README
new file mode 100644
index 0000000000..992237e19a
--- /dev/null
+++ b/audio/clap/README
@@ -0,0 +1,77 @@
+CLAP (“CLever Audio Plug-in API”)
+
+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.
+
+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”).
+
+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.