DISTRHO Plugin Framework
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
falkTX c7baf5cefe
Correct offset for MIDI CC params
9 months ago
.github Use ubuntu-18.04 for win32 CI builds 1 year ago
cmake Give up on fancy macOS namespace 10 months ago
dgl Fix incorrect offset of embed ui on windows and macOS 9 months ago
distrho Correct offset for MIDI CC params 9 months ago
examples Update Info plugin example resize handle to set mouse cursor 9 months ago
lac Update pres 9 years ago
tests Import ResizeHandle widget for tests, set Demo min size 10 months ago
utils Make macOS installer allowed to install without rosetta2 9 months ago
.gitignore Update .gitignore 1 year ago
.gitmodules Start adding some actual implementation to Window class 1 year ago
CMakeLists.txt cmake: generate the macOS namespace for pugl 1 year ago
FEATURES.md Add feature text on both sides 1 year ago
LICENSE Remove project name from license file 1 year ago
LICENSING.md Grammar is hard 1 year ago
Makefile Add EmbedExternalUI to default make build 1 year ago
Makefile.base.mk Also set __USE_MINGW_ANSI_STDIO on makefiles for mingw 9 months ago
Makefile.plugins.mk Cleanup 10 months ago
README.md Mention the new LICENSING.md file in the README 1 year ago
dpf.doxygen Make utility functions compatible with doxygen 1 year ago
dpf.kdev4 Fix typo 9 years ago
pugl-updates-notes.txt Sync get display factor code with pugl 9 months ago

README.md

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 and VST formats.
All current plugin format implementations are complete.
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.

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 kx.studio chat, DPF room.

List of plugins made with DPF:

Work in progress

Checking the github “DPF” tag can potentially bring up other DPF-made plugins.

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