diff options
67 files changed, 7807 insertions, 686 deletions
@@ -12,8 +12,7 @@ dependency lv2.h) released under the GPL v2 or later. See COPYING for details. This port is based on revision 10 of the MDA SVN repository at <https://mda-vst.svn.sourceforge.net/svnroot/mda-vst>. It is similar to, but not 100% compatible with, the original plugins, since some VSTisms have been -changed to be more appropriate in an LV2 world (notably toggle and enumeration -ports). +changed to be more appropriate for LV2 (e.g. toggle ports). LVZ --- diff --git a/lvz/audioeffectx.h b/lvz/audioeffectx.h index e4a7fb9..296bb06 100644 --- a/lvz/audioeffectx.h +++ b/lvz/audioeffectx.h @@ -22,6 +22,9 @@ #include <stdint.h> #include <string.h> +#include "lv2/lv2plug.in/ns/ext/atom/atom.h" +#include "lv2/lv2plug.in/ns/ext/urid/urid.h" + class AudioEffect; typedef int (*audioMasterCallback)(int, int ver, int, int, int, int); @@ -69,12 +72,12 @@ public: virtual void masterIdle() {} }; - class AudioEffectX : public AudioEffect { public: AudioEffectX(audioMasterCallback audioMaster, int32_t progs, int32_t params) : URI("NIL") , uniqueID("NIL") + , eventInput(NULL) , sampleRate(44100) , curProgram(0) , numInputs(0) @@ -84,9 +87,12 @@ public: { } - virtual void process (float **inputs, float **outputs, int32_t nframes) = 0; + virtual void process (float **inputs, float **outputs, int32_t nframes) {} virtual void processReplacing(float **inputs, float **outputs, int32_t nframes) = 0; + void setMidiEventType(LV2_URID urid) { midiEventType = urid; } + void setEventInput(const LV2_Atom_Sequence* seq) { eventInput = seq; } + virtual int32_t processEvents(LvzEvents* ev) { return 0; } virtual const char* getURI() { return URI; } @@ -95,15 +101,18 @@ public: virtual int32_t getNumInputs() { return numInputs; } virtual int32_t getNumOutputs() { return numOutputs; } virtual int32_t getNumParameters() { return numParams; } + virtual int32_t getNumPrograms() { return numPrograms; } virtual void getParameterName(int32_t index, char *label) = 0; virtual bool getProductString(char* text) = 0; + virtual void getProgramName(char *name) { name[0] = '\0'; } - virtual bool canHostDo(const char* act) { return false; } - virtual void canMono() {} - virtual void canProcessReplacing() {} - virtual void isSynth() {} - virtual void wantEvents() {} + virtual int32_t canDo(const char* text) { return false; } + virtual bool canHostDo(const char* act) { return false; } + virtual void canMono() {} + virtual void canProcessReplacing() {} + virtual void isSynth() {} + virtual void wantEvents() {} virtual void setBlockSize(int32_t size) {} virtual void setNumInputs(int32_t num) { numInputs = num; } @@ -121,14 +130,16 @@ public: } protected: - const char* URI; - const char* uniqueID; - float sampleRate; - int32_t curProgram; - int32_t numInputs; - int32_t numOutputs; - int32_t numParams; - int32_t numPrograms; + const char* URI; + const char* uniqueID; + const LV2_Atom_Sequence* eventInput; + LV2_URID midiEventType; + float sampleRate; + int32_t curProgram; + int32_t numInputs; + int32_t numOutputs; + int32_t numParams; + int32_t numPrograms; }; #endif // LVZ_AUDIOEFFECTX_H diff --git a/lvz/gendata.cpp b/lvz/gendata.cpp index 233e5c3..cc4cc49 100644 --- a/lvz/gendata.cpp +++ b/lvz/gendata.cpp @@ -33,7 +33,6 @@ using namespace std; #define MAX_NAME_LENGTH 1024 char name_buf[MAX_NAME_LENGTH]; - struct Record { Record(const string& n) : base_name(n) {} string base_name; @@ -41,20 +40,18 @@ struct Record { UIs uis; }; - typedef std::map<string, Record> Manifest; Manifest manifest; - string -symbolify(const char* name) +symbolify(const char* name, char space_char='_') { string str(name); // Like This -> Like_This for (size_t i=0; i < str.length(); ++i) if (str[i] == ' ') - str[i] = '_'; + str[i] = space_char; str[0] = std::tolower(str[0]); @@ -66,15 +63,15 @@ symbolify(const char* name) && (!(str[i-1] == 'd' && str[i] == 'B')) && (!(str[i-1] == 'F' && str[i] == 'X')) && (!(str[i-1] == 'D' && str[i] == 'C'))) - str = str.substr(0, i) + '_' + str.substr(i); + str = str.substr(0, i) + space_char + str.substr(i); // To lowercase, and skip invalids for (size_t i=1; i < str.length(); ) { if (std::isalpha(str[i]) || std::isdigit(str[i])) { str[i] = std::tolower(str[i]); ++i; - } else if (str[i-1] != '_') { - str[i] = '_'; + } else if (str[i-1] != space_char) { + str[i] = space_char; ++i; } else { str = str.substr(0, i) + str.substr(i+1); @@ -84,7 +81,6 @@ symbolify(const char* name) return str; } - void write_plugin(AudioEffectX* effect, const string& lib_file_name) { @@ -150,8 +146,44 @@ write_plugin(AudioEffectX* effect, const string& lib_file_name) } else { manifest.insert(std::make_pair(effect->getURI(), Record(base_name))); } -} + if (effect->getNumPrograms() > 1) { + std::string preset_file = base_name + "-presets.ttl"; + + fstream pos(preset_file.c_str(), ios::out); + pos << "@prefix lv2: <http://lv2plug.in/ns/lv2core#> ." << endl; + pos << "@prefix pset: <http://lv2plug.in/ns/ext/presets#> ." << endl; + pos << "@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> ." << endl << endl; + for (int32_t i = 0; i < effect->getNumPrograms(); ++i) { + effect->setProgram(i); + effect->getProgramName(name_buf); + + std::string preset_uri = string(effect->getURI()) + + "#pset-" + symbolify(name_buf, '-'); + + // Write wanifest entry + std::cout << "<" << preset_uri << ">" + << "\n\ta pset:Preset ;\n\tlv2:appliesTo <" + << effect->getURI() << "> ;\n\t" + << "rdfs:seeAlso <" << preset_file << "> .\n" << std::endl; + + // Write preset file + pos << "<" << preset_uri << ">" + << "\n\ta pset:Preset ;\n\tlv2:appliesTo <" + << effect->getURI() << "> ;\n\t" + << "rdfs:label \"" << name_buf << "\""; + for (uint32_t i = 0; i < num_params; ++i) { + effect->getParameterName(i, name_buf); + pos << " ;\n\tlv2:port [" << endl; + pos << "\t\tlv2:symbol \"" << symbolify(name_buf) << "\" ;" << endl; + pos << "\t\tpset:value " << effect->getParameter(i) << " ;" << endl; + pos << "\t]"; + } + pos << " .\n" << endl; + } + pos.close(); + } +} void write_manifest(ostream& os) @@ -170,7 +202,6 @@ write_manifest(ostream& os) } } - int main(int argc, char** argv) { diff --git a/lvz/wrapper.cpp b/lvz/wrapper.cpp index b8b9624..6d265a7 100644 --- a/lvz/wrapper.cpp +++ b/lvz/wrapper.cpp @@ -32,6 +32,9 @@ #include <stdlib.h> #include "audioeffectx.h" #include "lv2.h" +#include "lv2/lv2plug.in/ns/ext/atom/atom.h" +#include "lv2/lv2plug.in/ns/ext/midi/midi.h" +#include "lv2/lv2plug.in/ns/ext/urid/urid.h" #include PLUGIN_HEADER extern "C" { @@ -61,17 +64,19 @@ lvz_cleanup(LV2_Handle instance) static void lvz_connect_port(LV2_Handle instance, uint32_t port, void* data) { - LVZPlugin* plugin = (LVZPlugin*)instance; - - uint32_t num_params = plugin->effect->getNumParameters(); - uint32_t num_inputs = plugin->effect->getNumInputs(); + LVZPlugin* plugin = (LVZPlugin*)instance; + const uint32_t num_params = plugin->effect->getNumParameters(); + const uint32_t num_inputs = plugin->effect->getNumInputs(); + const uint32_t num_outputs = plugin->effect->getNumOutputs(); if (port < num_params) { plugin->control_buffers[port] = (float*)data; } else if (port < num_params + num_inputs) { plugin->inputs[port - num_params] = (float*)data; - } else { + } else if (port < num_params + num_inputs + num_outputs) { plugin->outputs[port - num_params - num_inputs] = (float*)data; + } else if (port == num_params + num_inputs + num_outputs) { + plugin->effect->setEventInput((LV2_Atom_Sequence*)data); } } @@ -98,6 +103,15 @@ lvz_instantiate(const LV2_Descriptor* descriptor, LVZPlugin* plugin = (LVZPlugin*)malloc(sizeof(LVZPlugin)); plugin->effect = effect; + for (int i = 0; features[i]; ++i) { + if (!strcmp(features[i]->URI, LV2_URID__map)) { + LV2_URID_Map* map = (LV2_URID_Map*)features[i]->data; + plugin->effect->setMidiEventType( + map->map(map->handle, LV2_MIDI__MidiEvent)); + break; + } + } + if (num_params > 0) { plugin->controls = (float*)malloc(sizeof(float) * num_params); plugin->control_buffers = (float**)malloc(sizeof(float*) * num_params); diff --git a/mda.lv2/Bandisto.ttl b/mda.lv2/Bandisto.ttl index ad38460..cb4d038 100644 --- a/mda.lv2/Bandisto.ttl +++ b/mda.lv2/Bandisto.ttl @@ -23,7 +23,7 @@ mda:Bandisto lv2:index 0 ; lv2:name "Listen" ; lv2:symbol "listen" ; - lv2:default 1 ; + lv2:default 1.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; lv2:portProperty lv2:enumeration ; @@ -32,13 +32,13 @@ mda:Bandisto rdf:value 0.0 ] , [ rdfs:label "Mid" ; - rdf:value 0.2 + rdf:value 0.33333333 ] , [ rdfs:label "High" ; - rdf:value 0.4 + rdf:value 0.66666666 ] , [ rdfs:label "Out" ; - rdf:value 0.6 + rdf:value 1.0 ] ; rdfs:comment "Audition the low, mid and high bands individually" ] , [ @@ -127,9 +127,10 @@ mda:Bandisto lv2:index 9 ; lv2:name "Mode" ; lv2:symbol "mode" ; - lv2:default 0.4 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; lv2:scalePoint [ rdfs:label "Bipolar" ; rdf:value 0.0 diff --git a/mda.lv2/BeatBox.ttl b/mda.lv2/BeatBox.ttl index 6f9691d..50a99f8 100644 --- a/mda.lv2/BeatBox.ttl +++ b/mda.lv2/BeatBox.ttl @@ -129,16 +129,16 @@ To record your own sounds, use the Record control to monitor the plug's input, t rdf:value 0.0 ] , [ rdfs:label "Monitor Input" ; - rdf:value 0.2 + rdf:value 0.25 ] , [ rdfs:label "Record Hat" ; - rdf:value 0.4 + rdf:value 0.5 ] , [ rdfs:label "Record Kick" ; - rdf:value 0.6 + rdf:value 0.75 ] , [ rdfs:label "Record Snare" ; - rdf:value 0.8 + rdf:value 1.0 ] ] , [ a lv2:InputPort , @@ -146,7 +146,7 @@ To record your own sounds, use the Record control to monitor the plug's input, t lv2:index 11 ; lv2:name "Thru Mix" ; lv2:symbol "thru_mix" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "Allow some of the input signal to be mixed with the output" diff --git a/mda.lv2/Combo.ttl b/mda.lv2/Combo.ttl index 3b61fed..a12e242 100644 --- a/mda.lv2/Combo.ttl +++ b/mda.lv2/Combo.ttl @@ -23,7 +23,7 @@ mda:Combo lv2:index 0 ; lv2:name "Model" ; lv2:symbol "model" ; - lv2:default 0 ; + lv2:default 1.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; lv2:portProperty lv2:enumeration ; @@ -96,7 +96,7 @@ mda:Combo lv2:index 5 ; lv2:name "HPF Freq" ; lv2:symbol "hpf_freq" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "High-Pass Filter Cutoff Frequency" diff --git a/mda.lv2/DX10-presets.ttl b/mda.lv2/DX10-presets.ttl new file mode 100644 index 0000000..72b7682 --- /dev/null +++ b/mda.lv2/DX10-presets.ttl @@ -0,0 +1,1731 @@ +@prefix lv2: <http://lv2plug.in/ns/lv2core#> . +@prefix pset: <http://lv2plug.in/ns/ext/presets#> . +@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . + +<http://drobilla.net/plugins/mda/presets#DX10-bright-e-piano> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Bright E.Piano" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.65 + ] , [ + lv2:symbol "release" ; + pset:value 0.441 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.842 + ] , [ + lv2:symbol "fine" ; + pset:value 0.329 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.23 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.8 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.05 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.8 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.9 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.447 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.0 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.414 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-jazz-e-piano> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Jazz E.Piano" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.5 + ] , [ + lv2:symbol "release" ; + pset:value 0.1 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.671 + ] , [ + lv2:symbol "fine" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.441 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.336 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.243 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.8 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.178 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.0 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-e-piano-pad> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "E.Piano Pad" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.7 + ] , [ + lv2:symbol "release" ; + pset:value 0.4 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.23 + ] , [ + lv2:symbol "fine" ; + pset:value 0.184 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.27 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.474 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.224 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.8 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.974 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.25 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.428 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.836 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-fuzzy-e-piano> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Fuzzy E.Piano" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.7 + ] , [ + lv2:symbol "release" ; + pset:value 0.4 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.32 + ] , [ + lv2:symbol "fine" ; + pset:value 0.217 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.599 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.67 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.309 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.8 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.263 + ] , [ + lv2:symbol "octave" ; + pset:value 0.507 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.276 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.638 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.526 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-soft-chimes> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Soft Chimes" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.4 + ] , [ + lv2:symbol "decay" ; + pset:value 0.6 + ] , [ + lv2:symbol "release" ; + pset:value 0.65 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.76 + ] , [ + lv2:symbol "fine" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.39 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.25 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.16 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.9 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.362 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.401 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.296 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.493 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-harpsichord> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Harpsichord" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.342 + ] , [ + lv2:symbol "release" ; + pset:value 0.0 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.28 + ] , [ + lv2:symbol "fine" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.88 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.1 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.408 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.74 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.0 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.6 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.842 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.651 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-funk-clav> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Funk Clav" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.4 + ] , [ + lv2:symbol "release" ; + pset:value 0.1 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.36 + ] , [ + lv2:symbol "fine" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.875 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.16 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.592 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.8 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.303 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.868 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-sitar> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Sitar" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.5 + ] , [ + lv2:symbol "release" ; + pset:value 0.704 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.23 + ] , [ + lv2:symbol "fine" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.151 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.75 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.493 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.77 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.4 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.421 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.632 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-chiff-organ> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Chiff Organ" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.6 + ] , [ + lv2:symbol "decay" ; + pset:value 0.99 + ] , [ + lv2:symbol "release" ; + pset:value 0.4 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.32 + ] , [ + lv2:symbol "fine" ; + pset:value 0.283 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.57 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.3 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.05 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.24 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.138 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.283 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.822 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-tinkle> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Tinkle" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.5 + ] , [ + lv2:symbol "release" ; + pset:value 0.65 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.368 + ] , [ + lv2:symbol "fine" ; + pset:value 0.651 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.395 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.55 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.257 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.9 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.3 + ] , [ + lv2:symbol "octave" ; + pset:value 0.8 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.414 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-space-pad> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Space Pad" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.7 + ] , [ + lv2:symbol "release" ; + pset:value 0.52 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.23 + ] , [ + lv2:symbol "fine" ; + pset:value 0.197 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.52 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.72 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.28 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.73 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.25 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.336 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.428 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-koto> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Koto" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.24 + ] , [ + lv2:symbol "release" ; + pset:value 0.0 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.39 + ] , [ + lv2:symbol "fine" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.88 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.1 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.6 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.74 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.526 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.48 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-harp> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Harp" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.5 + ] , [ + lv2:symbol "release" ; + pset:value 0.7 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.16 + ] , [ + lv2:symbol "fine" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.158 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.349 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.28 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.9 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.618 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.401 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.0 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-jazz-guitar> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Jazz Guitar" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.5 + ] , [ + lv2:symbol "release" ; + pset:value 0.1 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.39 + ] , [ + lv2:symbol "fine" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.49 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.25 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.25 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.8 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.263 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.145 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-steel-drum> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Steel Drum" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.3 + ] , [ + lv2:symbol "release" ; + pset:value 0.507 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.48 + ] , [ + lv2:symbol "fine" ; + pset:value 0.73 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.1 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.303 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.73 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 1.0 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.6 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.579 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.0 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-log-drum> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Log Drum" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.3 + ] , [ + lv2:symbol "release" ; + pset:value 0.5 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.32 + ] , [ + lv2:symbol "fine" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.467 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.079 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.158 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.5 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.4 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.151 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.02 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-trumpet> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Trumpet" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.99 + ] , [ + lv2:symbol "release" ; + pset:value 0.1 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.23 + ] , [ + lv2:symbol "fine" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.2 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.45 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.8 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.0 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.112 + ] , [ + lv2:symbol "octave" ; + pset:value 0.6 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.711 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.0 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.401 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-horn> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Horn" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.28 + ] , [ + lv2:symbol "decay" ; + pset:value 0.99 + ] , [ + lv2:symbol "release" ; + pset:value 0.28 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.23 + ] , [ + lv2:symbol "fine" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.18 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.4 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.3 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.8 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.4 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.217 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.48 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-reed-1> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Reed 1" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.22 + ] , [ + lv2:symbol "decay" ; + pset:value 0.99 + ] , [ + lv2:symbol "release" ; + pset:value 0.25 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.17 + ] , [ + lv2:symbol "fine" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.24 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.31 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.257 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.9 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.757 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.697 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.803 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-reed-2> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Reed 2" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.22 + ] , [ + lv2:symbol "decay" ; + pset:value 0.99 + ] , [ + lv2:symbol "release" ; + pset:value 0.25 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.45 + ] , [ + lv2:symbol "fine" ; + pset:value 0.07 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.24 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.31 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.36 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.9 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.211 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.184 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.0 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.414 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-violin> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Violin" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.697 + ] , [ + lv2:symbol "decay" ; + pset:value 0.99 + ] , [ + lv2:symbol "release" ; + pset:value 0.421 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.23 + ] , [ + lv2:symbol "fine" ; + pset:value 0.138 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.75 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.39 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.513 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.8 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.316 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.467 + ] , [ + lv2:symbol "octave" ; + pset:value 0.678 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.743 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.757 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.487 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-chunky-bass> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Chunky Bass" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.4 + ] , [ + lv2:symbol "release" ; + pset:value 0.0 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.28 + ] , [ + lv2:symbol "fine" ; + pset:value 0.125 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.474 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.25 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.1 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.5 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.4 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.579 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.592 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-e-bass> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "E.Bass" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.23 + ] , [ + lv2:symbol "decay" ; + pset:value 0.5 + ] , [ + lv2:symbol "release" ; + pset:value 0.1 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.395 + ] , [ + lv2:symbol "fine" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.388 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.092 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.25 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.15 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.2 + ] , [ + lv2:symbol "octave" ; + pset:value 0.2 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.178 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.822 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-clunk-bass> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Clunk Bass" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.6 + ] , [ + lv2:symbol "release" ; + pset:value 0.4 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.23 + ] , [ + lv2:symbol "fine" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.45 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.32 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.05 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.9 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.2 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.52 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.105 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-thick-bass> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Thick Bass" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.6 + ] , [ + lv2:symbol "release" ; + pset:value 0.4 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.17 + ] , [ + lv2:symbol "fine" ; + pset:value 0.145 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.29 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.35 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.1 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.9 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.4 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.441 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.309 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-sine-bass> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Sine Bass" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.6 + ] , [ + lv2:symbol "release" ; + pset:value 0.49 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.17 + ] , [ + lv2:symbol "fine" ; + pset:value 0.151 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.099 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.4 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.9 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.4 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.118 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.013 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-square-bass> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Square Bass" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.6 + ] , [ + lv2:symbol "release" ; + pset:value 0.1 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.32 + ] , [ + lv2:symbol "fine" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.35 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.67 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.1 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.15 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.2 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.303 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.73 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-upright-bass-1> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Upright Bass 1" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.3 + ] , [ + lv2:symbol "decay" ; + pset:value 0.5 + ] , [ + lv2:symbol "release" ; + pset:value 0.4 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.28 + ] , [ + lv2:symbol "fine" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.18 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.54 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.7 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.4 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.296 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.033 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-upright-bass-2> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Upright Bass 2" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.3 + ] , [ + lv2:symbol "decay" ; + pset:value 0.5 + ] , [ + lv2:symbol "release" ; + pset:value 0.4 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.36 + ] , [ + lv2:symbol "fine" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.461 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.07 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.07 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.7 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.4 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.546 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.467 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-harmonics> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Harmonics" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.5 + ] , [ + lv2:symbol "release" ; + pset:value 0.5 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.28 + ] , [ + lv2:symbol "fine" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.33 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.2 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.7 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.151 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.079 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-scratch> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Scratch" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.5 + ] , [ + lv2:symbol "release" ; + pset:value 0.0 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.0 + ] , [ + lv2:symbol "fine" ; + pset:value 0.24 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.58 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.63 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.6 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 0.816 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.243 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#DX10-syn-tom> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/DX10> ; + rdfs:label "Syn Tom" ; + lv2:port [ + lv2:symbol "attack" ; + pset:value 0.0 + ] , [ + lv2:symbol "decay" ; + pset:value 0.355 + ] , [ + lv2:symbol "release" ; + pset:value 0.35 + ] , [ + lv2:symbol "coarse" ; + pset:value 0.0 + ] , [ + lv2:symbol "fine" ; + pset:value 0.105 + ] , [ + lv2:symbol "mod_init" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_dec" ; + pset:value 0.0 + ] , [ + lv2:symbol "mod_sus" ; + pset:value 0.2 + ] , [ + lv2:symbol "mod_rel" ; + pset:value 0.5 + ] , [ + lv2:symbol "mod_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.645 + ] , [ + lv2:symbol "finetune" ; + pset:value 0.5 + ] , [ + lv2:symbol "waveform" ; + pset:value 1.0 + ] , [ + lv2:symbol "mod_thru" ; + pset:value 0.296 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.5 + ] . diff --git a/mda.lv2/DX10.ttl b/mda.lv2/DX10.ttl index ef217dd..f4a06cf 100644 --- a/mda.lv2/DX10.ttl +++ b/mda.lv2/DX10.ttl @@ -1,3 +1,4 @@ +@prefix atom: <http://lv2plug.in/ns/ext/atom#> . @prefix doap: <http://usefulinc.com/ns/doap#> . @prefix lv2: <http://lv2plug.in/ns/lv2core#> . @prefix mda: <http://drobilla.net/plugins/mda/> . @@ -19,16 +20,17 @@ mda:DX10 doap:name "MDA DX10" ; doap:license <http://usefulinc.com/doap/licenses/gpl> ; lv2:optionalFeature lv2:hardRTCapable ; + lv2:requiredFeature <http://lv2plug.in/ns/ext/urid#map> ; pg:mainInput mda:mainIn ; pg:mainOutput mda:mainOut ; - rdfs:comment """Sounds similar to the later Yamaha DX synths including the heavy bass but with a warmer, cleaner tone. This plug-in is 8-voice polyphonic.""" ; + rdfs:comment "Sounds similar to the later Yamaha DX synths including the heavy bass but with a warmer, cleaner tone. This plug-in is 8-voice polyphonic." ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; lv2:index 0 ; lv2:name "Attack" ; lv2:symbol "attack" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; lv2:designation param:attack ; @@ -124,7 +126,7 @@ mda:DX10 lv2:index 10 ; lv2:name "Vibrato" ; lv2:symbol "vibrato" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ] , [ @@ -160,7 +162,7 @@ mda:DX10 lv2:index 14 ; lv2:name "Mod Thru" ; lv2:symbol "mod_thru" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ] , [ @@ -188,4 +190,12 @@ mda:DX10 lv2:name "Right Out" ; lv2:designation pg:right ; pg:group mda:mainOut + ] , [ + a lv2:InputPort , + atom:AtomPort ; + atom:bufferType atom:Sequence ; + atom:supports <http://lv2plug.in/ns/ext/midi#MidiEvent> ; + lv2:index 18 ; + lv2:symbol "event_in" ; + lv2:name "Event In" ] . diff --git a/mda.lv2/Detune-presets.ttl b/mda.lv2/Detune-presets.ttl new file mode 100644 index 0000000..c069f1a --- /dev/null +++ b/mda.lv2/Detune-presets.ttl @@ -0,0 +1,57 @@ +@prefix lv2: <http://lv2plug.in/ns/lv2core#> . +@prefix pset: <http://lv2plug.in/ns/ext/presets#> . +@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . + +<http://drobilla.net/plugins/mda/presets#Detune-stereo-detune> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Detune> ; + rdfs:label "Stereo Detune" ; + lv2:port [ + lv2:symbol "detune" ; + pset:value 0.2 + ] , [ + lv2:symbol "mix" ; + pset:value 0.9 + ] , [ + lv2:symbol "output" ; + pset:value 0.5 + ] , [ + lv2:symbol "latency" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#Detune-symphonic> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Detune> ; + rdfs:label "Symphonic" ; + lv2:port [ + lv2:symbol "detune" ; + pset:value 0.2 + ] , [ + lv2:symbol "mix" ; + pset:value 0.9 + ] , [ + lv2:symbol "output" ; + pset:value 0.5 + ] , [ + lv2:symbol "latency" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#Detune-out-of-tune> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Detune> ; + rdfs:label "Out Of Tune" ; + lv2:port [ + lv2:symbol "detune" ; + pset:value 0.8 + ] , [ + lv2:symbol "mix" ; + pset:value 0.7 + ] , [ + lv2:symbol "output" ; + pset:value 0.5 + ] , [ + lv2:symbol "latency" ; + pset:value 0.5 + ] . diff --git a/mda.lv2/Dither.ttl b/mda.lv2/Dither.ttl index d69ecf0..9f41510 100644 --- a/mda.lv2/Dither.ttl +++ b/mda.lv2/Dither.ttl @@ -42,21 +42,22 @@ Very technical note This plug-in follows Steinberg's convention that a signal le lv2:index 1 ; lv2:name "Dither" ; lv2:symbol "dither" ; - lv2:default 0.88 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; lv2:scalePoint [ rdfs:label "Truncation" ; rdf:value 0.0 ] , [ rdfs:label "Triangular PDF dither" ; - rdf:value 0.25 + rdf:value 0.33333333 ] , [ rdfs:label "High-pass Triangular PDF dither" ; - rdf:value 0.5 + rdf:value 0.66666666 ] , [ rdfs:label "Second-order noise-shaped dither" ; - rdf:value 0.75 + rdf:value 1.0 ] ] , [ a lv2:InputPort , @@ -84,7 +85,7 @@ Very technical note This plug-in follows Steinberg's convention that a signal le lv2:index 4 ; lv2:name "Zoom" ; lv2:symbol "zoom" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment """Allows the signal to be faded into the noise floor at a clearly audible level so dither settings can be "auditioned". Note that some (perceptual) properties of dither will change when listened to in this way""" diff --git a/mda.lv2/DubDelay.ttl b/mda.lv2/DubDelay.ttl index c69b051..70d82a5 100644 --- a/mda.lv2/DubDelay.ttl +++ b/mda.lv2/DubDelay.ttl @@ -51,7 +51,7 @@ mda:DubDelay lv2:index 3 ; lv2:name "LFO Depth" ; lv2:symbol "lfo_depth" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "Delay time modulation (sine wave)" diff --git a/mda.lv2/Dynamics.ttl b/mda.lv2/Dynamics.ttl index 5cfd71f..4970b8c 100644 --- a/mda.lv2/Dynamics.ttl +++ b/mda.lv2/Dynamics.ttl @@ -68,7 +68,7 @@ mda:Dynamics lv2:index 5 ; lv2:name "Limiter" ; lv2:symbol "limiter" ; - lv2:default 1 ; + lv2:default 1.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "Limiter threshold - the limiter has zero attack time but uses the same release time as the compressor" @@ -105,7 +105,7 @@ mda:Dynamics lv2:index 9 ; lv2:name "Mix" ; lv2:symbol "mix" ; - lv2:default 1 ; + lv2:default 1.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ] , [ diff --git a/mda.lv2/EPiano-presets.ttl b/mda.lv2/EPiano-presets.ttl new file mode 100644 index 0000000..ec703d6 --- /dev/null +++ b/mda.lv2/EPiano-presets.ttl @@ -0,0 +1,213 @@ +@prefix lv2: <http://lv2plug.in/ns/lv2core#> . +@prefix pset: <http://lv2plug.in/ns/ext/presets#> . +@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . + +<http://drobilla.net/plugins/mda/presets#EPiano-default> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/EPiano> ; + rdfs:label "Default" ; + lv2:port [ + lv2:symbol "env_decay" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_release" ; + pset:value 0.5 + ] , [ + lv2:symbol "hardness" ; + pset:value 0.5 + ] , [ + lv2:symbol "treble_boost" ; + pset:value 0.5 + ] , [ + lv2:symbol "modulation" ; + pset:value 0.5 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.65 + ] , [ + lv2:symbol "vel_sense" ; + pset:value 0.25 + ] , [ + lv2:symbol "stereo_width" ; + pset:value 0.5 + ] , [ + lv2:symbol "polyphonic" ; + pset:value 1.0 + ] , [ + lv2:symbol "fine_tuning" ; + pset:value 0.5 + ] , [ + lv2:symbol "random_tuning" ; + pset:value 0.146 + ] , [ + lv2:symbol "overdrive" ; + pset:value 0.0 + ] . + +<http://drobilla.net/plugins/mda/presets#EPiano-bright> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/EPiano> ; + rdfs:label "Bright" ; + lv2:port [ + lv2:symbol "env_decay" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_release" ; + pset:value 0.5 + ] , [ + lv2:symbol "hardness" ; + pset:value 1.0 + ] , [ + lv2:symbol "treble_boost" ; + pset:value 0.8 + ] , [ + lv2:symbol "modulation" ; + pset:value 0.5 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.65 + ] , [ + lv2:symbol "vel_sense" ; + pset:value 0.25 + ] , [ + lv2:symbol "stereo_width" ; + pset:value 0.5 + ] , [ + lv2:symbol "polyphonic" ; + pset:value 1.0 + ] , [ + lv2:symbol "fine_tuning" ; + pset:value 0.5 + ] , [ + lv2:symbol "random_tuning" ; + pset:value 0.146 + ] , [ + lv2:symbol "overdrive" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#EPiano-mellow> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/EPiano> ; + rdfs:label "Mellow" ; + lv2:port [ + lv2:symbol "env_decay" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_release" ; + pset:value 0.5 + ] , [ + lv2:symbol "hardness" ; + pset:value 0.0 + ] , [ + lv2:symbol "treble_boost" ; + pset:value 0.0 + ] , [ + lv2:symbol "modulation" ; + pset:value 0.5 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.65 + ] , [ + lv2:symbol "vel_sense" ; + pset:value 0.25 + ] , [ + lv2:symbol "stereo_width" ; + pset:value 0.5 + ] , [ + lv2:symbol "polyphonic" ; + pset:value 1.0 + ] , [ + lv2:symbol "fine_tuning" ; + pset:value 0.5 + ] , [ + lv2:symbol "random_tuning" ; + pset:value 0.246 + ] , [ + lv2:symbol "overdrive" ; + pset:value 0.0 + ] . + +<http://drobilla.net/plugins/mda/presets#EPiano-autopan> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/EPiano> ; + rdfs:label "Autopan" ; + lv2:port [ + lv2:symbol "env_decay" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_release" ; + pset:value 0.5 + ] , [ + lv2:symbol "hardness" ; + pset:value 0.5 + ] , [ + lv2:symbol "treble_boost" ; + pset:value 0.5 + ] , [ + lv2:symbol "modulation" ; + pset:value 0.25 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.65 + ] , [ + lv2:symbol "vel_sense" ; + pset:value 0.25 + ] , [ + lv2:symbol "stereo_width" ; + pset:value 0.5 + ] , [ + lv2:symbol "polyphonic" ; + pset:value 1.0 + ] , [ + lv2:symbol "fine_tuning" ; + pset:value 0.5 + ] , [ + lv2:symbol "random_tuning" ; + pset:value 0.246 + ] , [ + lv2:symbol "overdrive" ; + pset:value 0.0 + ] . + +<http://drobilla.net/plugins/mda/presets#EPiano-tremolo> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/EPiano> ; + rdfs:label "Tremolo" ; + lv2:port [ + lv2:symbol "env_decay" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_release" ; + pset:value 0.5 + ] , [ + lv2:symbol "hardness" ; + pset:value 0.5 + ] , [ + lv2:symbol "treble_boost" ; + pset:value 0.5 + ] , [ + lv2:symbol "modulation" ; + pset:value 0.75 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.65 + ] , [ + lv2:symbol "vel_sense" ; + pset:value 0.25 + ] , [ + lv2:symbol "stereo_width" ; + pset:value 0.5 + ] , [ + lv2:symbol "polyphonic" ; + pset:value 1.0 + ] , [ + lv2:symbol "fine_tuning" ; + pset:value 0.5 + ] , [ + lv2:symbol "random_tuning" ; + pset:value 0.246 + ] , [ + lv2:symbol "overdrive" ; + pset:value 0.0 + ] . diff --git a/mda.lv2/EPiano.ttl b/mda.lv2/EPiano.ttl index 8ee3615..38a3c9e 100644 --- a/mda.lv2/EPiano.ttl +++ b/mda.lv2/EPiano.ttl @@ -1,3 +1,4 @@ +@prefix atom: <http://lv2plug.in/ns/ext/atom#> . @prefix doap: <http://usefulinc.com/ns/doap#> . @prefix lv2: <http://lv2plug.in/ns/lv2core#> . @prefix mda: <http://drobilla.net/plugins/mda/> . @@ -11,6 +12,7 @@ mda:EPiano doap:name "MDA ePiano" ; doap:license <http://usefulinc.com/doap/licenses/gpl> ; lv2:optionalFeature lv2:hardRTCapable ; + lv2:requiredFeature <http://lv2plug.in/ns/ext/urid#map> ; pg:mainInput mda:mainIn ; pg:mainOutput mda:mainOut ; lv2:port [ @@ -18,7 +20,7 @@ mda:EPiano lv2:ControlPort ; lv2:index 0 ; lv2:name "Envelope Decay" ; - lv2:symbol "envelope_decay" ; + lv2:symbol "env_decay" ; lv2:default 0.5 ; lv2:minimum 0.0 ; lv2:maximum 1.0 @@ -27,7 +29,7 @@ mda:EPiano lv2:ControlPort ; lv2:index 1 ; lv2:name "Envelope Release" ; - lv2:symbol "envelope_release" ; + lv2:symbol "env_release" ; lv2:default 0.5 ; lv2:minimum 0.0 ; lv2:maximum 1.0 @@ -72,7 +74,7 @@ mda:EPiano lv2:ControlPort ; lv2:index 6 ; lv2:name "Velocity Sense" ; - lv2:symbol "velocity_sense" ; + lv2:symbol "vel_sense" ; lv2:default 0.25 ; lv2:minimum 0.0 ; lv2:maximum 1.0 @@ -89,11 +91,12 @@ mda:EPiano a lv2:InputPort , lv2:ControlPort ; lv2:index 8 ; - lv2:name "Polyphony" ; - lv2:symbol "polyphony" ; - lv2:default 0.5 ; + lv2:name "Polyphonic" ; + lv2:symbol "polyphonic" ; + lv2:default 1.0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:portProperty lv2:toggled ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -118,7 +121,7 @@ mda:EPiano lv2:index 11 ; lv2:name "Overdrive" ; lv2:symbol "overdrive" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ] , [ @@ -137,4 +140,12 @@ mda:EPiano lv2:name "Right Out" ; lv2:designation pg:right ; pg:group mda:mainOut + ] , [ + a lv2:InputPort , + atom:AtomPort ; + atom:bufferType atom:Sequence ; + atom:supports <http://lv2plug.in/ns/ext/midi#MidiEvent> ; + lv2:index 14 ; + lv2:symbol "event_in" ; + lv2:name "Event In" ] . diff --git a/mda.lv2/Image.ttl b/mda.lv2/Image.ttl index bb8e00d..9a79e3d 100644 --- a/mda.lv2/Image.ttl +++ b/mda.lv2/Image.ttl @@ -23,9 +23,10 @@ mda:Image lv2:index 0 ; lv2:name "Mode" ; lv2:symbol "mode" ; - lv2:default 0.6 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; lv2:scalePoint [ rdfs:label "Stereo image adjustment" ; rdf:value 0.0 diff --git a/mda.lv2/JX10-presets.ttl b/mda.lv2/JX10-presets.ttl new file mode 100644 index 0000000..aba3727 --- /dev/null +++ b/mda.lv2/JX10-presets.ttl @@ -0,0 +1,4059 @@ +@prefix lv2: <http://lv2plug.in/ns/lv2core#> . +@prefix pset: <http://lv2plug.in/ns/ext/presets#> . +@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . + +<http://drobilla.net/plugins/mda/presets#JX10-5th-sweep-pad> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "5th Sweep Pad" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 1.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.37 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.25 + ] , [ + lv2:symbol "glide" ; + pset:value 0.3 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.32 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.9 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.6 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.12 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.9 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.89 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.9 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.73 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.71 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.65 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-echo-pad> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Echo Pad [SA]" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.88 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.5 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.49 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.46 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.76 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.69 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.1 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.69 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 1.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.86 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.76 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.57 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.3 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.8 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.68 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.66 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.79 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.13 + ] , [ + lv2:symbol "noise" ; + pset:value 0.25 + ] , [ + lv2:symbol "octave" ; + pset:value 0.45 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-space-chimes> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Space Chimes [SA]" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.88 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.5 + ] , [ + lv2:symbol "glide" ; + pset:value 0.16 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.49 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.49 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.82 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.66 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.08 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.89 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.85 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.69 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.76 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.47 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.12 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.22 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.55 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.66 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.89 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.34 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 1.0 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-solid-backing> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Solid Backing" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 1.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.26 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.14 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.35 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.3 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.25 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.7 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.63 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.35 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.3 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.5 + ] , [ + lv2:symbol "noise" ; + pset:value 0.5 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-velocity-backing> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Velocity Backing [SA]" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.41 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.5 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.79 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.08 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.32 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.49 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.01 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.34 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.93 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.61 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.87 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.93 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.11 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.48 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.98 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.32 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.5 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-rubber-backing-zf-> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Rubber Backing [ZF]" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.29 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.76 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.26 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.18 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.76 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.35 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.15 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.77 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.14 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.54 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.42 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.13 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.21 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.56 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.32 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.2 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.58 + ] , [ + lv2:symbol "noise" ; + pset:value 0.22 + ] , [ + lv2:symbol "octave" ; + pset:value 0.53 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-808-state-lead> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "808 State Lead" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 1.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.65 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.24 + ] , [ + lv2:symbol "glide" ; + pset:value 0.4 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.34 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.85 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.65 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.63 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.75 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.16 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.3 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.17 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.03 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.5 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.68 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-mono-glide> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Mono Glide" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.25 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.5 + ] , [ + lv2:symbol "glide" ; + pset:value 1.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.46 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.51 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.3 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.37 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.38 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.62 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-detuned-techno-lead> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Detuned Techno Lead" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.84 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.15 + ] , [ + lv2:symbol "glide" ; + pset:value 0.45 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.41 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.42 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.54 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.01 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.58 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.21 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.67 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.09 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.2 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.85 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.3 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.83 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.09 + ] , [ + lv2:symbol "noise" ; + pset:value 0.4 + ] , [ + lv2:symbol "octave" ; + pset:value 0.49 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-hard-lead> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Hard Lead [SA]" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.71 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.75 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.53 + ] , [ + lv2:symbol "glide" ; + pset:value 0.18 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.24 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 1.0 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.56 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.52 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.69 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.19 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.7 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 1.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.14 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.65 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.95 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.07 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.91 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.15 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.84 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.33 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.49 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-bubble> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Bubble" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.25 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.43 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.71 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.48 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.23 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.77 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.8 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.32 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.63 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.4 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.18 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.66 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.14 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.38 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.65 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.16 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.48 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.5 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.67 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-monosynth> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Monosynth" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.62 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.26 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.51 + ] , [ + lv2:symbol "glide" ; + pset:value 0.79 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.35 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.54 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.64 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.39 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.51 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.65 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.07 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.52 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.24 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.84 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.13 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.3 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.76 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.21 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.58 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.3 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.36 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-moogcury-lite> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Moogcury Lite" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.81 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 1.0 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.21 + ] , [ + lv2:symbol "glide" ; + pset:value 0.78 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.15 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.35 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.39 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.17 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.69 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.4 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.62 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.47 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.19 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.37 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.2 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.33 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.38 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.53 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.12 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-gangsta-whine> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Gangsta Whine" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.52 + ] , [ + lv2:symbol "glide" ; + pset:value 0.96 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.44 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.41 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.46 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.15 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.32 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.49 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.83 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-higher-synth-zf-> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Higher Synth [ZF]" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.48 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.22 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.47 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.73 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.3 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.8 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.1 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.07 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.42 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.22 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.21 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.59 + ] , [ + lv2:symbol "noise" ; + pset:value 0.16 + ] , [ + lv2:symbol "octave" ; + pset:value 0.98 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-303-saw-bass> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "303 Saw Bass" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.5 + ] , [ + lv2:symbol "glide" ; + pset:value 0.83 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.49 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.55 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.75 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.69 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.35 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.56 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.56 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.8 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.24 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.26 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.49 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.07 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-303-square-bass> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "303 Square Bass" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.75 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.5 + ] , [ + lv2:symbol "glide" ; + pset:value 0.83 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.49 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.55 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.75 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.69 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.35 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.14 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.49 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.39 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.8 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.24 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.26 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.49 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.07 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-analog-bass> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Analog Bass" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 1.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.25 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.2 + ] , [ + lv2:symbol "glide" ; + pset:value 0.81 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.19 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.3 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.51 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.85 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.09 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.88 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.21 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.46 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.5 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.27 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-analog-bass-2> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Analog Bass 2" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 1.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.25 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.2 + ] , [ + lv2:symbol "glide" ; + pset:value 0.72 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.19 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.86 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.48 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.43 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.94 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.8 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.61 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.32 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.5 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.27 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-low-pulses> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Low Pulses" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.97 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.26 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.3 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.35 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.8 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.4 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.52 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.77 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.3 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.16 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.0 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-sine-infra-bass> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Sine Infra-Bass" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.25 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.5 + ] , [ + lv2:symbol "glide" ; + pset:value 0.65 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.35 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.33 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.76 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.53 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.3 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.55 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.3 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.52 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.14 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-wobble-bass> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Wobble Bass [SA]" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 1.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.26 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.22 + ] , [ + lv2:symbol "glide" ; + pset:value 0.64 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.82 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.59 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.72 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.47 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.34 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.34 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.82 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.2 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.69 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.15 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.09 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.07 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.46 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.24 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-squelch-bass> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Squelch Bass" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 1.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.26 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.22 + ] , [ + lv2:symbol "glide" ; + pset:value 0.71 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.35 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.67 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.7 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.26 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.48 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.69 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.15 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.07 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.46 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.24 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-rubber-bass-zf-> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Rubber Bass [ZF]" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.49 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.25 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.66 + ] , [ + lv2:symbol "glide" ; + pset:value 0.81 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.35 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.36 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.15 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.75 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.2 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.38 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.6 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.22 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.19 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.5 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.17 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-soft-pick-bass> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Soft Pick Bass" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.37 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.77 + ] , [ + lv2:symbol "glide" ; + pset:value 0.71 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.22 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.33 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.47 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.71 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.16 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.59 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.04 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.58 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.22 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.15 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.44 + ] , [ + lv2:symbol "noise" ; + pset:value 0.33 + ] , [ + lv2:symbol "octave" ; + pset:value 0.15 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-fretless-bass> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Fretless Bass" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.5 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.17 + ] , [ + lv2:symbol "glide" ; + pset:value 0.8 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.34 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.51 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.58 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.67 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.09 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.2 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.85 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.3 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.7 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.0 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-whistler> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Whistler" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.23 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.38 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.35 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.33 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 1.0 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.29 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.68 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.39 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.58 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.36 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.64 + ] , [ + lv2:symbol "noise" ; + pset:value 0.38 + ] , [ + lv2:symbol "octave" ; + pset:value 0.92 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-very-soft-pad> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Very Soft Pad" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.39 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.27 + ] , [ + lv2:symbol "glide" ; + pset:value 0.38 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.12 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.35 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.78 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.3 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.35 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.8 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.7 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.5 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-pizzicato> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Pizzicato" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.25 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.5 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.35 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.23 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.2 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.75 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.22 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.47 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.3 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.5 + ] , [ + lv2:symbol "noise" ; + pset:value 0.8 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-synth-strings> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Synth Strings" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 1.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.24 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.35 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.42 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.26 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.75 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.14 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.69 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.67 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.55 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.97 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.82 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.7 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.42 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.84 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.67 + ] , [ + lv2:symbol "noise" ; + pset:value 0.3 + ] , [ + lv2:symbol "octave" ; + pset:value 0.47 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-synth-strings-2> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Synth Strings 2" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.75 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.29 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.49 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.55 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.16 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.69 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.08 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.2 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.76 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.29 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.76 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.46 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.8 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.39 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.79 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.27 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.68 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-leslie-organ> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Leslie Organ" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.5 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.53 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.13 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.39 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.38 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.74 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.54 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.2 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.55 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.52 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.31 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.17 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.73 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.28 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.87 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.24 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.29 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-click-organ> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Click Organ" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.5 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.77 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.52 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.35 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.44 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.65 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.16 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.18 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.75 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.8 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.0 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.49 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.44 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-hard-organ> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Hard Organ" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.89 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.91 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.37 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.35 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.51 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.62 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.54 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.37 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.04 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.08 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.72 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.04 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.77 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.49 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.58 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-bass-clarinet> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Bass Clarinet" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 1.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.51 + ] , [ + lv2:symbol "glide" ; + pset:value 0.37 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.51 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.1 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.11 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.35 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.65 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.65 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.32 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.79 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.49 + ] , [ + lv2:symbol "noise" ; + pset:value 0.2 + ] , [ + lv2:symbol "octave" ; + pset:value 0.35 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-trumpet> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Trumpet" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.51 + ] , [ + lv2:symbol "glide" ; + pset:value 0.82 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.06 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.57 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.32 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.15 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.21 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.15 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.24 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.6 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.8 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.1 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.75 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.55 + ] , [ + lv2:symbol "noise" ; + pset:value 0.25 + ] , [ + lv2:symbol "octave" ; + pset:value 0.69 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-soft-horn> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Soft Horn" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.12 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.9 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.67 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.35 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.21 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.29 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.12 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.6 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.35 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.36 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.08 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.27 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.83 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.51 + ] , [ + lv2:symbol "noise" ; + pset:value 0.1 + ] , [ + lv2:symbol "octave" ; + pset:value 0.25 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-brass-section> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Brass Section" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.43 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.76 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.23 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.28 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.36 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.59 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.24 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.16 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.91 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.08 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.17 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.8 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.45 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.5 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.58 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-synth-brass> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Synth Brass" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.4 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.25 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.3 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.28 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.39 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.15 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.75 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.39 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.3 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.82 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.33 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.74 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.76 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.41 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.47 + ] , [ + lv2:symbol "noise" ; + pset:value 0.23 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-detuned-syn-brass-zf-> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Detuned Syn Brass [ZF]" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.68 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.5 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.93 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.31 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.62 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.26 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.07 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.85 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.66 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.83 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.05 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.75 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.54 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.32 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.76 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.37 + ] , [ + lv2:symbol "noise" ; + pset:value 0.29 + ] , [ + lv2:symbol "octave" ; + pset:value 0.56 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-power-pwm> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Power PWM" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 1.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.27 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.22 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.35 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.82 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.13 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.75 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.24 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.3 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.88 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.34 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.48 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.71 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.37 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.35 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-water-velocity> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Water Velocity [SA]" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.76 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.35 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.49 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.87 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.67 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 1.0 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.32 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.09 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.95 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.56 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.72 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.04 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.76 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.11 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.46 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.88 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.72 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.38 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-ghost> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Ghost [SA]" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.75 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.24 + ] , [ + lv2:symbol "glide" ; + pset:value 0.45 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.16 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.48 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.38 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.58 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.75 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.16 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.81 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.3 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.4 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.31 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.37 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.54 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.85 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.83 + ] , [ + lv2:symbol "noise" ; + pset:value 0.43 + ] , [ + lv2:symbol "octave" ; + pset:value 0.46 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-soft-e-piano> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Soft E.Piano" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.31 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.51 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.43 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.35 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.34 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.26 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.53 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.63 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.22 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.39 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.8 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.44 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.51 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-thumb-piano> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Thumb Piano" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.72 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.82 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 1.0 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.35 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.37 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.47 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.54 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.45 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.39 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.39 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.48 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.6 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.71 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-steel-drums-zf-> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Steel Drums [ZF]" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.81 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.76 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.19 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.18 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.7 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.4 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.3 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.54 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.17 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.4 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.42 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.23 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.47 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.12 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.48 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.49 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.53 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.36 + ] , [ + lv2:symbol "noise" ; + pset:value 0.34 + ] , [ + lv2:symbol "octave" ; + pset:value 0.56 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-car-horn> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Car Horn" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.57 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.49 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.31 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.35 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.46 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.68 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.46 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.3 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.23 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.3 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.31 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 1.0 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.38 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.5 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-helicopter> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Helicopter" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.25 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.5 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.35 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.08 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.36 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.69 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 1.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 1.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 1.0 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.96 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.92 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.97 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.5 + ] , [ + lv2:symbol "noise" ; + pset:value 1.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.0 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-arctic-wind> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Arctic Wind" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.25 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.5 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.35 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.16 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.85 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.28 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.37 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.3 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.89 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 1.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.89 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.24 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.5 + ] , [ + lv2:symbol "noise" ; + pset:value 1.0 + ] , [ + lv2:symbol "octave" ; + pset:value 1.0 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-thip> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Thip" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 1.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.37 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.51 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.35 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 1.0 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.97 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.02 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.2 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.2 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.46 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.3 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.5 + ] , [ + lv2:symbol "noise" ; + pset:value 0.78 + ] , [ + lv2:symbol "octave" ; + pset:value 0.48 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-synth-tom> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Synth Tom" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.0 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.25 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.5 + ] , [ + lv2:symbol "glide" ; + pset:value 0.0 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.76 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.94 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.3 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.33 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.76 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.68 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.59 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.59 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.1 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.5 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.81 + ] , [ + lv2:symbol "vibrato" ; + pset:value 0.5 + ] , [ + lv2:symbol "noise" ; + pset:value 0.7 + ] , [ + lv2:symbol "octave" ; + pset:value 0.0 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#JX10-squelchy-frog> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/JX10> ; + rdfs:label "Squelchy Frog" ; + lv2:port [ + lv2:symbol "osc_mix" ; + pset:value 0.5 + ] , [ + lv2:symbol "osc_tune" ; + pset:value 0.41 + ] , [ + lv2:symbol "osc_fine" ; + pset:value 0.23 + ] , [ + lv2:symbol "glide" ; + pset:value 0.45 + ] , [ + lv2:symbol "gld_rate" ; + pset:value 0.77 + ] , [ + lv2:symbol "gld_bend" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_freq" ; + pset:value 0.4 + ] , [ + lv2:symbol "vcf_reso" ; + pset:value 0.65 + ] , [ + lv2:symbol "vcf_env" ; + pset:value 0.95 + ] , [ + lv2:symbol "vcf_lfo" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_vel" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_att" ; + pset:value 0.33 + ] , [ + lv2:symbol "vcf_dec" ; + pset:value 0.5 + ] , [ + lv2:symbol "vcf_sus" ; + pset:value 0.0 + ] , [ + lv2:symbol "vcf_rel" ; + pset:value 0.25 + ] , [ + lv2:symbol "env_att" ; + pset:value 0.0 + ] , [ + lv2:symbol "env_dec" ; + pset:value 0.7 + ] , [ + lv2:symbol "env_sus" ; + pset:value 0.65 + ] , [ + lv2:symbol "env_rel" ; + pset:value 0.18 + ] , [ + lv2:symbol "lfo_rate" ; + pset:value 0.32 + ] , [ + lv2:symbol "vibrato" ; + pset:value 1.0 + ] , [ + lv2:symbol "noise" ; + pset:value 0.0 + ] , [ + lv2:symbol "octave" ; + pset:value 0.06 + ] , [ + lv2:symbol "tuning" ; + pset:value 0.5 + ] . diff --git a/mda.lv2/JX10.ttl b/mda.lv2/JX10.ttl index e9190d8..58340cb 100644 --- a/mda.lv2/JX10.ttl +++ b/mda.lv2/JX10.ttl @@ -1,3 +1,4 @@ +@prefix atom: <http://lv2plug.in/ns/ext/atom#> . @prefix doap: <http://usefulinc.com/ns/doap#> . @prefix lv2: <http://lv2plug.in/ns/lv2core#> . @prefix mda: <http://drobilla.net/plugins/mda/> . @@ -23,9 +24,10 @@ mda:JX10 lv2:InstrumentPlugin ; lv2:project mda: ; lv2:symbol "JX10" ; - doap:name "MDA JX10 Synth" ; + doap:name "MDA JX10" ; doap:license <http://usefulinc.com/doap/licenses/gpl> ; lv2:optionalFeature lv2:hardRTCapable ; + lv2:requiredFeature <http://lv2plug.in/ns/ext/urid#map> ; pg:mainInput mda:mainIn ; pg:mainOutput mda:mainOut ; rdfs:comment """When Vibrato is set to PWM, the two oscillators are phase-locked and will produce a square wave if set to the same pitch. Pitch modulation of one oscillator then causes Pulse Width Modulation. (pitch modulation of both oscillators for vibrato is still available from the modulation wheel). Unlike other synths, in PWM mode the oscillators can still be detuned to give a wider range of PWM effects. @@ -36,7 +38,7 @@ mda:JX10 lv2:index 0 ; lv2:name "OSC Mix" ; lv2:symbol "osc_mix" ; - lv2:default 1 ; + lv2:default 1.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "Level of second oscillator" @@ -127,7 +129,7 @@ mda:JX10 lv2:index 9 ; lv2:name "VCF LFO" ; lv2:symbol "vcf_lfo" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "Cutoff modulation by LFO" @@ -191,7 +193,7 @@ mda:JX10 lv2:index 15 ; lv2:name "ENV Att" ; lv2:symbol "env_att" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; lv2:designation param:attack ; @@ -213,7 +215,7 @@ mda:JX10 lv2:index 17 ; lv2:name "ENV Sus" ; lv2:symbol "env_sus" ; - lv2:default 1 ; + lv2:default 1.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; lv2:designation param:sustain ; @@ -255,7 +257,7 @@ mda:JX10 lv2:index 21 ; lv2:name "Noise" ; lv2:symbol "noise" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "White noise mix" @@ -297,4 +299,12 @@ mda:JX10 lv2:name "Right Out" ; lv2:designation pg:right ; pg:group mda:mainOut + ] , [ + a lv2:InputPort , + atom:AtomPort ; + atom:bufferType atom:Sequence ; + atom:supports <http://lv2plug.in/ns/ext/midi#MidiEvent> ; + lv2:index 26 ; + lv2:symbol "event_in" ; + lv2:name "Event In" ] . diff --git a/mda.lv2/Leslie-presets.ttl b/mda.lv2/Leslie-presets.ttl new file mode 100644 index 0000000..1adc573 --- /dev/null +++ b/mda.lv2/Leslie-presets.ttl @@ -0,0 +1,102 @@ +@prefix lv2: <http://lv2plug.in/ns/lv2core#> . +@prefix pset: <http://lv2plug.in/ns/ext/presets#> . +@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . + +<http://drobilla.net/plugins/mda/presets#Leslie-leslie-simulator> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Leslie> ; + rdfs:label "Default" ; + lv2:port [ + lv2:symbol "mode" ; + pset:value 0.5 + ] , [ + lv2:symbol "lo_width" ; + pset:value 0.5 + ] , [ + lv2:symbol "lo_throb" ; + pset:value 0.6 + ] , [ + lv2:symbol "hi_width" ; + pset:value 0.7 + ] , [ + lv2:symbol "hi_depth" ; + pset:value 0.6 + ] , [ + lv2:symbol "hi_throb" ; + pset:value 0.7 + ] , [ + lv2:symbol "x_over" ; + pset:value 0.48 + ] , [ + lv2:symbol "output" ; + pset:value 0.5 + ] , [ + lv2:symbol "speed" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#Leslie-slow> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Leslie> ; + rdfs:label "Slow" ; + lv2:port [ + lv2:symbol "mode" ; + pset:value 0.5 + ] , [ + lv2:symbol "lo_width" ; + pset:value 0.5 + ] , [ + lv2:symbol "lo_throb" ; + pset:value 0.6 + ] , [ + lv2:symbol "hi_width" ; + pset:value 0.7 + ] , [ + lv2:symbol "hi_depth" ; + pset:value 0.75 + ] , [ + lv2:symbol "hi_throb" ; + pset:value 0.57 + ] , [ + lv2:symbol "x_over" ; + pset:value 0.48 + ] , [ + lv2:symbol "output" ; + pset:value 0.5 + ] , [ + lv2:symbol "speed" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#Leslie-fast> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Leslie> ; + rdfs:label "Fast" ; + lv2:port [ + lv2:symbol "mode" ; + pset:value 1.0 + ] , [ + lv2:symbol "lo_width" ; + pset:value 0.5 + ] , [ + lv2:symbol "lo_throb" ; + pset:value 0.6 + ] , [ + lv2:symbol "hi_width" ; + pset:value 0.7 + ] , [ + lv2:symbol "hi_depth" ; + pset:value 0.6 + ] , [ + lv2:symbol "hi_throb" ; + pset:value 0.7 + ] , [ + lv2:symbol "x_over" ; + pset:value 0.48 + ] , [ + lv2:symbol "output" ; + pset:value 0.5 + ] , [ + lv2:symbol "speed" ; + pset:value 0.5 + ] . diff --git a/mda.lv2/Leslie.ttl b/mda.lv2/Leslie.ttl index e814d8e..d9e0a79 100644 --- a/mda.lv2/Leslie.ttl +++ b/mda.lv2/Leslie.ttl @@ -23,9 +23,10 @@ mda:Leslie lv2:index 0 ; lv2:name "Mode" ; lv2:symbol "mode" ; - lv2:default 0.66 ; + lv2:default 0.5 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; lv2:scalePoint [ rdfs:label "Stop" ; rdf:value 0.0 diff --git a/mda.lv2/MultiBand.ttl b/mda.lv2/MultiBand.ttl index 69525a2..68910aa 100644 --- a/mda.lv2/MultiBand.ttl +++ b/mda.lv2/MultiBand.ttl @@ -3,6 +3,7 @@ @prefix mda: <http://drobilla.net/plugins/mda/> . @prefix param: <http://lv2plug.in/ns/ext/parameters#> . @prefix pg: <http://lv2plug.in/ns/ext/port-groups#> . +@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . <http://drobilla.net/plugins/mda/MultiBand/env> @@ -31,9 +32,23 @@ To give more control when mastering (and to offer something different from other lv2:index 0 ; lv2:name "Listen" ; lv2:symbol "listen" ; - lv2:default 1 ; + lv2:default 1.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; + lv2:scalePoint [ + rdfs:label "Low" ; + rdf:value 0.0 + ] , [ + rdfs:label "Mid" ; + rdf:value 0.33333333 + ] , [ + rdfs:label "High" ; + rdf:value 0.66666666 + ] , [ + rdfs:label "Output" ; + rdf:value 1.0 + ] ; rdfs:comment "Audition the low, mid and high bands individually" ] , [ a lv2:InputPort , @@ -71,7 +86,7 @@ To give more control when mastering (and to offer something different from other lv2:index 4 ; lv2:name "M Comp" ; lv2:symbol "m_comp" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "Mid compression amount" @@ -153,9 +168,10 @@ To give more control when mastering (and to offer something different from other lv2:index 12 ; lv2:name "Process" ; lv2:symbol "process" ; - lv2:default 0.4 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:portProperty lv2:toggled ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mda.lv2/Overdrive.ttl b/mda.lv2/Overdrive.ttl index fc42b10..fac39f1 100644 --- a/mda.lv2/Overdrive.ttl +++ b/mda.lv2/Overdrive.ttl @@ -22,7 +22,7 @@ mda:Overdrive lv2:index 0 ; lv2:name "Drive" ; lv2:symbol "drive" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "Amount of distortion" @@ -32,7 +32,7 @@ mda:Overdrive lv2:index 1 ; lv2:name "Muffle" ; lv2:symbol "muffle" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "Gentle low-pass filter" diff --git a/mda.lv2/Piano-presets.ttl b/mda.lv2/Piano-presets.ttl new file mode 100644 index 0000000..49675e4 --- /dev/null +++ b/mda.lv2/Piano-presets.ttl @@ -0,0 +1,339 @@ +@prefix lv2: <http://lv2plug.in/ns/lv2core#> . +@prefix pset: <http://lv2plug.in/ns/ext/presets#> . +@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . + +<http://drobilla.net/plugins/mda/presets#Piano-mda-piano> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Piano> ; + rdfs:label "MDA Piano" ; + lv2:port [ + lv2:symbol "env_decay" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_release" ; + pset:value 0.5 + ] , [ + lv2:symbol "hardness_offset" ; + pset:value 0.5 + ] , [ + lv2:symbol "vel_to_hardness" ; + pset:value 0.5 + ] , [ + lv2:symbol "muffling_filter" ; + pset:value 0.803 + ] , [ + lv2:symbol "vel_to_muffling" ; + pset:value 0.251 + ] , [ + lv2:symbol "vel_sensitivity" ; + pset:value 0.376 + ] , [ + lv2:symbol "stereo_width" ; + pset:value 0.5 + ] , [ + lv2:symbol "polyphony" ; + pset:value 0.33 + ] , [ + lv2:symbol "fine_tuning" ; + pset:value 0.5 + ] , [ + lv2:symbol "random_detuning" ; + pset:value 0.246 + ] , [ + lv2:symbol "stretch_tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#Piano-plain-piano> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Piano> ; + rdfs:label "Plain Piano" ; + lv2:port [ + lv2:symbol "env_decay" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_release" ; + pset:value 0.5 + ] , [ + lv2:symbol "hardness_offset" ; + pset:value 0.5 + ] , [ + lv2:symbol "vel_to_hardness" ; + pset:value 0.5 + ] , [ + lv2:symbol "muffling_filter" ; + pset:value 0.751 + ] , [ + lv2:symbol "vel_to_muffling" ; + pset:value 0.0 + ] , [ + lv2:symbol "vel_sensitivity" ; + pset:value 0.452 + ] , [ + lv2:symbol "stereo_width" ; + pset:value 0.0 + ] , [ + lv2:symbol "polyphony" ; + pset:value 0.0 + ] , [ + lv2:symbol "fine_tuning" ; + pset:value 0.5 + ] , [ + lv2:symbol "random_detuning" ; + pset:value 0.0 + ] , [ + lv2:symbol "stretch_tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#Piano-compressed-piano> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Piano> ; + rdfs:label "Compressed Piano" ; + lv2:port [ + lv2:symbol "env_decay" ; + pset:value 0.902 + ] , [ + lv2:symbol "env_release" ; + pset:value 0.399 + ] , [ + lv2:symbol "hardness_offset" ; + pset:value 0.623 + ] , [ + lv2:symbol "vel_to_hardness" ; + pset:value 0.5 + ] , [ + lv2:symbol "muffling_filter" ; + pset:value 1.0 + ] , [ + lv2:symbol "vel_to_muffling" ; + pset:value 0.331 + ] , [ + lv2:symbol "vel_sensitivity" ; + pset:value 0.299 + ] , [ + lv2:symbol "stereo_width" ; + pset:value 0.499 + ] , [ + lv2:symbol "polyphony" ; + pset:value 0.33 + ] , [ + lv2:symbol "fine_tuning" ; + pset:value 0.5 + ] , [ + lv2:symbol "random_detuning" ; + pset:value 0.0 + ] , [ + lv2:symbol "stretch_tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#Piano-dance-piano> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Piano> ; + rdfs:label "Dance Piano" ; + lv2:port [ + lv2:symbol "env_decay" ; + pset:value 0.399 + ] , [ + lv2:symbol "env_release" ; + pset:value 0.251 + ] , [ + lv2:symbol "hardness_offset" ; + pset:value 1.0 + ] , [ + lv2:symbol "vel_to_hardness" ; + pset:value 0.5 + ] , [ + lv2:symbol "muffling_filter" ; + pset:value 0.672 + ] , [ + lv2:symbol "vel_to_muffling" ; + pset:value 0.124 + ] , [ + lv2:symbol "vel_sensitivity" ; + pset:value 0.127 + ] , [ + lv2:symbol "stereo_width" ; + pset:value 0.249 + ] , [ + lv2:symbol "polyphony" ; + pset:value 0.33 + ] , [ + lv2:symbol "fine_tuning" ; + pset:value 0.5 + ] , [ + lv2:symbol "random_detuning" ; + pset:value 0.283 + ] , [ + lv2:symbol "stretch_tuning" ; + pset:value 0.667 + ] . + +<http://drobilla.net/plugins/mda/presets#Piano-concert-piano> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Piano> ; + rdfs:label "Concert Piano" ; + lv2:port [ + lv2:symbol "env_decay" ; + pset:value 0.648 + ] , [ + lv2:symbol "env_release" ; + pset:value 0.5 + ] , [ + lv2:symbol "hardness_offset" ; + pset:value 0.5 + ] , [ + lv2:symbol "vel_to_hardness" ; + pset:value 0.5 + ] , [ + lv2:symbol "muffling_filter" ; + pset:value 0.298 + ] , [ + lv2:symbol "vel_to_muffling" ; + pset:value 0.602 + ] , [ + lv2:symbol "vel_sensitivity" ; + pset:value 0.55 + ] , [ + lv2:symbol "stereo_width" ; + pset:value 0.85 + ] , [ + lv2:symbol "polyphony" ; + pset:value 0.356 + ] , [ + lv2:symbol "fine_tuning" ; + pset:value 0.5 + ] , [ + lv2:symbol "random_detuning" ; + pset:value 0.339 + ] , [ + lv2:symbol "stretch_tuning" ; + pset:value 0.66 + ] . + +<http://drobilla.net/plugins/mda/presets#Piano-dark-piano> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Piano> ; + rdfs:label "Dark Piano" ; + lv2:port [ + lv2:symbol "env_decay" ; + pset:value 0.5 + ] , [ + lv2:symbol "env_release" ; + pset:value 0.602 + ] , [ + lv2:symbol "hardness_offset" ; + pset:value 0.0 + ] , [ + lv2:symbol "vel_to_hardness" ; + pset:value 0.5 + ] , [ + lv2:symbol "muffling_filter" ; + pset:value 0.304 + ] , [ + lv2:symbol "vel_to_muffling" ; + pset:value 0.2 + ] , [ + lv2:symbol "vel_sensitivity" ; + pset:value 0.336 + ] , [ + lv2:symbol "stereo_width" ; + pset:value 0.651 + ] , [ + lv2:symbol "polyphony" ; + pset:value 0.33 + ] , [ + lv2:symbol "fine_tuning" ; + pset:value 0.5 + ] , [ + lv2:symbol "random_detuning" ; + pset:value 0.317 + ] , [ + lv2:symbol "stretch_tuning" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#Piano-school-piano> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Piano> ; + rdfs:label "School Piano" ; + lv2:port [ + lv2:symbol "env_decay" ; + pset:value 0.45 + ] , [ + lv2:symbol "env_release" ; + pset:value 0.598 + ] , [ + lv2:symbol "hardness_offset" ; + pset:value 0.626 + ] , [ + lv2:symbol "vel_to_hardness" ; + pset:value 0.5 + ] , [ + lv2:symbol "muffling_filter" ; + pset:value 0.603 + ] , [ + lv2:symbol "vel_to_muffling" ; + pset:value 0.5 + ] , [ + lv2:symbol "vel_sensitivity" ; + pset:value 0.174 + ] , [ + lv2:symbol "stereo_width" ; + pset:value 0.331 + ] , [ + lv2:symbol "polyphony" ; + pset:value 0.33 + ] , [ + lv2:symbol "fine_tuning" ; + pset:value 0.5 + ] , [ + lv2:symbol "random_detuning" ; + pset:value 0.421 + ] , [ + lv2:symbol "stretch_tuning" ; + pset:value 0.801 + ] . + +<http://drobilla.net/plugins/mda/presets#Piano-broken-piano> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Piano> ; + rdfs:label "Broken Piano" ; + lv2:port [ + lv2:symbol "env_decay" ; + pset:value 0.05 + ] , [ + lv2:symbol "env_release" ; + pset:value 0.957 + ] , [ + lv2:symbol "hardness_offset" ; + pset:value 0.5 + ] , [ + lv2:symbol "vel_to_hardness" ; + pset:value 0.5 + ] , [ + lv2:symbol "muffling_filter" ; + pset:value 0.299 + ] , [ + lv2:symbol "vel_to_muffling" ; + pset:value 1.0 + ] , [ + lv2:symbol "vel_sensitivity" ; + pset:value 0.0 + ] , [ + lv2:symbol "stereo_width" ; + pset:value 0.5 + ] , [ + lv2:symbol "polyphony" ; + pset:value 0.33 + ] , [ + lv2:symbol "fine_tuning" ; + pset:value 0.45 + ] , [ + lv2:symbol "random_detuning" ; + pset:value 0.718 + ] , [ + lv2:symbol "stretch_tuning" ; + pset:value 0.0 + ] . diff --git a/mda.lv2/Piano.ttl b/mda.lv2/Piano.ttl index 0c2d122..9fee0d4 100644 --- a/mda.lv2/Piano.ttl +++ b/mda.lv2/Piano.ttl @@ -1,3 +1,4 @@ +@prefix atom: <http://lv2plug.in/ns/ext/atom#> . @prefix doap: <http://usefulinc.com/ns/doap#> . @prefix lv2: <http://lv2plug.in/ns/lv2core#> . @prefix mda: <http://drobilla.net/plugins/mda/> . @@ -19,6 +20,7 @@ mda:Piano doap:name "MDA Piano" ; doap:license <http://usefulinc.com/doap/licenses/gpl> ; lv2:optionalFeature lv2:hardRTCapable ; + lv2:requiredFeature <http://lv2plug.in/ns/ext/urid#map> ; pg:mainInput mda:mainIn ; pg:mainOutput mda:mainOut ; lv2:port [ @@ -26,7 +28,7 @@ mda:Piano lv2:ControlPort ; lv2:index 0 ; lv2:name "Envelope Decay" ; - lv2:symbol "envelope_decay" ; + lv2:symbol "env_decay" ; lv2:default 0.5 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; @@ -37,7 +39,7 @@ mda:Piano lv2:ControlPort ; lv2:index 1 ; lv2:name "Envelope Release" ; - lv2:symbol "envelope_release" ; + lv2:symbol "env_release" ; lv2:default 0.5 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; @@ -58,7 +60,7 @@ mda:Piano lv2:ControlPort ; lv2:index 3 ; lv2:name "Velocity to Hardness" ; - lv2:symbol "velocity_to_hardness" ; + lv2:symbol "vel_to_hardness" ; lv2:default 0.5 ; lv2:minimum 0.0 ; lv2:maximum 1.0 @@ -76,7 +78,7 @@ mda:Piano lv2:ControlPort ; lv2:index 5 ; lv2:name "Velocity to Muffling" ; - lv2:symbol "velocity_to_muffling" ; + lv2:symbol "vel_to_muffling" ; lv2:default 0.251 ; lv2:minimum 0.0 ; lv2:maximum 1.0 @@ -85,7 +87,7 @@ mda:Piano lv2:ControlPort ; lv2:index 6 ; lv2:name "Velocity Sensitivity" ; - lv2:symbol "velocity_sensitivity" ; + lv2:symbol "vel_sensitivity" ; lv2:default 0.376 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; @@ -152,4 +154,12 @@ mda:Piano lv2:name "Right Out" ; lv2:designation pg:right ; pg:group mda:mainOut + ] , [ + a lv2:InputPort , + atom:AtomPort ; + atom:bufferType atom:Sequence ; + atom:supports <http://lv2plug.in/ns/ext/midi#MidiEvent> ; + lv2:index 14 ; + lv2:symbol "event_in" ; + lv2:name "Event In" ] . diff --git a/mda.lv2/RePsycho.ttl b/mda.lv2/RePsycho.ttl index 8ea8994..4ef5860 100644 --- a/mda.lv2/RePsycho.ttl +++ b/mda.lv2/RePsycho.ttl @@ -2,6 +2,7 @@ @prefix lv2: <http://lv2plug.in/ns/lv2core#> . @prefix mda: <http://drobilla.net/plugins/mda/> . @prefix pg: <http://lv2plug.in/ns/ext/port-groups#> . +@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . @prefix units: <http://lv2plug.in/ns/extensions/units#> . @@ -27,7 +28,7 @@ Alternative uses include a triggered flanger or sub-octave doubler (both with mi lv2:index 0 ; lv2:name "Tune" ; lv2:symbol "tune" ; - lv2:default 1 ; + lv2:default 1.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; units:unit units:semitone12TET ; @@ -38,7 +39,7 @@ Alternative uses include a triggered flanger or sub-octave doubler (both with mi lv2:index 1 ; lv2:name "Fine" ; lv2:symbol "fine" ; - lv2:default 1 ; + lv2:default 1.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; units:unit units:cent ; @@ -79,7 +80,7 @@ Alternative uses include a triggered flanger or sub-octave doubler (both with mi lv2:index 5 ; lv2:name "Mix" ; lv2:symbol "mix" ; - lv2:default 1 ; + lv2:default 1.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "Mix original signal with output" @@ -89,9 +90,17 @@ Alternative uses include a triggered flanger or sub-octave doubler (both with mi lv2:index 6 ; lv2:name "Quality" ; lv2:symbol "quality" ; - lv2:default 0.4 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; + lv2:scalePoint [ + rdfs:label "Low" ; + rdf:value 0.0 + ] , [ + rdfs:label "High" ; + rdf:value 1.0 + ] ; rdfs:comment "The High setting uses smoother pitch-shifting and allows processing of stereo signals" ] , [ a lv2:InputPort , diff --git a/mda.lv2/RezFilter.ttl b/mda.lv2/RezFilter.ttl index 16456fa..f5e9546 100644 --- a/mda.lv2/RezFilter.ttl +++ b/mda.lv2/RezFilter.ttl @@ -76,7 +76,7 @@ mda:RezFilter lv2:index 4 ; lv2:name "Attack" ; lv2:symbol "attack" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; lv2:designation param:attack ; @@ -118,7 +118,7 @@ mda:RezFilter lv2:index 8 ; lv2:name "Trigger" ; lv2:symbol "trigger" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "Envelope trigger level (normally set to minimum to acts as a free-running envelope follower)" diff --git a/mda.lv2/RingMod.ttl b/mda.lv2/RingMod.ttl index af9e8a9..b5167ab 100644 --- a/mda.lv2/RingMod.ttl +++ b/mda.lv2/RingMod.ttl @@ -34,7 +34,7 @@ Can be used as a high-frequency enhancer for drum sounds (when mixed with the or lv2:index 1 ; lv2:name "Fine" ; lv2:symbol "fine" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "Oscillator frequency fine tune" @@ -44,7 +44,7 @@ Can be used as a high-frequency enhancer for drum sounds (when mixed with the or lv2:index 2 ; lv2:name "Feedback" ; lv2:symbol "feedback" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment """Amount of feedback for "harsh" sound""" diff --git a/mda.lv2/Splitter-presets.ttl b/mda.lv2/Splitter-presets.ttl new file mode 100644 index 0000000..56477a1 --- /dev/null +++ b/mda.lv2/Splitter-presets.ttl @@ -0,0 +1,84 @@ +@prefix lv2: <http://lv2plug.in/ns/lv2core#> . +@prefix pset: <http://lv2plug.in/ns/ext/presets#> . +@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . + +<http://drobilla.net/plugins/mda/presets#Splitter-frequency-level-splitter> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Splitter> ; + rdfs:label "Frequency/Level Splitter" ; + lv2:port [ + lv2:symbol "mode" ; + pset:value 0.0 + ] , [ + lv2:symbol "freq" ; + pset:value 0.5 + ] , [ + lv2:symbol "freq_sw" ; + pset:value 0.25 + ] , [ + lv2:symbol "level" ; + pset:value 0.5 + ] , [ + lv2:symbol "level_sw" ; + pset:value 0.5 + ] , [ + lv2:symbol "envelope" ; + pset:value 0.5 + ] , [ + lv2:symbol "output" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#Splitter-pass-peaks-only> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Splitter> ; + rdfs:label "Pass Peaks Only" ; + lv2:port [ + lv2:symbol "mode" ; + pset:value 0.0 + ] , [ + lv2:symbol "freq" ; + pset:value 0.5 + ] , [ + lv2:symbol "freq_sw" ; + pset:value 0.5 + ] , [ + lv2:symbol "level" ; + pset:value 0.5 + ] , [ + lv2:symbol "level_sw" ; + pset:value 0.0 + ] , [ + lv2:symbol "envelope" ; + pset:value 0.5 + ] , [ + lv2:symbol "output" ; + pset:value 0.5 + ] . + +<http://drobilla.net/plugins/mda/presets#Splitter-stereo-crossover> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Splitter> ; + rdfs:label "Stereo Crossover" ; + lv2:port [ + lv2:symbol "mode" ; + pset:value 0.666667 + ] , [ + lv2:symbol "freq" ; + pset:value 0.5 + ] , [ + lv2:symbol "freq_sw" ; + pset:value 0.25 + ] , [ + lv2:symbol "level" ; + pset:value 0.5 + ] , [ + lv2:symbol "level_sw" ; + pset:value 0.5 + ] , [ + lv2:symbol "envelope" ; + pset:value 0.5 + ] , [ + lv2:symbol "output" ; + pset:value 0.5 + ] . diff --git a/mda.lv2/Splitter.ttl b/mda.lv2/Splitter.ttl index 228e674..9419d42 100644 --- a/mda.lv2/Splitter.ttl +++ b/mda.lv2/Splitter.ttl @@ -23,7 +23,7 @@ mda:Splitter lv2:index 0 ; lv2:name "Mode" ; lv2:symbol "mode" ; - lv2:default 0.1 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; lv2:portProperty lv2:enumeration ; @@ -32,15 +32,15 @@ mda:Splitter rdfs:label "Normal" ; rdfs:comment "Output as selected with Frequency and Level controls" ] , [ - rdf:value 0.25 ; + rdf:value 0.33333333 ; rdfs:label "Inverse" ; rdfs:comment "Inverse of shown selection (e.g. everything except low frequencies at high level)" ] , [ - rdf:value 0.5 ; + rdf:value 0.66666666 ; rdfs:label "Normal Inverse" ; rdfs:comment "Left / Right split of above" ] , [ - rdf:value 0.75 ; + rdf:value 1.0 ; rdfs:label "Inverse Normal" ; rdfs:comment "Right / Left split of above" ] @@ -60,7 +60,7 @@ mda:Splitter lv2:index 2 ; lv2:name "Freq SW" ; lv2:symbol "freq_sw" ; - lv2:default 0.25 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; lv2:portProperty lv2:enumeration ; diff --git a/mda.lv2/Stereo.ttl b/mda.lv2/Stereo.ttl index 650f4ad..badc386 100644 --- a/mda.lv2/Stereo.ttl +++ b/mda.lv2/Stereo.ttl @@ -47,7 +47,7 @@ mda:Stereo lv2:index 3 ; lv2:name "Mod" ; lv2:symbol "mod" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ] , [ diff --git a/mda.lv2/SubSynth.ttl b/mda.lv2/SubSynth.ttl index d29915c..329a8dc 100644 --- a/mda.lv2/SubSynth.ttl +++ b/mda.lv2/SubSynth.ttl @@ -24,7 +24,7 @@ Be aware that you may be adding low frequency content outside the range of your lv2:index 0 ; lv2:name "Type" ; lv2:symbol "type" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; lv2:portProperty lv2:enumeration ; @@ -71,7 +71,7 @@ Be aware that you may be adding low frequency content outside the range of your lv2:index 3 ; lv2:name "Dry Mix" ; lv2:symbol "dry_mix" ; - lv2:default 1 ; + lv2:default 1.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "Reduces the level of the original signal" diff --git a/mda.lv2/TalkBox.ttl b/mda.lv2/TalkBox.ttl index 02106f3..45f1a48 100644 --- a/mda.lv2/TalkBox.ttl +++ b/mda.lv2/TalkBox.ttl @@ -29,7 +29,7 @@ mda:TalkBox lv2:index 1 ; lv2:name "Dry" ; lv2:symbol "dry" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ] , [ @@ -38,7 +38,7 @@ mda:TalkBox lv2:index 2 ; lv2:name "Carrier" ; lv2:symbol "carrier" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ] , [ @@ -47,7 +47,7 @@ mda:TalkBox lv2:index 3 ; lv2:name "Quality" ; lv2:symbol "quality" ; - lv2:default 1 ; + lv2:default 1.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ] , [ diff --git a/mda.lv2/TestTone.ttl b/mda.lv2/TestTone.ttl index 32a6887..b0a5e37 100644 --- a/mda.lv2/TestTone.ttl +++ b/mda.lv2/TestTone.ttl @@ -22,7 +22,7 @@ mda:TestTone lv2:index 0 ; lv2:name "Mode" ; lv2:symbol "mode" ; - lv2:default 0.47 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; lv2:portProperty lv2:enumeration ; @@ -115,7 +115,7 @@ mda:TestTone lv2:index 6 ; lv2:name "Thru" ; lv2:symbol "thru" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "Allow the input signal to pass through the plug-in" @@ -125,7 +125,7 @@ mda:TestTone lv2:index 7 ; lv2:name "Zero dB" ; lv2:symbol "zero_db" ; - lv2:default 1 ; + lv2:default 1.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "Calibrate output so indicated level is relative to, for example -0.01 dB FS or -18 dB FS" diff --git a/mda.lv2/ThruZero-presets.ttl b/mda.lv2/ThruZero-presets.ttl new file mode 100644 index 0000000..ec0d85f --- /dev/null +++ b/mda.lv2/ThruZero-presets.ttl @@ -0,0 +1,87 @@ +@prefix lv2: <http://lv2plug.in/ns/lv2core#> . +@prefix pset: <http://lv2plug.in/ns/ext/presets#> . +@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . + +<http://drobilla.net/plugins/mda/presets#ThruZero-thru-zero-flanger> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/ThruZero> ; + rdfs:label "Thru-Zero Flanger" ; + lv2:port [ + lv2:symbol "rate" ; + pset:value 0.3 + ] , [ + lv2:symbol "depth" ; + pset:value 0.43 + ] , [ + lv2:symbol "mix" ; + pset:value 0.47 + ] , [ + lv2:symbol "feedback" ; + pset:value 0.3 + ] , [ + lv2:symbol "depth_mod" ; + pset:value 1.0 + ] . + +<http://drobilla.net/plugins/mda/presets#ThruZero-phase-canceller> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/ThruZero> ; + rdfs:label "Phase Canceller" ; + lv2:port [ + lv2:symbol "rate" ; + pset:value 0.5 + ] , [ + lv2:symbol "depth" ; + pset:value 0.2 + ] , [ + lv2:symbol "mix" ; + pset:value 0.47 + ] , [ + lv2:symbol "feedback" ; + pset:value 0.3 + ] , [ + lv2:symbol "depth_mod" ; + pset:value 1.0 + ] . + +<http://drobilla.net/plugins/mda/presets#ThruZero-chorus-doubler> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/ThruZero> ; + rdfs:label "Chorus Doubler" ; + lv2:port [ + lv2:symbol "rate" ; + pset:value 0.6 + ] , [ + lv2:symbol "depth" ; + pset:value 0.6 + ] , [ + lv2:symbol "mix" ; + pset:value 0.35 + ] , [ + lv2:symbol "feedback" ; + pset:value 0.3 + ] , [ + lv2:symbol "depth_mod" ; + pset:value 0.7 + ] . + +<http://drobilla.net/plugins/mda/presets#ThruZero-mad-modulator> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/ThruZero> ; + rdfs:label "Mad Modulator" ; + lv2:port [ + lv2:symbol "rate" ; + pset:value 0.75 + ] , [ + lv2:symbol "depth" ; + pset:value 1.0 + ] , [ + lv2:symbol "mix" ; + pset:value 0.5 + ] , [ + lv2:symbol "feedback" ; + pset:value 0.75 + ] , [ + lv2:symbol "depth_mod" ; + pset:value 1.0 + ] . diff --git a/mda.lv2/ThruZero.ttl b/mda.lv2/ThruZero.ttl index 12244fb..914d0a1 100644 --- a/mda.lv2/ThruZero.ttl +++ b/mda.lv2/ThruZero.ttl @@ -64,7 +64,7 @@ This plug simulates tape-flanging, where two copies of a signal cancel out compl lv2:index 4 ; lv2:name "Depth Mod" ; lv2:symbol "depth_mod" ; - lv2:default 1 ; + lv2:default 1.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "Modulation depth - set to less than 100% to limit build up of low fequencies with feedback" diff --git a/mda.lv2/Tracker.ttl b/mda.lv2/Tracker.ttl index 75fe128..c9b416e 100644 --- a/mda.lv2/Tracker.ttl +++ b/mda.lv2/Tracker.ttl @@ -25,7 +25,7 @@ This plug can be used with white or pink noise inputs to generate random pitch s lv2:index 0 ; lv2:name "Mode" ; lv2:symbol "mode" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; lv2:portProperty lv2:enumeration ; @@ -51,7 +51,7 @@ This plug can be used with white or pink noise inputs to generate random pitch s lv2:index 1 ; lv2:name "Dynamics" ; lv2:symbol "dynamics" ; - lv2:default 1 ; + lv2:default 1.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "Apply dynamics of input signal to generated output" @@ -61,7 +61,7 @@ This plug can be used with white or pink noise inputs to generate random pitch s lv2:index 2 ; lv2:name "Mix" ; lv2:symbol "mix" ; - lv2:default 1 ; + lv2:default 1.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; rdfs:comment "Wet/dry mix" diff --git a/mda.lv2/VocInput.ttl b/mda.lv2/VocInput.ttl index 1286497..1529413 100644 --- a/mda.lv2/VocInput.ttl +++ b/mda.lv2/VocInput.ttl @@ -23,7 +23,7 @@ mda:VocInput lv2:index 0 ; lv2:name "Tracking" ; lv2:symbol "tracking" ; - lv2:default 0.25 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; lv2:portProperty lv2:enumeration ; diff --git a/mda.lv2/Vocoder-presets.ttl b/mda.lv2/Vocoder-presets.ttl new file mode 100644 index 0000000..2d91c3e --- /dev/null +++ b/mda.lv2/Vocoder-presets.ttl @@ -0,0 +1,153 @@ +@prefix lv2: <http://lv2plug.in/ns/lv2core#> . +@prefix pset: <http://lv2plug.in/ns/ext/presets#> . +@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . + +<http://drobilla.net/plugins/mda/presets#Vocoder-default> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Vocoder> ; + rdfs:label "Default" ; + lv2:port [ + lv2:symbol "mod_in" ; + pset:value 0.0 + ] , [ + lv2:symbol "output" ; + pset:value 0.5 + ] , [ + lv2:symbol "hi_thru" ; + pset:value 0.4 + ] , [ + lv2:symbol "hi_band" ; + pset:value 0.4 + ] , [ + lv2:symbol "envelope" ; + pset:value 0.16 + ] , [ + lv2:symbol "filter_q" ; + pset:value 0.55 + ] , [ + lv2:symbol "mid_freq" ; + pset:value 0.6667 + ] , [ + lv2:symbol "quality" ; + pset:value 0.0 + ] . + +<http://drobilla.net/plugins/mda/presets#Vocoder-16-band-vocoder> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Vocoder> ; + rdfs:label "16 Band Vocoder" ; + lv2:port [ + lv2:symbol "mod_in" ; + pset:value 0.0 + ] , [ + lv2:symbol "output" ; + pset:value 0.5 + ] , [ + lv2:symbol "hi_thru" ; + pset:value 0.4 + ] , [ + lv2:symbol "hi_band" ; + pset:value 0.4 + ] , [ + lv2:symbol "envelope" ; + pset:value 0.16 + ] , [ + lv2:symbol "filter_q" ; + pset:value 0.55 + ] , [ + lv2:symbol "mid_freq" ; + pset:value 0.6667 + ] , [ + lv2:symbol "quality" ; + pset:value 1.0 + ] . + +<http://drobilla.net/plugins/mda/presets#Vocoder-old-vocoder> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Vocoder> ; + rdfs:label "Old Vocoder" ; + lv2:port [ + lv2:symbol "mod_in" ; + pset:value 0.0 + ] , [ + lv2:symbol "output" ; + pset:value 0.5 + ] , [ + lv2:symbol "hi_thru" ; + pset:value 0.0 + ] , [ + lv2:symbol "hi_band" ; + pset:value 0.0 + ] , [ + lv2:symbol "envelope" ; + pset:value 0.16 + ] , [ + lv2:symbol "filter_q" ; + pset:value 0.55 + ] , [ + lv2:symbol "mid_freq" ; + pset:value 0.5 + ] , [ + lv2:symbol "quality" ; + pset:value 0.0 + ] . + +<http://drobilla.net/plugins/mda/presets#Vocoder-choral-vocoder> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Vocoder> ; + rdfs:label "Choral Vocoder" ; + lv2:port [ + lv2:symbol "mod_in" ; + pset:value 0.0 + ] , [ + lv2:symbol "output" ; + pset:value 0.5 + ] , [ + lv2:symbol "hi_thru" ; + pset:value 0.4 + ] , [ + lv2:symbol "hi_band" ; + pset:value 0.0 + ] , [ + lv2:symbol "envelope" ; + pset:value 0.16 + ] , [ + lv2:symbol "filter_q" ; + pset:value 0.7 + ] , [ + lv2:symbol "mid_freq" ; + pset:value 0.5 + ] , [ + lv2:symbol "quality" ; + pset:value 0.0 + ] . + +<http://drobilla.net/plugins/mda/presets#Vocoder-pad-vocoder> + a pset:Preset ; + lv2:appliesTo <http://drobilla.net/plugins/mda/Vocoder> ; + rdfs:label "Pad Vocoder" ; + lv2:port [ + lv2:symbol "mod_in" ; + pset:value 0.0 + ] , [ + lv2:symbol "output" ; + pset:value 0.5 + ] , [ + lv2:symbol "hi_thru" ; + pset:value 0.4 + ] , [ + lv2:symbol "hi_band" ; + pset:value 0.4 + ] , [ + lv2:symbol "envelope" ; + pset:value 0.78 + ] , [ + lv2:symbol "filter_q" ; + pset:value 0.55 + ] , [ + lv2:symbol "mid_freq" ; + pset:value 0.3 + ] , [ + lv2:symbol "quality" ; + pset:value 0.0 + ] . diff --git a/mda.lv2/Vocoder.ttl b/mda.lv2/Vocoder.ttl index 2c4ad32..b1ec290 100644 --- a/mda.lv2/Vocoder.ttl +++ b/mda.lv2/Vocoder.ttl @@ -25,7 +25,7 @@ Note that both carrier and modulator signals are taken from one input channel, w lv2:index 0 ; lv2:name "Mod In" ; lv2:symbol "mod_in" ; - lv2:default 0.33 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; lv2:portProperty lv2:enumeration ; @@ -107,7 +107,8 @@ Note that both carrier and modulator signals are taken from one input channel, w lv2:default 0.33 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; - rdfs:comment "Select 16-band operation, or 8-band for thinner sound and reduced processor usage" + rdfs:comment "Select 16-band operation, or 8-band for thinner sound and reduced processor usage" ; + lv2:portProperty lv2:toggled ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mda.lv2/manifest.ttl.in b/mda.lv2/manifest.ttl.in index a89fba5..00ef53c 100644 --- a/mda.lv2/manifest.ttl.in +++ b/mda.lv2/manifest.ttl.in @@ -2,7 +2,9 @@ @prefix foaf: <http://xmlns.com/foaf/0.1/> . @prefix lv2: <http://lv2plug.in/ns/lv2core#> . @prefix mda: <http://drobilla.net/plugins/mda/> . +@prefix mdapset: <http://drobilla.net/plugins/mda/presets#> . @prefix pg: <http://lv2plug.in/ns/ext/port-groups#> . +@prefix pset: <http://lv2plug.in/ns/ext/presets#> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . <http://drobilla.net/drobilla#me> @@ -16,7 +18,13 @@ mda: lv2:symbol "mda" ; doap:name "MDA LV2" ; doap:shortdesc "An LV2 port of the MDA plugins." ; - doap:maintainer <http://drobilla.net/drobilla#me> . + doap:homepage <http://drobilla.net/software/mda-lv2> ; + doap:maintainer <http://drobilla.net/drobilla#me> ; + doap:developer [ + a foaf:Person ; + foaf:name "Paul Kellett" ; + foaf:mbox <paul@mda-vst.com> + ] . mda:mainIn a pg:StereoGroup , @@ -210,3 +218,578 @@ mda:Vocoder a lv2:Plugin ; rdfs:seeAlso <Vocoder.ttl> ; lv2:binary <Vocoder@LIB_EXT@> . + +mdapset:Detune-stereo-detune + a pset:Preset ; + lv2:appliesTo mda:Detune ; + rdfs:seeAlso <Detune-presets.ttl> . + +mdapset:Detune-symphonic + a pset:Preset ; + lv2:appliesTo mda:Detune ; + rdfs:seeAlso <Detune-presets.ttl> . + +mdapset:Detune-out-of-tune + a pset:Preset ; + lv2:appliesTo mda:Detune ; + rdfs:seeAlso <Detune-presets.ttl> . + +mdapset:DX10-bright-e-piano + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-jazz-e-piano + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-e-piano-pad + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-fuzzy-e-piano + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-soft-chimes + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-harpsichord + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-funk-clav + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-sitar + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-chiff-organ + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-tinkle + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-space-pad + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-koto + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-harp + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-jazz-guitar + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-steel-drum + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-log-drum + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-trumpet + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-horn + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-reed-1 + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-reed-2 + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-violin + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-chunky-bass + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-e-bass + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-clunk-bass + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-thick-bass + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-sine-bass + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-square-bass + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-upright-bass-1 + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-upright-bass-2 + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-harmonics + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-scratch + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:DX10-syn-tom + a pset:Preset ; + lv2:appliesTo mda:DX10 ; + rdfs:seeAlso <DX10-presets.ttl> . + +mdapset:EPiano-default + a pset:Preset ; + lv2:appliesTo mda:EPiano ; + rdfs:seeAlso <EPiano-presets.ttl> . + +mdapset:EPiano-bright + a pset:Preset ; + lv2:appliesTo mda:EPiano ; + rdfs:seeAlso <EPiano-presets.ttl> . + +mdapset:EPiano-mellow + a pset:Preset ; + lv2:appliesTo mda:EPiano ; + rdfs:seeAlso <EPiano-presets.ttl> . + +mdapset:EPiano-autopan + a pset:Preset ; + lv2:appliesTo mda:EPiano ; + rdfs:seeAlso <EPiano-presets.ttl> . + +mdapset:EPiano-tremolo + a pset:Preset ; + lv2:appliesTo mda:EPiano ; + rdfs:seeAlso <EPiano-presets.ttl> . + +mdapset:JX10-5th-sweep-pad + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-echo-pad + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-space-chimes + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-solid-backing + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-velocity-backing + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-rubber-backing-zf- + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-808-state-lead + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-mono-glide + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-detuned-techno-lead + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-hard-lead + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-bubble + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-monosynth + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-moogcury-lite + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-gangsta-whine + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-higher-synth-zf- + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-303-saw-bass + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-303-square-bass + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-analog-bass + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-analog-bass-2 + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-low-pulses + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-sine-infra-bass + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-wobble-bass + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-squelch-bass + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-rubber-bass-zf- + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-soft-pick-bass + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-fretless-bass + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-whistler + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-very-soft-pad + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-pizzicato + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-synth-strings + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-synth-strings-2 + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-leslie-organ + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-click-organ + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-hard-organ + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-bass-clarinet + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-trumpet + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-soft-horn + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-brass-section + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-synth-brass + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-detuned-syn-brass-zf- + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-power-pwm + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-water-velocity + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-ghost + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-soft-e-piano + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-thumb-piano + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-steel-drums-zf- + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-car-horn + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-helicopter + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-arctic-wind + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-thip + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-synth-tom + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:JX10-squelchy-frog + a pset:Preset ; + lv2:appliesTo mda:JX10 ; + rdfs:seeAlso <JX10-presets.ttl> . + +mdapset:Leslie-leslie-simulator + a pset:Preset ; + lv2:appliesTo mda:Leslie ; + rdfs:seeAlso <Leslie-presets.ttl> . + +mdapset:Leslie-slow + a pset:Preset ; + lv2:appliesTo mda:Leslie ; + rdfs:seeAlso <Leslie-presets.ttl> . + +mdapset:Leslie-fast + a pset:Preset ; + lv2:appliesTo mda:Leslie ; + rdfs:seeAlso <Leslie-presets.ttl> . + +mdapset:Piano-mda-piano + a pset:Preset ; + lv2:appliesTo mda:Piano ; + rdfs:seeAlso <Piano-presets.ttl> . + +mdapset:Piano-plain-piano + a pset:Preset ; + lv2:appliesTo mda:Piano ; + rdfs:seeAlso <Piano-presets.ttl> . + +mdapset:Piano-compressed-piano + a pset:Preset ; + lv2:appliesTo mda:Piano ; + rdfs:seeAlso <Piano-presets.ttl> . + +mdapset:Piano-dance-piano + a pset:Preset ; + lv2:appliesTo mda:Piano ; + rdfs:seeAlso <Piano-presets.ttl> . + +mdapset:Piano-concert-piano + a pset:Preset ; + lv2:appliesTo mda:Piano ; + rdfs:seeAlso <Piano-presets.ttl> . + +mdapset:Piano-dark-piano + a pset:Preset ; + lv2:appliesTo mda:Piano ; + rdfs:seeAlso <Piano-presets.ttl> . + +mdapset:Piano-school-piano + a pset:Preset ; + lv2:appliesTo mda:Piano ; + rdfs:seeAlso <Piano-presets.ttl> . + +mdapset:Piano-broken-piano + a pset:Preset ; + lv2:appliesTo mda:Piano ; + rdfs:seeAlso <Piano-presets.ttl> . + +mdapset:Splitter-frequency-level-splitter + a pset:Preset ; + lv2:appliesTo mda:Splitter ; + rdfs:seeAlso <Splitter-presets.ttl> . + +mdapset:Splitter-pass-peaks-only + a pset:Preset ; + lv2:appliesTo mda:Splitter ; + rdfs:seeAlso <Splitter-presets.ttl> . + +mdapset:Splitter-stereo-crossover + a pset:Preset ; + lv2:appliesTo mda:Splitter ; + rdfs:seeAlso <Splitter-presets.ttl> . + +mdapset:ThruZero-thru-zero-flanger + a pset:Preset ; + lv2:appliesTo mda:ThruZero ; + rdfs:seeAlso <ThruZero-presets.ttl> . + +mdapset:ThruZero-phase-canceller + a pset:Preset ; + lv2:appliesTo mda:ThruZero ; + rdfs:seeAlso <ThruZero-presets.ttl> . + +mdapset:ThruZero-chorus-doubler + a pset:Preset ; + lv2:appliesTo mda:ThruZero ; + rdfs:seeAlso <ThruZero-presets.ttl> . + +mdapset:ThruZero-mad-modulator + a pset:Preset ; + lv2:appliesTo mda:ThruZero ; + rdfs:seeAlso <ThruZero-presets.ttl> . + +mdapset:Vocoder-vocoder + a pset:Preset ; + lv2:appliesTo mda:Vocoder ; + rdfs:seeAlso <Vocoder-presets.ttl> . + +mdapset:Vocoder-16-band-vocoder + a pset:Preset ; + lv2:appliesTo mda:Vocoder ; + rdfs:seeAlso <Vocoder-presets.ttl> . + +mdapset:Vocoder-old-vocoder + a pset:Preset ; + lv2:appliesTo mda:Vocoder ; + rdfs:seeAlso <Vocoder-presets.ttl> . + +mdapset:Vocoder-choral-vocoder + a pset:Preset ; + lv2:appliesTo mda:Vocoder ; + rdfs:seeAlso <Vocoder-presets.ttl> . + +mdapset:Vocoder-pad-vocoder + a pset:Preset ; + lv2:appliesTo mda:Vocoder ; + rdfs:seeAlso <Vocoder-presets.ttl> . diff --git a/src/mdaBandisto.cpp b/src/mdaBandisto.cpp index 64d893c..50d5a2a 100644 --- a/src/mdaBandisto.cpp +++ b/src/mdaBandisto.cpp @@ -70,7 +70,7 @@ mdaBandisto::mdaBandisto(audioMasterCallback audioMaster) : AudioEffectX(audioMa trim2 = (float)(trim2 * pow(10.0, 2.0 * fParam8 - 1.0)); trim3 = (float)(trim3 * pow(10.0, 2.0 * fParam9 - 1.0)); - switch(int(fParam1*5.0)) + switch(int(fParam1*3.9)) { case 0: trim2=0.0; trim3=0.0; slev=0.0; break; case 1: trim1=0.0; trim3=0.0; slev=0.0; break; @@ -148,7 +148,7 @@ void mdaBandisto::setParameter(int32_t index, float value) trim2 = (float)(trim2 * pow(10.0, 2.0 * fParam8 - 1.0)); trim3 = (float)(trim3 * pow(10.0, 2.0 * fParam9 - 1.0)); - switch(int(fParam1*5.0)) + switch(int(fParam1*3.9)) { case 0: trim2=0.0; trim3=0.0; slev=0.0; break; case 1: trim1=0.0; trim3=0.0; slev=0.0; break; @@ -200,7 +200,7 @@ void mdaBandisto::getParameterDisplay(int32_t index, char *text) { switch(index) { - case 0: switch(int(fParam1*5.0)) + case 0: switch(int(fParam1*3.9)) { case 0: strcpy(text, "Low"); break; case 1: strcpy(text, "Mid"); break; case 2: strcpy(text, "High"); break; diff --git a/src/mdaBeatBox.cpp b/src/mdaBeatBox.cpp index 747f5b0..96d89cd 100644 --- a/src/mdaBeatBox.cpp +++ b/src/mdaBeatBox.cpp @@ -46,6 +46,16 @@ mdaBeatBox::mdaBeatBox(audioMasterCallback audioMaster) : AudioEffectX(audioMast sbuflen = 60000; if(getSampleRate()>49000) { hbuflen*=2; kbuflen*=2; sbuflen*=2; } + hbufpos = 0; + kbufpos = 0; + sbufpos = 0; + hfil = 0; + sb1 = 0; + sb2 = 0; + ksb1 = 0; + ksb2 = 0; + wwx = 0; + hbuf = new float[hbuflen]; sbuf = new float[sbuflen]; sbuf2 = new float[sbuflen]; kbuf = new float[kbuflen]; diff --git a/src/mdaBeatBox.h b/src/mdaBeatBox.h index f14426a..c984d5a 100644 --- a/src/mdaBeatBox.h +++ b/src/mdaBeatBox.h @@ -58,7 +58,7 @@ protected: float fParam10; float fParam11; float fParam12; - float hthr, hfil, sthr, kthr, kfil1, kfil2, mix; + float hthr, hfil, sthr, kthr, mix; float klev, hlev, slev; float ww, wwx, sb1, sb2, sf1, sf2, sf3; float kww, kwwx, ksb1, ksb2, ksf1, ksf2; diff --git a/src/mdaDX10.cpp b/src/mdaDX10.cpp index bc4c8d1..8e8a5ca 100644 --- a/src/mdaDX10.cpp +++ b/src/mdaDX10.cpp @@ -18,6 +18,8 @@ #include "mdaDX10.h" +#include "lv2/lv2plug.in/ns/ext/atom/util.h" + #include <stdio.h> #include <stdlib.h> //rand() #include <math.h> @@ -90,7 +92,6 @@ mdaDX10::mdaDX10(audioMasterCallback audioMaster) : AudioEffectX(audioMaster, NP voice[i].mod0 = voice[i].mod1 = voice[i].dmod = 0.0f; voice[i].cdec = 0.99f; //all notes off } - notes[0] = EVENTS_DONE; lfo0 = dlfo = modwhl = 0.0f; lfo1 = pbend = 1.0f; volume = 0.0035f; @@ -240,7 +241,7 @@ bool mdaDX10::copyProgram(int32_t destination) } -int32_t mdaDX10::canDo(char* text) +int32_t mdaDX10::canDo(const char* text) { if(strcmp(text, "receiveLvzEvents") == 0) return 1; if(strcmp(text, "receiveLvzMidiEvent") == 0) return 1; @@ -304,101 +305,22 @@ void mdaDX10::getParameterLabel(int32_t index, char *label) } } - -void mdaDX10::process(float **inputs, float **outputs, int32_t sampleFrames) -{ - float* out1 = outputs[0]; - float* out2 = outputs[1]; - int32_t event=0, frame=0, frames, v; - float o, x, e, mw=MW, w=rich, m=modmix; - int32_t k=K; - - if(activevoices>0 || notes[event]<sampleFrames) //detect & bypass completely empty blocks - { - while(frame<sampleFrames) - { - frames = notes[event++]; - if(frames>sampleFrames) frames = sampleFrames; - frames -= frame; - frame += frames; - - while(--frames>=0) //would be faster with voice loop outside frame loop! - { //but then each voice would need it's own LFO... - VOICE *V = voice; - o = 0.0f; - - if(--k<0) - { - lfo0 += dlfo * lfo1; //sine LFO - lfo1 -= dlfo * lfo0; - mw = lfo1 * (modwhl + vibrato); - k=100; - } - - for(v=0; v<NVOICES; v++) //for each voice - { - e = V->env; - if(e > SILENCE) //**** this is the synth **** - { - V->env = e * V->cdec; //decay & release - V->cenv += V->catt * (e - V->cenv); //attack - - x = V->dmod * V->mod0 - V->mod1; //could add more modulator blocks like - V->mod1 = V->mod0; //this for a wider range of FM sounds - V->mod0 = x; - V->menv += V->mdec * (V->mlev - V->menv); - - x = V->car + V->dcar + x * V->menv + mw; //carrier phase - while(x > 1.0f) x -= 2.0f; //wrap phase - while(x < -1.0f) x += 2.0f; - V->car = x; - o += V->cenv * (m * V->mod1 + (x + x * x * x * (w * x * x - 1.0f - w))); - } //amp env //mod thru-mix //5th-order sine approximation - V++; - } - *out1++ += o; - *out2++ += o; - } - - if(frame<sampleFrames) //next note on/off - { - int32_t note = notes[event++]; - int32_t vel = notes[event++]; - noteOn(note, vel); - } - } - - activevoices = NVOICES; - for(v=0; v<NVOICES; v++) - { - if(voice[v].env < SILENCE) //choke voices that have finished - { - voice[v].env = voice[v].cenv = 0.0f; - activevoices--; - } - if(voice[v].menv < SILENCE) voice[v].menv = voice[v].mlev = 0.0f; - } - } - - K=k; MW=mw; //remember these so vibrato speed not buffer size dependant! - notes[0] = EVENTS_DONE; -} - - void mdaDX10::processReplacing(float **inputs, float **outputs, int32_t sampleFrames) { float* out1 = outputs[0]; float* out2 = outputs[1]; - int32_t event=0, frame=0, frames, v; + int32_t frame=0, frames, v; float o, x, e, mw=MW, w=rich, m=modmix; int32_t k=K; - if(activevoices>0 || notes[event]<sampleFrames) //detect & bypass completely empty blocks + LV2_Atom_Event* ev = lv2_atom_sequence_begin(&eventInput->body); + bool end = lv2_atom_sequence_is_end(&eventInput->body, eventInput->atom.size, ev); + if(activevoices>0 || !end) //detect & bypass completely empty blocks { while(frame<sampleFrames) { - frames = notes[event++]; - if(frames>sampleFrames) frames = sampleFrames; + end = lv2_atom_sequence_is_end(&eventInput->body, eventInput->atom.size, ev); + frames = end ? sampleFrames : ev->time.frames; frames -= frame; frame += frames; @@ -444,11 +366,10 @@ void mdaDX10::processReplacing(float **inputs, float **outputs, int32_t sampleFr *out2++ = o; } - if(frame<sampleFrames) //next note on/off + if(!end) //next note on/off { - int32_t note = notes[event++]; - int32_t vel = notes[event++]; - noteOn(note, vel); + processEvent(ev); + ev = lv2_atom_sequence_next(ev); } } @@ -472,7 +393,6 @@ void mdaDX10::processReplacing(float **inputs, float **outputs, int32_t sampleFr } } K=k; MW=mw; //remember these so vibrato speed not buffer size dependant! - notes[0] = EVENTS_DONE; } @@ -528,28 +448,21 @@ void mdaDX10::noteOn(int32_t note, int32_t velocity) } -int32_t mdaDX10::processEvents(LvzEvents* ev) +int32_t mdaDX10::processEvent(const LV2_Atom_Event* ev) { - int32_t npos=0; + if (ev->body.type != midiEventType) + return 0; - for (int32_t i=0; i<ev->numEvents; i++) - { - if((ev->events[i])->type != kLvzMidiType) continue; - LvzMidiEvent* event = (LvzMidiEvent*)ev->events[i]; - char* midiData = event->midiData; + const uint8_t* midiData = (const uint8_t*)LV2_ATOM_BODY(&ev->body); switch(midiData[0] & 0xf0) //status byte (all channels) { case 0x80: //note off - notes[npos++] = event->deltaFrames; //delta - notes[npos++] = midiData[1] & 0x7F; //note - notes[npos++] = 0; //vel + noteOn(midiData[1] & 0x7F, 0); break; case 0x90: //note on - notes[npos++] = event->deltaFrames; //delta - notes[npos++] = midiData[1] & 0x7F; //note - notes[npos++] = midiData[2] & 0x7F; //vel + noteOn(midiData[1] & 0x7F, midiData[2] & 0x7F); break; case 0xB0: //controller @@ -567,9 +480,7 @@ int32_t mdaDX10::processEvents(LvzEvents* ev) sustain = midiData[2] & 0x40; if(sustain==0) { - notes[npos++] = event->deltaFrames; - notes[npos++] = SUSTAIN; //end all sustained notes - notes[npos++] = 0; + noteOn(SUSTAIN, 0); } break; @@ -596,10 +507,6 @@ int32_t mdaDX10::processEvents(LvzEvents* ev) default: break; } - if(npos>EVENTBUFFER) npos -= 3; //discard events if buffer full!! - event++; - } - notes[npos] = EVENTS_DONE; return 1; } diff --git a/src/mdaDX10.h b/src/mdaDX10.h index 02cfe38..8b3ab64 100644 --- a/src/mdaDX10.h +++ b/src/mdaDX10.h @@ -62,9 +62,7 @@ public: mdaDX10(audioMasterCallback audioMaster); ~mdaDX10(); - virtual void process(float **inputs, float **outputs, int32_t sampleframes); virtual void processReplacing(float **inputs, float **outputs, int32_t sampleframes); - virtual int32_t processEvents(LvzEvents* events); virtual void setProgram(int32_t program); virtual void setProgramName(char *name); @@ -85,11 +83,12 @@ public: virtual bool getVendorString (char* text); virtual bool getProductString (char* text); virtual int32_t getVendorVersion () {return 1;} - virtual int32_t canDo (char* text); + virtual int32_t canDo (const char* text); virtual int32_t getNumMidiInputChannels () { return 1; } private: + int32_t processEvent(const LV2_Atom_Event* ev); void update(); //my parameter update void noteOn(int32_t note, int32_t velocity); void fillpatch(int32_t p, const char *name, @@ -100,10 +99,6 @@ private: mdaDX10Program* programs; float Fs; - #define EVENTBUFFER 120 - #define EVENTS_DONE 99999999 - int32_t notes[EVENTBUFFER + 8]; //list of delta|note|velocity for current block - ///global internal variables VOICE voice[NVOICES]; #define SUSTAIN 128 diff --git a/src/mdaDeEss.cpp b/src/mdaDeEss.cpp index f3cbad1..18a8096 100644 --- a/src/mdaDeEss.cpp +++ b/src/mdaDeEss.cpp @@ -32,6 +32,13 @@ mdaDeEss::mdaDeEss(audioMasterCallback audioMaster) : AudioEffectX(audioMaster, fParam1 = (float)0.15f; //thresh fParam2 = (float)0.60f; //f fParam3 = (float)0.50f; //drive + fbuf1 = 0.0f; + fbuf2 = 0.0f; + gai = 0.0f; + thr = 0.0f; + att = 0.0f; + rel = 0.0f; + fil = 0.0f; setNumInputs(2); setNumOutputs(2); setUniqueID("mdaDeEss"); //identify here diff --git a/src/mdaDetune.h b/src/mdaDetune.h index 08741e6..1ae151e 100644 --- a/src/mdaDetune.h +++ b/src/mdaDetune.h @@ -17,7 +17,7 @@ */ #define NPARAMS 4 ///number of parameters -#define NPROGS 4 ///number of programs +#define NPROGS 3 ///number of programs #define BUFMAX 4096 #ifndef __mdaDetune_H diff --git a/src/mdaDynamics.cpp b/src/mdaDynamics.cpp index 2c7d644..65f7ce2 100644 --- a/src/mdaDynamics.cpp +++ b/src/mdaDynamics.cpp @@ -37,6 +37,9 @@ mdaDynamics::mdaDynamics(audioMasterCallback audioMaster) : AudioEffectX(audioMa fParam8 = (float)0.10; //gate attack fParam9 = (float)0.50; //gate decay fParam10= (float)1.00; //fx mix + thr = rat = env = env2 = att = rel = trim = lthr = xthr = xrat = dry = 0.0f; + genv = gatt = irel = 0.0f; + mode = 0; setNumInputs(2); // stereo in setNumOutputs(2); // stereo out diff --git a/src/mdaEPiano.cpp b/src/mdaEPiano.cpp index a1866bd..3aa101a 100644 --- a/src/mdaEPiano.cpp +++ b/src/mdaEPiano.cpp @@ -19,6 +19,8 @@ #include "mdaEPianoData.h" #include "mdaEPiano.h" +#include "lv2/lv2plug.in/ns/ext/atom/util.h" + #include <stdio.h> #include <math.h> @@ -43,9 +45,6 @@ mdaEPiano::mdaEPiano(audioMasterCallback audioMaster) : AudioEffectX(audioMaster fillpatch(i++, "Mellow", 0.500f, 0.500f, 0.000f, 0.000f, 0.500f, 0.650f, 0.250f, 0.500f, 0.50f, 0.500f, 0.246f, 0.000f); fillpatch(i++, "Autopan", 0.500f, 0.500f, 0.500f, 0.500f, 0.250f, 0.650f, 0.250f, 0.500f, 0.50f, 0.500f, 0.246f, 0.000f); fillpatch(i++, "Tremolo", 0.500f, 0.500f, 0.500f, 0.500f, 0.750f, 0.650f, 0.250f, 0.500f, 0.50f, 0.500f, 0.246f, 0.000f); - fillpatch(i++, "(default)", 0.500f, 0.500f, 0.500f, 0.500f, 0.500f, 0.650f, 0.250f, 0.500f, 0.50f, 0.500f, 0.146f, 0.000f); - fillpatch(i++, "(default)", 0.500f, 0.500f, 0.500f, 0.500f, 0.500f, 0.650f, 0.250f, 0.500f, 0.50f, 0.500f, 0.146f, 0.000f); - fillpatch(i++, "(default)", 0.500f, 0.500f, 0.500f, 0.500f, 0.500f, 0.650f, 0.250f, 0.500f, 0.50f, 0.500f, 0.146f, 0.000f); setProgram(0); } @@ -132,7 +131,6 @@ mdaEPiano::mdaEPiano(audioMasterCallback audioMaster) : AudioEffectX(audioMaster voice[v].env = 0.0f; voice[v].dec = 0.99f; //all notes off } - notes[0] = EVENTS_DONE; volume = 0.2f; muff = 160.0f; sustain = activevoices = 0; @@ -263,7 +261,7 @@ bool mdaEPiano::copyProgram(int32_t destination) } -int32_t mdaEPiano::canDo(char* text) +int32_t mdaEPiano::canDo(const char* text) { if(strcmp(text, "receiveLvzEvents") == 0) return 1; if(strcmp(text, "receiveLvzMidiEvent") == 0) return 1; @@ -344,87 +342,19 @@ void mdaEPiano::guiGetDisplay(int32_t index, char *label) } -void mdaEPiano::process(float **inputs, float **outputs, int32_t sampleFrames) -{ - float* out0 = outputs[0]; - float* out1 = outputs[1]; - int32_t event=0, frame=0, frames, v; - float x, l, r, od=overdrive; - int32_t i; - - while(frame<sampleFrames) - { - frames = notes[event++]; - if(frames>sampleFrames) frames = sampleFrames; - frames -= frame; - frame += frames; - - while(--frames>=0) - { - VOICE *V = voice; - l = r = 0.0f; - - for(v=0; v<activevoices; v++) - { - V->frac += V->delta; //integer-based linear interpolation - V->pos += V->frac >> 16; - V->frac &= 0xFFFF; - if(V->pos > V->end) V->pos -= V->loop; - i = waves[V->pos]; - i = (i << 7) + (V->frac >> 9) * (waves[V->pos + 1] - i) + 0x40400000; - x = V->env * (*(float *)&i - 3.0f); //fast int->float - V->env = V->env * V->dec; //envelope - - if(x>0.0f) { x -= od * x * x; if(x < -V->env) x = -V->env; } //+= 0.5f * x * x; } //overdrive - - l += V->outl * x; - r += V->outr * x; - - V++; - } - tl += tfrq * (l - tl); //treble boost - tr += tfrq * (r - tr); - r += treb * (r - tr); - l += treb * (l - tl); - - lfo0 += dlfo * lfo1; //LFO for tremolo and autopan - lfo1 -= dlfo * lfo0; - l += l * lmod * lfo1; - r += r * rmod * lfo1; //worth making all these local variables? - - *out0++ += l; - *out1++ += r; - } - - if(frame<sampleFrames) - { - if(activevoices == 0 && programs[curProgram].param[4] > 0.5f) - { lfo0 = -0.7071f; lfo1 = 0.7071f; } //reset LFO phase - good idea? - int32_t note = notes[event++]; - int32_t vel = notes[event++]; - noteOn(note, vel); - } - } - if(fabs(tl)<1.0e-10) tl = 0.0f; //anti-denormal - if(fabs(tr)<1.0e-10) tr = 0.0f; - - for(v=0; v<activevoices; v++) if(voice[v].env < SILENCE) voice[v] = voice[--activevoices]; - notes[0] = EVENTS_DONE; //mark events buffer as done -} - - void mdaEPiano::processReplacing(float **inputs, float **outputs, int32_t sampleFrames) { float* out0 = outputs[0]; float* out1 = outputs[1]; - int32_t event=0, frame=0, frames, v; + int32_t frame=0, frames, v; float x, l, r, od=overdrive; int32_t i; + LV2_Atom_Event* ev = lv2_atom_sequence_begin(&eventInput->body); while(frame<sampleFrames) { - frames = notes[event++]; - if(frames>sampleFrames) frames = sampleFrames; + bool end = lv2_atom_sequence_is_end(&eventInput->body, eventInput->atom.size, ev); + frames = end ? sampleFrames : ev->time.frames; frames -= frame; frame += frames; @@ -473,16 +403,18 @@ void mdaEPiano::processReplacing(float **inputs, float **outputs, int32_t sample { if(activevoices == 0 && programs[curProgram].param[4] > 0.5f) { lfo0 = -0.7071f; lfo1 = 0.7071f; } //reset LFO phase - good idea? - int32_t note = notes[event++]; - int32_t vel = notes[event++]; - noteOn(note, vel); + + if (!end) { + processEvent(ev); + ev = lv2_atom_sequence_next(ev); + } + } } if(fabs(tl)<1.0e-10) tl = 0.0f; //anti-denormal if(fabs(tr)<1.0e-10) tr = 0.0f; for(v=0; v<activevoices; v++) if(voice[v].env < SILENCE) voice[v] = voice[--activevoices]; - notes[0] = EVENTS_DONE; //mark events buffer as done } @@ -561,29 +493,23 @@ void mdaEPiano::noteOn(int32_t note, int32_t velocity) } -int32_t mdaEPiano::processEvents(LvzEvents* ev) +int32_t mdaEPiano::processEvent(const LV2_Atom_Event* ev) { float * param = programs[curProgram].param; - int32_t npos=0; - for (int32_t i=0; i<ev->numEvents; i++) - { - if((ev->events[i])->type != kLvzMidiType) continue; - LvzMidiEvent* event = (LvzMidiEvent*)ev->events[i]; - char* midiData = event->midiData; + if (ev->body.type != midiEventType) + return 0; + + const uint8_t* midiData = (const uint8_t*)LV2_ATOM_BODY(&ev->body); switch(midiData[0] & 0xf0) //status byte (all channels) { case 0x80: //note off - notes[npos++] = event->deltaFrames; //delta - notes[npos++] = midiData[1] & 0x7F; //note - notes[npos++] = 0; //vel + noteOn(midiData[1] & 0x7F, 0); break; case 0x90: //note on - notes[npos++] = event->deltaFrames; //delta - notes[npos++] = midiData[1] & 0x7F; //note - notes[npos++] = midiData[2] & 0x7F; //vel + noteOn(midiData[1] & 0x7F, midiData[2] & 0x7F); break; case 0xB0: //controller @@ -608,9 +534,7 @@ int32_t mdaEPiano::processEvents(LvzEvents* ev) sustain = midiData[2] & 0x40; if(sustain==0) { - notes[npos++] = event->deltaFrames; - notes[npos++] = SUSTAIN; //end all sustained notes - notes[npos++] = 0; + noteOn(SUSTAIN, 0); //end all sustained notes } break; @@ -632,10 +556,6 @@ int32_t mdaEPiano::processEvents(LvzEvents* ev) default: break; } - if(npos>EVENTBUFFER) npos -= 3; //discard events if buffer full!! - event++; //? - } - notes[npos] = EVENTS_DONE; return 1; } diff --git a/src/mdaEPiano.h b/src/mdaEPiano.h index b24c7ce..41d0fb0 100644 --- a/src/mdaEPiano.h +++ b/src/mdaEPiano.h @@ -24,7 +24,7 @@ #include "audioeffectx.h" #define NPARAMS 12 //number of parameters -#define NPROGS 8 //number of programs +#define NPROGS 5 //number of programs #define NOUTS 2 //number of outputs #define NVOICES 32 //max polyphony #define SUSTAIN 128 @@ -76,9 +76,7 @@ public: mdaEPiano(audioMasterCallback audioMaster); ~mdaEPiano(); - virtual void process(float **inputs, float **outputs, int32_t sampleframes); virtual void processReplacing(float **inputs, float **outputs, int32_t sampleframes); - virtual int32_t processEvents(LvzEvents* events); virtual void setProgram(int32_t program); virtual void setProgramName(char *name); @@ -98,7 +96,7 @@ public: virtual bool getVendorString (char* text); virtual bool getProductString (char* text); virtual int32_t getVendorVersion () {return 1;} - virtual int32_t canDo (char* text); + virtual int32_t canDo (const char* text); virtual int32_t getNumMidiInputChannels () { return 1; } @@ -106,6 +104,7 @@ public: void guiGetDisplay(int32_t index, char *label); private: + int32_t processEvent(const LV2_Atom_Event* ev); void update(); //my parameter update void noteOn(int32_t note, int32_t velocity); void fillpatch(int32_t p, const char *name, float p0, float p1, float p2, float p3, float p4, @@ -114,10 +113,6 @@ private: mdaEPianoProgram* programs; float Fs, iFs; - #define EVENTBUFFER 120 - #define EVENTS_DONE 99999999 - int32_t notes[EVENTBUFFER + 8]; //list of delta|note|velocity for current block - ///global internal variables KGRP kgrp[34]; VOICE voice[NVOICES]; diff --git a/src/mdaImage.cpp b/src/mdaImage.cpp index 06799b6..50d2ffa 100644 --- a/src/mdaImage.cpp +++ b/src/mdaImage.cpp @@ -28,7 +28,7 @@ AudioEffect *createEffectInstance(audioMasterCallback audioMaster) mdaImage::mdaImage(audioMasterCallback audioMaster) : AudioEffectX(audioMaster, 1, 6) // programs, parameters { - fParam1 = 0.6f; //mode + fParam1 = 0.0f; //mode fParam2 = 0.75f; //width fParam3 = 0.5f; //skew fParam4 = 0.75f; //centre diff --git a/src/mdaJX10.cpp b/src/mdaJX10.cpp index 2432fae..c51c946 100644 --- a/src/mdaJX10.cpp +++ b/src/mdaJX10.cpp @@ -18,6 +18,8 @@ #include "mdaJX10.h" +#include "lv2/lv2plug.in/ns/ext/atom/util.h" + #include <stdio.h> #include <stdlib.h> //rand() #include <math.h> @@ -154,7 +156,6 @@ mdaJX10::mdaJX10(audioMasterCallback audioMaster) : AudioEffectX(audioMaster, NP voice[v].f0 = voice[v].f1 = voice[v].f2 = 0.0f; voice[v].note = 0; } - notes[0] = EVENTS_DONE; lfo = modwhl = filtwhl = press = fzip = 0.0f; rezwhl = pbend = ipbend = 1.0f; volume = 0.0005f; @@ -332,7 +333,7 @@ bool mdaJX10::copyProgram(int32_t destination) } -int32_t mdaJX10::canDo(char* text) +int32_t mdaJX10::canDo(const char* text) { if(!strcmp (text, "receiveLvzEvents")) return 1; if(!strcmp (text, "receiveLvzMidiEvent")) return 1; @@ -430,178 +431,11 @@ void mdaJX10::getParameterLabel(int32_t index, char *label) } } - -void mdaJX10::process(float **inputs, float **outputs, int32_t sampleFrames) -{ - float* out1 = outputs[0]; - float* out2 = outputs[1]; - int32_t event=0, frame=0, frames, v; - float o, e, vib, pwm, pb=pbend, ipb=ipbend, gl=glide; - float x, y, hpf=0.997f, min=1.0f, w=0.0f, ww=noisemix; - float ff, fe=filtenv, fq=filtq * rezwhl, fx=1.97f-0.85f*fq, fz=fzip; - int32_t k=K; - unsigned int r; - - vib = (float)sin(lfo); - ff = filtf + filtwhl + (filtlfo + press) * vib; //have to do again here as way that - pwm = 1.0f + vib * (modwhl + pwmdep); //below triggers on k was too cheap! - vib = 1.0f + vib * (modwhl + vibrato); - - if(activevoices>0 || notes[event]<sampleFrames) - { - while(frame<sampleFrames) - { - frames = notes[event++]; - if(frames>sampleFrames) frames = sampleFrames; - frames -= frame; - frame += frames; - - while(--frames>=0) - { - VOICE *V = voice; - o = 0.0f; - - noise = (noise * 196314165) + 907633515; - r = (noise & 0x7FFFFF) + 0x40000000; //generate noise + fast convert to float - w = *(float *)&r; - w = ww * (w - 3.0f); - - if(--k<0) - { - lfo += dlfo; - if(lfo>PI) lfo -= TWOPI; - vib = (float)sin(lfo); - ff = filtf + filtwhl + (filtlfo + press) * vib; - pwm = 1.0f + vib * (modwhl + pwmdep); - vib = 1.0f + vib * (modwhl + vibrato); - k = KMAX; - } - - for(v=0; v<NVOICES; v++) //for each voice - { - e = V->env; - if(e > SILENCE) - { //Sinc-Loop Oscillator - x = V->p + V->dp; - if(x > min) - { - if(x > V->pmax) - { - x = V->pmax + V->pmax - x; - V->dp = -V->dp; - } - V->p = x; - x = V->sin0 * V->sinx - V->sin1; //sine osc - V->sin1 = V->sin0; - V->sin0 = x; - x = x / V->p; - } - else - { - V->p = x = - x; - V->dp = V->period * vib * pb; //set period for next cycle - V->pmax = (float)floor(0.5f + V->dp) - 0.5f; - V->dc = -0.5f * V->lev / V->pmax; - V->pmax *= PI; - V->dp = V->pmax / V->dp; - V->sin0 = V->lev * (float)sin(x); - V->sin1 = V->lev * (float)sin(x - V->dp); - V->sinx = 2.0f * (float)cos(V->dp); - if(x*x > .1f) x = V->sin0 / x; else x = V->lev; //was 0.01f; - } - - y = V->p2 + V->dp2; //osc2 - if(y > min) - { - if(y > V->pmax2) - { - y = V->pmax2 + V->pmax2 - y; - V->dp2 = -V->dp2; - } - V->p2 = y; - y = V->sin02 * V->sinx2 - V->sin12; - V->sin12 = V->sin02; - V->sin02 = y; - y = y / V->p2; - } - else - { - V->p2 = y = - y; - V->dp2 = V->period * V->detune * pwm * pb; - V->pmax2 = (float)floor(0.5f + V->dp2) - 0.5f; - V->dc2 = -0.5f * V->lev2 / V->pmax2; - V->pmax2 *= PI; - V->dp2 = V->pmax2 / V->dp2; - V->sin02 = V->lev2 * (float)sin(y); - V->sin12 = V->lev2 * (float)sin(y - V->dp2); - V->sinx2 = 2.0f * (float)cos(V->dp2); - if(y*y > .1f) y = V->sin02 / y; else y = V->lev2; - } - V->saw = V->saw * hpf + V->dc + x - V->dc2 - y; //integrated sinc = saw - x = V->saw + w; - V->env += V->envd * (V->envl - V->env); - - if(k==KMAX) //filter freq update at LFO rate - { - if((V->env+V->envl)>3.0f) { V->envd=dec; V->envl=sus; } //envelopes - V->fenv += V->fenvd * (V->fenvl - V->fenv); - if((V->fenv+V->fenvl)>3.0f) { V->fenvd=fdec; V->fenvl=fsus; } - - fz += 0.005f * (ff - fz); //filter zipper noise filter - y = V->fc * (float)exp(fz + fe * V->fenv) * ipb; //filter cutoff - if(y<0.005f) y=0.005f; - V->ff = y; - - V->period += gl * (V->target - V->period); //glide - if(V->target < V->period) V->period += gl * (V->target - V->period); - } - - if(V->ff > fx) V->ff = fx; //stability limit - - V->f0 += V->ff * V->f1; //state-variable filter - V->f1 -= V->ff * (V->f0 + fq * V->f1 - x - V->f2); - V->f1 -= 0.2f * V->f1 * V->f1 * V->f1; //soft limit //was 0.08f - V->f2 = x; - - o += V->env * V->f0; - } - V++; - } - - *out1++ += o; - *out2++ += o; - } - - if(frame<sampleFrames) - { - int32_t note = notes[event++]; - int32_t vel = notes[event++]; - noteOn(note, vel); - } - } - - activevoices = NVOICES; - for(v=0; v<NVOICES; v++) - { - if(voice[v].env<SILENCE) //choke voices - { - voice[v].env = voice[v].envl = 0.0f; - voice[v].f0 = voice[v].f1 = voice[v].f2 = 0.0f; - activevoices--; - } - } - } - notes[0] = EVENTS_DONE; //mark events buffer as done - fzip = fz; - K = k; -} - - void mdaJX10::processReplacing(float **inputs, float **outputs, int32_t sampleFrames) { float* out1 = outputs[0]; float* out2 = outputs[1]; - int32_t event=0, frame=0, frames, v; + int32_t frame=0, frames, v; float o, e, vib, pwm, pb=pbend, ipb=ipbend, gl=glide; float x, y, hpf=0.997f, min=1.0f, w=0.0f, ww=noisemix; float ff, fe=filtenv, fq=filtq * rezwhl, fx=1.97f-0.85f*fq, fz=fzip; @@ -613,12 +447,14 @@ void mdaJX10::processReplacing(float **inputs, float **outputs, int32_t sampleFr pwm = 1.0f + vib * (modwhl + pwmdep); //below triggers on k was too cheap! vib = 1.0f + vib * (modwhl + vibrato); - if(activevoices>0 || notes[event]<sampleFrames) + LV2_Atom_Event* ev = lv2_atom_sequence_begin(&eventInput->body); + bool end = lv2_atom_sequence_is_end(&eventInput->body, eventInput->atom.size, ev); + if(activevoices>0 || !end) { while(frame<sampleFrames) { - frames = notes[event++]; - if(frames>sampleFrames) frames = sampleFrames; + end = lv2_atom_sequence_is_end(&eventInput->body, eventInput->atom.size, ev); + frames = end ? sampleFrames : ev->time.frames; frames -= frame; frame += frames; @@ -739,11 +575,10 @@ void mdaJX10::processReplacing(float **inputs, float **outputs, int32_t sampleFr *out2++ = o; } - if(frame<sampleFrames) + if(!end) { - int32_t note = notes[event++]; - int32_t vel = notes[event++]; - noteOn(note, vel); + processEvent(ev); + ev = lv2_atom_sequence_next(ev); } } @@ -766,7 +601,6 @@ void mdaJX10::processReplacing(float **inputs, float **outputs, int32_t sampleFr *out2++ = 0.0f; } } - notes[0] = EVENTS_DONE; //mark events buffer as done fzip = fz; K = k; } @@ -912,28 +746,21 @@ void mdaJX10::noteOn(int32_t note, int32_t velocity) } -int32_t mdaJX10::processEvents(LvzEvents* ev) +int32_t mdaJX10::processEvent(const LV2_Atom_Event* ev) { - int32_t npos=0; - - for (int32_t i=0; i<ev->numEvents; i++) - { - if((ev->events[i])->type != kLvzMidiType) continue; - LvzMidiEvent* event = (LvzMidiEvent*)ev->events[i]; - char* midiData = event->midiData; + if (ev->body.type != midiEventType) + return 0; + + const uint8_t* midiData = (const uint8_t*)LV2_ATOM_BODY(&ev->body); switch(midiData[0] & 0xf0) //status byte (all channels) { case 0x80: //note off - notes[npos++] = event->deltaFrames; //delta - notes[npos++] = midiData[1] & 0x7F; //note - notes[npos++] = 0; //vel + noteOn(midiData[1] & 0x7F, 0); break; case 0x90: //note on - notes[npos++] = event->deltaFrames; //delta - notes[npos++] = midiData[1] & 0x7F; //note - notes[npos++] = midiData[2] & 0x7F; //vel + noteOn(midiData[1] & 0x7F, midiData[2] & 0x7F); break; case 0xB0: //controller @@ -963,9 +790,7 @@ int32_t mdaJX10::processEvents(LvzEvents* ev) sustain = midiData[2] & 0x40; if(sustain==0) { - notes[npos++] = event->deltaFrames; - notes[npos++] = SUSTAIN; //end all sustained notes - notes[npos++] = 0; + noteOn(SUSTAIN, 0); } break; @@ -1001,10 +826,6 @@ int32_t mdaJX10::processEvents(LvzEvents* ev) default: break; } - if(npos>EVENTBUFFER) npos -= 3; //discard events if buffer full!! - event++; - } - notes[npos] = EVENTS_DONE; return 1; } diff --git a/src/mdaJX10.h b/src/mdaJX10.h index 932ca6d..b918115 100644 --- a/src/mdaJX10.h +++ b/src/mdaJX10.h @@ -94,9 +94,7 @@ public: mdaJX10(audioMasterCallback audioMaster); ~mdaJX10(); - virtual void process(float **inputs, float **outputs, int32_t sampleframes); virtual void processReplacing(float **inputs, float **outputs, int32_t sampleframes); - virtual int32_t processEvents(LvzEvents* events); virtual void setProgram(int32_t program); virtual void setProgramName(char *name); @@ -118,9 +116,10 @@ public: virtual bool getVendorString (char* text); virtual bool getProductString (char* text); virtual int32_t getVendorVersion () {return 1;} - virtual int32_t canDo (char* text); + virtual int32_t canDo (const char* text); private: + int32_t processEvent(const LV2_Atom_Event* ev); void update(); //my parameter update void noteOn(int32_t note, int32_t velocity); void fillpatch(int32_t p, const char *name, @@ -132,9 +131,6 @@ private: mdaJX10Program* programs; float Fs; - #define EVENTBUFFER 120 - #define EVENTS_DONE 99999999 - int32_t notes[EVENTBUFFER + 8]; //list of delta|note|velocity for current block #define KMAX 32 ///global internal variables diff --git a/src/mdaLeslie.cpp b/src/mdaLeslie.cpp index 745936f..865133b 100644 --- a/src/mdaLeslie.cpp +++ b/src/mdaLeslie.cpp @@ -31,7 +31,7 @@ AudioEffect *createEffectInstance(audioMasterCallback audioMaster) mdaLeslieProgram::mdaLeslieProgram() { - param[0] = 0.66f; + param[0] = 0.5f; param[1] = 0.50f; param[2] = 0.48f; param[3] = 0.70f; @@ -60,11 +60,11 @@ mdaLeslie::mdaLeslie(audioMasterCallback audioMaster) : AudioEffectX(audioMaster programs = new mdaLeslieProgram[numPrograms]; if(programs) { - programs[1].param[0] = 0.33f; + programs[1].param[0] = 0.5f; programs[1].param[4] = 0.75f; programs[1].param[5] = 0.57f; strcpy(programs[1].name,"Slow"); - programs[2].param[0] = 0.66f; + programs[2].param[0] = 1.0f; programs[2].param[4] = 0.60f; programs[2].param[5] = 0.70f; strcpy(programs[2].name,"Fast"); diff --git a/src/mdaMultiBand.cpp b/src/mdaMultiBand.cpp index 9998148..984e3b4 100644 --- a/src/mdaMultiBand.cpp +++ b/src/mdaMultiBand.cpp @@ -41,7 +41,7 @@ mdaMultiBand::mdaMultiBand(audioMasterCallback audioMaster) : AudioEffectX(audio fParam10 = (float)0.22; //attack (3) fParam11 = (float)0.602; //release (4) fParam12 = (float)0.55; //width - fParam13 = (float)0.40; //MS swap + fParam13 = (float)0.00; //MS swap /* fParam1 = (float)1.00; //Listen: L/M/H/out fParam2 = (float)0.50; //xover1 fParam3 = (float)0.50; //xover2 @@ -85,17 +85,16 @@ mdaMultiBand::mdaMultiBand(audioMasterCallback audioMaster) : AudioEffectX(audio att3 = (float)pow(10.0, -0.05 -(1.5 * fParam10)); rel3 = (float)pow(10.0, -2.0 - (2.5 * fParam11)); - switch(int(fParam1*10.0)) + switch(int(fParam1*3.9)) { case 0: trim2=0.0; trim3=0.0; slev=0.0; break; - case 1: - case 2: trim1=0.0; trim3=0.0; slev=0.0; break; - case 3: - case 4: trim1=0.0; trim2=0.0; slev=0.0; break; + case 1: trim1=0.0; trim3=0.0; slev=0.0; break; + case 2: trim1=0.0; trim2=0.0; slev=0.0; break; default: slev=fParam12; break; } fi1 = (float)pow(10.0,fParam2 - 1.70); fo1=(float)(1.0 - fi1); fi2 = (float)pow(10.0,fParam3 - 1.05); fo2=(float)(1.0 - fi2); + fb1 = fb2 = fb3 = 0.0f; mswap = 0; } @@ -165,19 +164,17 @@ void mdaMultiBand::setParameter(int32_t index, float value) att3 = (float)pow(10.0, -0.05 -(1.5 * fParam10)); rel3 = (float)pow(10.0, -2.0 - (2.5 * fParam11)); - switch(int(fParam1*10.0)) + switch(int(fParam1*3.9)) { case 0: trim2=0.0; trim3=0.0; slev=0.0; break; - case 1: - case 2: trim1=0.0; trim3=0.0; slev=0.0; break; - case 3: - case 4: trim1=0.0; trim2=0.0; slev=0.0; break; + case 1: trim1=0.0; trim3=0.0; slev=0.0; break; + case 2: trim1=0.0; trim2=0.0; slev=0.0; break; default: slev=fParam12; break; } fi1 = (float)pow(10.0,fParam2 - 1.70); fo1=(float)(1.0 - fi1); fi2 = (float)pow(10.0,fParam3 - 1.05); fo2=(float)(1.0 - fi2); - if(fParam13>0.5) mswap=1; else mswap=0; + if(fParam13>0.0) mswap=1; else mswap=0; } float mdaMultiBand::getParameter(int32_t index) @@ -230,10 +227,10 @@ void mdaMultiBand::getParameterDisplay(int32_t index, char *text) { switch(index) { - case 0: switch(int(fParam1*10.0)) + case 0: switch(int(fParam1*3.9)) { case 0: strcpy(text, "Low"); break; - case 1: case 2: strcpy(text, "Mid"); break; - case 3: case 4: strcpy(text, "High"); break; + case 1: strcpy(text, "Mid"); break; + case 2: strcpy(text, "High"); break; default: strcpy(text, "Output"); break; } break; case 1: int2strng((int32_t)(getSampleRate() * fi1 * (0.098 + 0.09*fi1 + 0.5*(float)pow(fi1,8.2f))), text); break; case 2: int2strng((int32_t)(getSampleRate() * fi2 * (0.015 + 0.15*fi2 + 0.9*(float)pow(fi2,8.2f))), text); break; diff --git a/src/mdaPiano.cpp b/src/mdaPiano.cpp index 8f4fd76..f207079 100644 --- a/src/mdaPiano.cpp +++ b/src/mdaPiano.cpp @@ -19,6 +19,8 @@ #include "mdaPianoData.h" #include "mdaPiano.h" +#include "lv2/lv2plug.in/ns/ext/atom/util.h" + #include <stdio.h> #include <math.h> @@ -109,7 +111,6 @@ mdaPiano::mdaPiano(audioMasterCallback audioMaster) : AudioEffectX(audioMaster, voice[v].env = 0.0f; voice[v].dec = 0.99f; //all notes off } - notes[0] = EVENTS_DONE; volume = 0.2f; muff = 160.0f; cpos = sustain = activevoices = 0; @@ -240,7 +241,7 @@ bool mdaPiano::copyProgram(int32_t destination) } -int32_t mdaPiano::canDo(char* text) +int32_t mdaPiano::canDo(const char* text) { if(strcmp(text, "receiveLvzEvents") == 0) return 1; if(strcmp(text, "receiveLvzMidiEvent") == 0) return 1; @@ -313,79 +314,19 @@ void mdaPiano::guiGetDisplay(int32_t index, char *label) getParameterLabel(index, label + strlen(label)); } - - -void mdaPiano::process(float **inputs, float **outputs, int32_t sampleFrames) -{ - float* out0 = outputs[0]; - float* out1 = outputs[1]; - int32_t event=0, frame=0, frames, v; - float x, l, r; - int32_t i; - - while(frame<sampleFrames) - { - frames = notes[event++]; - if(frames>sampleFrames) frames = sampleFrames; - frames -= frame; - frame += frames; - - while(--frames>=0) - { - VOICE *V = voice; - l = r = 0.0f; - - for(v=0; v<activevoices; v++) - { - V->frac += V->delta; //integer-based linear interpolation - V->pos += V->frac >> 16; - V->frac &= 0xFFFF; - if(V->pos > V->end) V->pos -= V->loop; - i = waves[V->pos]; - i = (i << 7) + (V->frac >> 9) * (waves[V->pos + 1] - i) + 0x40400000; - x = V->env * (*(float *)&i - 3.0f); //fast int->float - - V->env = V->env * V->dec; //envelope - V->f0 += V->ff * (x + V->f1 - V->f0); //muffle filter - V->f1 = x; - - l += V->outl * V->f0; - r += V->outr * V->f0; - - V++; - } - comb[cpos] = l + r; - ++cpos &= cmax; - x = cdep * comb[cpos]; //stereo simulator - - *out0++ += l + x; - *out1++ += r - x; - } - - if(frame<sampleFrames) - { - int32_t note = notes[event++]; - int32_t vel = notes[event++]; - noteOn(note, vel); - } - } - for(v=0; v<activevoices; v++) if(voice[v].env < SILENCE) voice[v] = voice[--activevoices]; - notes[0] = EVENTS_DONE; //mark events buffer as done -} - - void mdaPiano::processReplacing(float **inputs, float **outputs, int32_t sampleFrames) { float* out0 = outputs[0]; float* out1 = outputs[1]; - int32_t event=0, frame=0, frames, v; + int32_t frame=0, frames, v; float x, l, r; int32_t i; + LV2_Atom_Event* ev = lv2_atom_sequence_begin(&eventInput->body); while(frame<sampleFrames) { - frames = notes[event++]; - if(frames>sampleFrames) frames = sampleFrames; + bool end = lv2_atom_sequence_is_end(&eventInput->body, eventInput->atom.size, ev); + frames = end ? sampleFrames : ev->time.frames; frames -= frame; frame += frames; @@ -432,15 +373,13 @@ if(!(r > -2.0f) || !(r < 2.0f)) *out1++ = r - x; } - if(frame<sampleFrames) + if(!end) { - int32_t note = notes[event++]; - int32_t vel = notes[event++]; - noteOn(note, vel); + processEvent(ev); + ev = lv2_atom_sequence_next(ev); } } for(v=0; v<activevoices; v++) if(voice[v].env < SILENCE) voice[v] = voice[--activevoices]; - notes[0] = EVENTS_DONE; //mark events buffer as done } @@ -518,28 +457,21 @@ void mdaPiano::noteOn(int32_t note, int32_t velocity) } -int32_t mdaPiano::processEvents(LvzEvents* ev) +int32_t mdaPiano::processEvent(const LV2_Atom_Event* ev) { - int32_t npos=0; + if (ev->body.type != midiEventType) + return 0; - for (int32_t i=0; i<ev->numEvents; i++) - { - if((ev->events[i])->type != kLvzMidiType) continue; - LvzMidiEvent* event = (LvzMidiEvent*)ev->events[i]; - char* midiData = event->midiData; + const uint8_t* midiData = (const uint8_t*)LV2_ATOM_BODY(&ev->body); switch(midiData[0] & 0xf0) //status byte (all channels) { case 0x80: //note off - notes[npos++] = event->deltaFrames; //delta - notes[npos++] = midiData[1] & 0x7F; //note - notes[npos++] = 0; //vel + noteOn(midiData[1] & 0x7F, 0); break; case 0x90: //note on - notes[npos++] = event->deltaFrames; //delta - notes[npos++] = midiData[1] & 0x7F; //note - notes[npos++] = midiData[2] & 0x7F; //vel + noteOn(midiData[1] & 0x7F, midiData[2] & 0x7F); break; case 0xB0: //controller @@ -559,9 +491,7 @@ int32_t mdaPiano::processEvents(LvzEvents* ev) sustain = midiData[2] & 0x40; if(sustain==0) { - notes[npos++] = event->deltaFrames; - notes[npos++] = SUSTAIN; //end all sustained notes - notes[npos++] = 0; + noteOn(SUSTAIN, 0); //end all sustained notes } break; @@ -583,10 +513,6 @@ int32_t mdaPiano::processEvents(LvzEvents* ev) default: break; } - if(npos>EVENTBUFFER) npos -= 3; //discard events if buffer full!! - event++; //? - } - notes[npos] = EVENTS_DONE; return 1; } diff --git a/src/mdaPiano.h b/src/mdaPiano.h index 1885671..bd6f82a 100644 --- a/src/mdaPiano.h +++ b/src/mdaPiano.h @@ -80,9 +80,7 @@ public: mdaPiano(audioMasterCallback audioMaster); ~mdaPiano(); - virtual void process(float **inputs, float **outputs, int32_t sampleframes); virtual void processReplacing(float **inputs, float **outputs, int32_t sampleframes); - virtual int32_t processEvents(LvzEvents* events); virtual void setProgram(int32_t program); virtual void setProgramName(char *name); @@ -102,7 +100,7 @@ public: virtual bool getVendorString (char* text); virtual bool getProductString (char* text); virtual int32_t getVendorVersion () {return 1;} - virtual int32_t canDo (char* text); + virtual int32_t canDo (const char* text); virtual int32_t getNumMidiInputChannels () { return 1; } @@ -110,6 +108,7 @@ public: void guiGetDisplay(int32_t index, char *label); private: + int32_t processEvent(const LV2_Atom_Event* ev); void update(); //my parameter update void noteOn(int32_t note, int32_t velocity); void fillpatch(int32_t p, const char *name, float p0, float p1, float p2, float p3, float p4, @@ -119,10 +118,6 @@ private: mdaPianoProgram* programs; float Fs, iFs; - #define EVENTBUFFER 120 - #define EVENTS_DONE 99999999 - int32_t notes[EVENTBUFFER + 8]; //list of delta|note|velocity for current block - ///global internal variables KGRP kgrp[16]; VOICE voice[NVOICES]; diff --git a/src/mdaRePsycho.cpp b/src/mdaRePsycho.cpp index 7a882ce..4469b49 100644 --- a/src/mdaRePsycho.cpp +++ b/src/mdaRePsycho.cpp @@ -35,7 +35,7 @@ mdaRePsycho::mdaRePsycho(audioMasterCallback audioMaster) : AudioEffectX(audioMa fParam4 = (float)1.0; //mix fParam5 = (float)0.45; //minimum chunk length fParam6 = (float)1.0; //fine tune - fParam7 = (float)0.4; //quality + fParam7 = (float)0.0; //quality size = 22050; buffer = new float[size]; buffer2 = new float[size]; @@ -168,7 +168,7 @@ void mdaRePsycho::getParameterDisplay(int32_t index, char *text) case 5: long2string((long)(100.0 * fParam4), text); break; case 4: long2string((long)(1000.0 * dtim / getSampleRate()), text); break; case 1: long2string((long)(int(99.0 * fParam6) - 99.0), text); break; - case 6: if(fParam7>0.5) strcpy(text, "HIGH"); + case 6: if(fParam7>0.0) strcpy(text, "HIGH"); else strcpy(text, "LOW"); break; } } @@ -207,7 +207,7 @@ void mdaRePsycho::process(float **inputs, float **outputs, int32_t sampleFrames) --out1; --out2; - if(fParam7>0.5) //high quality + if(fParam7>0.0) //high quality { we=(float)(we*2.0); while(--sampleFrames >= 0) @@ -338,7 +338,7 @@ void mdaRePsycho::processReplacing(float **inputs, float **outputs, int32_t samp --out1; --out2; - if(fParam7>0.5) //high quality + if(fParam7>0.0) //high quality { we=(float)(we*2.0); while(--sampleFrames >= 0) diff --git a/src/mdaRezFilter.cpp b/src/mdaRezFilter.cpp index d89f358..98d3da0 100644 --- a/src/mdaRezFilter.cpp +++ b/src/mdaRezFilter.cpp @@ -41,6 +41,10 @@ mdaRezFilter::mdaRezFilter(audioMasterCallback audioMaster) : AudioEffectX(audio fParam8 = 0.00f; //trigger fParam9 = 0.75f; //max freq + fff = fq = fg = fmax = env = fenv = att = rel = 0.0f; + flfo = phi = dphi = bufl = buf0 = buf1 = buf2 = tthr = env2 = 0.0f; + lfomode = ttrig = tatt = 0; + setNumInputs(2); setNumOutputs(2); setUniqueID("mdaRezFilter"); diff --git a/src/mdaSplitter.cpp b/src/mdaSplitter.cpp index d98d8ed..881c2ef 100644 --- a/src/mdaSplitter.cpp +++ b/src/mdaSplitter.cpp @@ -41,9 +41,9 @@ mdaSplitter::mdaSplitter(audioMasterCallback audioMaster): AudioEffectX(audioMas ///differences from default program... programs[1].param[2] = 0.50f; - programs[1].param[4] = 0.25f; + programs[1].param[4] = 0.0f; strcpy(programs[1].name,"Pass Peaks Only"); - programs[2].param[0] = 0.60f; + programs[2].param[0] = 0.66666666f; strcpy(programs[2].name,"Stereo Crossover"); setProgram(0); diff --git a/src/mdaSplitter.h b/src/mdaSplitter.h index 398b3ca..d2e237e 100644 --- a/src/mdaSplitter.h +++ b/src/mdaSplitter.h @@ -29,7 +29,7 @@ class mdaSplitterProgram public: mdaSplitterProgram() { - param[0] = 0.10f; //mode + param[0] = 0.00f; //mode param[1] = 0.50f; //freq param[2] = 0.25f; //freq mode param[3] = 0.50f; //level (was 2) diff --git a/src/mdaTestTone.cpp b/src/mdaTestTone.cpp index 9aa98b2..96eee47 100644 --- a/src/mdaTestTone.cpp +++ b/src/mdaTestTone.cpp @@ -28,7 +28,7 @@ AudioEffect *createEffectInstance(audioMasterCallback audioMaster) mdaTestTone::mdaTestTone(audioMasterCallback audioMaster) : AudioEffectX(audioMaster, 1, 8) { - fParam0 = 0.47f; //mode + fParam0 = 0.0f; //mode fParam1 = 0.71f; //level dB fParam2 = 0.50f; //pan dB fParam3 = 0.57f; //freq1 B diff --git a/src/mdaTracker.cpp b/src/mdaTracker.cpp index 7387a6b..f1c1d86 100644 --- a/src/mdaTracker.cpp +++ b/src/mdaTracker.cpp @@ -50,6 +50,10 @@ mdaTracker::mdaTracker(audioMasterCallback audioMaster) : AudioEffectX(audioMast res1 = (float)cos(0.01); //p res2 = (float)sin(0.01); //q + fi = fo = thr = phi = ddphi = trans = buf1 = buf2 = dn = bold = wet = dry = 0.0f; + dyn = env = rel = saw = dsaw = res1 = res2 = buf3 = buf4 = 0.0f; + max = min = num = sig = mode = 0; + setParameter(0, 0.0f); } diff --git a/src/mdaTransient.cpp b/src/mdaTransient.cpp index 0edb476..8f435a6 100644 --- a/src/mdaTransient.cpp +++ b/src/mdaTransient.cpp @@ -41,6 +41,8 @@ mdaTransient::mdaTransient(audioMasterCallback audioMaster) : AudioEffectX(audio canProcessReplacing(); // supports both accumulating and replacing output strcpy(programName, "Transient Processor"); // default program name + dry = att1 = att2 = rel12 = att34 = rel3 = rel4 = 0.0f; + env1 = env2 = env3 = env4 = fili = filo = filx = fbuf1 = fbuf2 = 0.0f; setParameter(0, 0.5f); } diff --git a/src/mdaVocInput.cpp b/src/mdaVocInput.cpp index e008f80..854a41e 100644 --- a/src/mdaVocInput.cpp +++ b/src/mdaVocInput.cpp @@ -30,7 +30,7 @@ AudioEffect *createEffectInstance(audioMasterCallback audioMaster) mdaVocInputProgram::mdaVocInputProgram() ///default program settings { - param[0] = 0.25f; //Tracking Off / On / Quant + param[0] = 0.0f; //Tracking Off / On / Quant param[1] = 0.50f; //Pitch param[2] = 0.20f; //Breath Noise param[3] = 0.50f; //Voiced/Unvoiced Thresh @@ -47,6 +47,11 @@ mdaVocInput::mdaVocInput(audioMasterCallback audioMaster): AudioEffectX(audioMas DECLARE_LVZ_DEPRECATED(canMono) (); canProcessReplacing(); + track = 0; + pstep = pmult = sawbuf = noise = lenv = henv = 0.0f; + lbuf0 = lbuf1 = lbuf2 = lbuf3 = lfreq = vuv = maxp = minp = 0.0f; + root = 0.0; + programs = new mdaVocInputProgram[numPrograms]; setProgram(0); diff --git a/src/mdaVocoder.cpp b/src/mdaVocoder.cpp index cb40eed..bbdb1a2 100644 --- a/src/mdaVocoder.cpp +++ b/src/mdaVocoder.cpp @@ -30,14 +30,14 @@ AudioEffect *createEffectInstance(audioMasterCallback audioMaster) mdaVocoderProgram::mdaVocoderProgram() ///default program settings { - param[0] = 0.33f; //input select + param[0] = 0.0f; //input select param[1] = 0.50f; //output dB param[2] = 0.40f; //hi thru param[3] = 0.40f; //hi band param[4] = 0.16f; //envelope param[5] = 0.55f; //filter q param[6] = 0.6667f;//freq range - param[7] = 0.33f; //num bands + param[7] = 0.0f; //num bands strcpy(name, "Vocoder"); } @@ -54,7 +54,7 @@ mdaVocoder::mdaVocoder(audioMasterCallback audioMaster): AudioEffectX(audioMaste setProgram(0); ///differences from default program... - programs[1].param[7] = 0.66f; + programs[1].param[7] = 1.0f; strcpy(programs[1].name,"16 Band Vocoder"); programs[2].param[2] = 0.00f; programs[2].param[3] = 0.00f; @@ -90,7 +90,7 @@ void mdaVocoder::resume() ///update internal parameters... high = param[3] * param[3] * param[3] * thru; thru *= param[2] * param[2] * param[2]; - if(param[7]<0.5f) + if(param[7]<=0.0f) { nbnd=8; //re=0.003f; @@ -4,11 +4,11 @@ import shutil from waflib.extras import autowaf as autowaf # Version of this package (even if built as a child) -MDALA_VERSION = '0.0.0' +MDA_VERSION = '1.0.0' # Variables for 'waf dist' -APPNAME = 'mda.lv2' -VERSION = MDALA_VERSION +APPNAME = 'mda-lv2' +VERSION = MDA_VERSION # Mandatory variables top = '.' @@ -24,7 +24,7 @@ def configure(conf): conf.line_just = 23 autowaf.display_header('MDA.lv2 Configuration') - autowaf.check_pkg(conf, 'lv2', atleast_version='0.5.0', uselib_store='LV2') + autowaf.check_pkg(conf, 'lv2', atleast_version='1.0.0', uselib_store='LV2') conf.env.append_unique('CFLAGS', '-std=c99') |