DPF

DISTRHO Plugin Framework
Log | Files | Refs | Submodules | README | LICENSE

commit decc551c2815bfed86d3657d2542b019e50faebd
parent 87a195a26b9b92b0c330d59921880f74ba1cca47
Author: falkTX <falktx@falktx.com>
Date:   Wed, 29 Sep 2021 12:09:57 +0100

Start some files to describe features and licensing

Signed-off-by: falkTX <falktx@falktx.com>

Diffstat:
AFEATURES.md | 24++++++++++++++++++++++++
ALICENSING.md | 16++++++++++++++++
Mdistrho/src/dssi/seq_event-compat.h | 10++++++++++
3 files changed, 50 insertions(+), 0 deletions(-)

diff --git a/FEATURES.md b/FEATURES.md @@ -0,0 +1,24 @@ +# DPF - DISTRHO Plugin Framework + +This file describes the available features for each plugin format. +The limitations could be due to the plugin format itself or within DPF. + +Format | Audio IO | Parameters | Parameter outputs | Programs | States | UI->DSP sendNote | CV ports | MIDI input | MIDI output | Port groups | Special notes +JACK | Yes | Yes* | Yes* | Yes* | Yes | Yes | Yes | Yes | Yes | Yes* | Parameters have programs mapped to MIDI CC, there is no generic plugin editor; Port groups as JACK metadata +LADSPA | Yes | Yes | Yes | No* | No | No | No | No | No | No | LADSPA only supports basic parameters and audio; Programs could be done via LRDF but not supported in DPF +DSSI | Yes | Yes | Yes | Yes* | Yes* | Yes | No | Yes | No | No | DSSI only supports States via UI, no "full state" possible +LV2 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Everything supported :) +VST2 | Yes | Yes | No | No* | Yes | Yes | No | Yes | Yes | Yes* | VST2 program support requires saving state of all programs in memory, which is very expensive and thus not done in DPF; Parameter groups are supported, but not for audio ports (per VST2 spec limitations) +VST3 | Yes | Yes | Yes? | Yes | Yes | Yes | NO* | Yes | Yes | No* | Not sure if parameter outputs work (aka "read-only" on VST3); CV ports do not support custom ranges, not implemented yet; Port groups not implemented yet + +A few notes for things to add to the table: + - Custom UI (embed, external, both or none) + - Host/user-side UI resize + - Parameter inputs change from plugin-side + - Sidechain tagged audio ports + - Trigger parameters + - UI background/foreground color + - Host-side file browser + - Remote/Instance access + - Host-mapped bypass parameter + - Time position diff --git a/LICENSING.md b/LICENSING.md @@ -0,0 +1,16 @@ +# DPF - DISTRHO Plugin Framework + +Even though DPF is quite liberally licensed, not all plugin formats follow the same ideals. +This usually due to plugin APIs/headers being tied to a specific license or having commercial restrictions. +This file describes the licensing that applies to each individual plugin format as a way to make it clear what is possible and compatible. +Note that if you are making GPLv2+ licensed plugins this does not apply to you, as so far everything is GPLv2+ compatible. + +Target | License(s) | License restrictions | Attribution +JACK/Standalone | ISC (JACK bridge methods) + ?? (RtAudio) | Copyright attribution | RtAudio: 2001-2019 Gary P. Scavone +LADSPA | LGPLv2.1+ | ??? | 2000-2002 Richard W. E. Furse, Paul Barton-Davis, Stefan Westerfeld +DSSI | LGPLv2.1+ | ??? | ALSA: 1998-2001 Jaroslav Kysela, Abramo Bagnara, Takashi Iwai; DSSI: 2004, 2009 Chris Cannam, Steve Harris and Sean Bolton +LV2 | ISC + GPL? (atom-helpers.h not sure if used) | Copyright attribution | TODO, check all headers used +VST2 | GPLv2+ or commercial* | Must also be GPLv2+ or alternatively use Steingberg VST2 SDK (no longer available for new plugins) | Same or later license if GPL; Alternatively, custom agreement with Steingberg +VST3 | ISC | Copyright attribution + +Regardless of target format, DPF itself needs to be mentioned in attribution. See LICENSE file for copyright details. diff --git a/distrho/src/dssi/seq_event-compat.h b/distrho/src/dssi/seq_event-compat.h @@ -1,3 +1,13 @@ +/** + * \file include/seq_event.h + * \brief Application interface library for the ALSA driver + * \author Jaroslav Kysela <perex@perex.cz> + * \author Abramo Bagnara <abramo@alsa-project.org> + * \author Takashi Iwai <tiwai@suse.de> + * \date 1998-2001 + * + * Application interface library for the ALSA driver + */ /* * This library is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as