MCPcopy Create free account
hub / github.com/DISTRHO/DPF

github.com/DISTRHO/DPF @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
4,521 symbols 8,572 edges 292 files 637 documented · 14% updated 3d ago★ 83865 open issues

Browse by type

Functions 3,645 Types & classes 876
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

DPF - DISTRHO Plugin Framework

makefile cmake example-plugins

DPF is designed to make development of new plugins an easy and enjoyable task.
It allows developers to create plugins with custom UIs using a simple C++ API.
The framework facilitates exporting various different plugin formats from the same code-base.

DPF can build for LADSPA, DSSI, LV2, VST2, VST3 and CLAP formats.
A JACK/Standalone mode is also available, allowing you to quickly test plugins.

Plugin DSP and UI communication is done via key-value string pairs.
You send messages from the UI to the DSP side, which is automatically saved in the host when required.
(You can also store state internally if needed, but this breaks DSSI compatibility).

Getting time information from the host is possible.
It uses the same format as the JACK Transport API, making porting some code easier.

Provided features and implementation status for specific plugin formats can be seen in FEATURES.md.

Licensing

DPF is released under ISC, which basically means you can do whatever you want as long as you credit the original authors.
Some plugin formats may have additional restrictions, see LICENSING.md for details.

Help and documentation

Bug reports happen on the DPF github project.

Online documentation is available at https://distrho.github.io/DPF/.

Online help and discussion about DPF happens in the DPF github discussions.

List of plugins made with DPF:

See this wiki page for a list of plugins made with DPF.

Plugin examples are also available in the example/ folder inside this repo.

Core symbols most depended-on inside this repo

Shape

Function 2,191
Method 1,454
Class 784
Enum 92

Languages

C++93%
C7%
Python1%

Modules by API surface

dgl/src/nanovg/nanovg.c178 symbols
dgl/src/nanovg/stb_image.h177 symbols
distrho/src/DistrhoPluginVST3.cpp154 symbols
distrho/src/jackbridge/JackBridge.cpp151 symbols
dgl/src/nanovg/stb_truetype.h148 symbols
distrho/src/jackbridge/rtaudio/RtAudio.cpp135 symbols
distrho/src/jackbridge/rtmidi/RtMidi.cpp131 symbols
distrho/src/DistrhoPluginCLAP.cpp127 symbols
dgl/src/NanoVG.cpp99 symbols
distrho/extra/WebViewImpl.cpp88 symbols
dgl/src/nanovg/fontstash.h81 symbols
dgl/src/Geometry.cpp78 symbols

For agents

$ claude mcp add DPF \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page