From 71b9c3ae5fb85414f56c152eaf9d075bbfc0f6ff Mon Sep 17 00:00:00 2001 From: David Robillard Date: Wed, 28 Mar 2012 00:19:37 +0000 Subject: Mark up control properties, port groups, and add documentation for plugins and ports. git-svn-id: http://svn.drobilla.net/lad/trunk/plugins/mdala.lv2@4118 a436a847-0d15-0410-975c-d299462d15a1 --- mdala.lv2/Bandisto.ttl | 53 +++++++++++++++++++++----- mdala.lv2/BeatBox.ttl | 49 ++++++++++++++++++++----- mdala.lv2/Combo.ttl | 53 +++++++++++++++++++++----- mdala.lv2/DX10.ttl | 21 +++++++++-- mdala.lv2/DeEss.ttl | 13 +++++-- mdala.lv2/Degrade.ttl | 18 ++++++--- mdala.lv2/Delay.ttl | 19 +++++++--- mdala.lv2/Detune.ttl | 14 +++++-- mdala.lv2/Dither.ttl | 37 +++++++++++++++++-- mdala.lv2/DubDelay.ttl | 22 +++++++---- mdala.lv2/Dynamics.ttl | 10 +++-- mdala.lv2/Image.ttl | 33 ++++++++++++++--- mdala.lv2/JX10.ttl | 98 +++++++++++++++++++++++++++++++++++++------------ mdala.lv2/Leslie.ttl | 39 +++++++++++++++----- mdala.lv2/Limiter.ttl | 20 ++++++++-- mdala.lv2/Loudness.ttl | 18 +++++++-- mdala.lv2/MultiBand.ttl | 49 +++++++++++++++++++------ mdala.lv2/Overdrive.ttl | 11 ++++-- mdala.lv2/Piano.ttl | 25 ++++++++++--- mdala.lv2/RePsycho.ttl | 30 +++++++++++---- mdala.lv2/RezFilter.ttl | 48 +++++++++++++++++++----- mdala.lv2/RingMod.ttl | 13 +++++-- mdala.lv2/RoundPan.ttl | 8 +++- mdala.lv2/Shepard.ttl | 22 +++++++++-- mdala.lv2/Splitter.ttl | 61 ++++++++++++++++++++++++++---- mdala.lv2/SubSynth.ttl | 42 ++++++++++++++++++--- mdala.lv2/TestTone.ttl | 59 +++++++++++++++++++++++++---- mdala.lv2/ThruZero.ttl | 19 +++++++--- mdala.lv2/Tracker.ttl | 45 +++++++++++++++++++---- mdala.lv2/VocInput.ttl | 28 +++++++++++--- mdala.lv2/Vocoder.ttl | 38 +++++++++++++++---- src/mdaBandisto.cpp | 8 ++-- src/mdaCombo.cpp | 8 ++-- src/mdaLimiter.cpp | 10 ++--- 34 files changed, 824 insertions(+), 217 deletions(-) diff --git a/mdala.lv2/Bandisto.ttl b/mdala.lv2/Bandisto.ttl index 29922ce..ed8e897 100644 --- a/mdala.lv2/Bandisto.ttl +++ b/mdala.lv2/Bandisto.ttl @@ -2,6 +2,8 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdf: . +@prefix rdfs: . mdala:Bandisto a lv2:Plugin , @@ -13,6 +15,7 @@ mdala:Bandisto lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment "This plug is like MultiBand but uses 3 bands of clipping instead of compression. This is unlikely to be a plug you use every day, but when you want to recreate the sound of torn bass-bins you know where to come!" ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -21,7 +24,22 @@ mdala:Bandisto lv2:symbol "listen" ; lv2:default 1 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; + lv2:scalePoint [ + rdfs:label "Low" ; + rdf:value 0.0 + ] , [ + rdfs:label "Mid" ; + rdf:value 0.2 + ] , [ + rdfs:label "High" ; + rdf:value 0.4 + ] , [ + rdfs:label "Out" ; + rdf:value 0.6 + ] ; + rdfs:comment "Audition the low, mid and high bands individually" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +48,8 @@ mdala:Bandisto lv2:symbol "l_m" ; lv2:default 0.4 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Low / mid crossover frequency" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +58,8 @@ mdala:Bandisto lv2:symbol "m_h" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Mid / high crossover frequency" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -48,7 +68,8 @@ mdala:Bandisto lv2:symbol "l_dist" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Distortion amount for low band" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -57,7 +78,8 @@ mdala:Bandisto lv2:symbol "m_dist" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Distortion amount for mid band" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -66,7 +88,8 @@ mdala:Bandisto lv2:symbol "h_dist" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Distortion amount for high band" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -75,7 +98,8 @@ mdala:Bandisto lv2:symbol "l_out" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Output level for low band" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -84,7 +108,8 @@ mdala:Bandisto lv2:symbol "m_out" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Output level for mid band" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -93,7 +118,8 @@ mdala:Bandisto lv2:symbol "h_out" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Output level for high band" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -102,7 +128,14 @@ mdala:Bandisto lv2:symbol "mode" ; lv2:default 0.4 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:scalePoint [ + rdfs:label "Bipolar" ; + rdf:value 0.0 + ] , [ + rdfs:label "Unipolar" ; + rdf:value 1.0 + ] ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/BeatBox.ttl b/mdala.lv2/BeatBox.ttl index 0692980..f9f1038 100644 --- a/mdala.lv2/BeatBox.ttl +++ b/mdala.lv2/BeatBox.ttl @@ -2,6 +2,8 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdf: . +@prefix rdfs: . mdala:BeatBox lv2:symbol "BBox" ; @@ -11,6 +13,9 @@ mdala:BeatBox lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment """Contains three samples (kick, snare and hat) designed to be triggered by incoming audio in three frequency ranges. The default samples are based on the Roland CR-78. + +To record your own sounds, use the Record control to monitor the plug's input, then with the source stopped select the slot to record into, play your sound, then with the source stopped again, switch back to monitoring. This process is easier in an 'off line' editor such as WaveLab, rather than during a live mixdown in Cubase.""" ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -19,7 +24,8 @@ mdala:BeatBox lv2:symbol "hat_thr" ; lv2:default 0.3 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Trigger threshold level" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -28,7 +34,8 @@ mdala:BeatBox lv2:symbol "hat_rate" ; lv2:default 0.45 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Maximum trigger rate" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -37,7 +44,8 @@ mdala:BeatBox lv2:symbol "hat_mix" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Sample playback level" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -46,7 +54,8 @@ mdala:BeatBox lv2:symbol "kik_thr" ; lv2:default 0.46 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment """Trigger filter frequency - switches to "key listen" mode while adjusted""" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -73,7 +82,8 @@ mdala:BeatBox lv2:symbol "snr_thr" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Trigger filter frequency - increase if snare sample is triggered by kick drum" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -98,18 +108,36 @@ mdala:BeatBox lv2:index 9 ; lv2:name "Dynamics" ; lv2:symbol "dynamics" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Apply input signal level variations to output" ] , [ a lv2:InputPort , lv2:ControlPort ; lv2:index 10 ; lv2:name "Record" ; lv2:symbol "record" ; - lv2:default 0 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; + lv2:scalePoint [ + rdfs:label "None" ; + rdf:value 0.0 + ] , [ + rdfs:label "Monitor Input" ; + rdf:value 0.2 + ] , [ + rdfs:label "Record Hat" ; + rdf:value 0.4 + ] , [ + rdfs:label "Record Kick" ; + rdf:value 0.6 + ] , [ + rdfs:label "Record Snare" ; + rdf:value 0.8 + ] ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -118,7 +146,8 @@ mdala:BeatBox lv2:symbol "thru_mix" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Allow some of the input signal to be mixed with the output" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/Combo.ttl b/mdala.lv2/Combo.ttl index 8daee00..d82f516 100644 --- a/mdala.lv2/Combo.ttl +++ b/mdala.lv2/Combo.ttl @@ -2,6 +2,8 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdf: . +@prefix rdfs: . mdala:Combo a lv2:Plugin , @@ -13,6 +15,7 @@ mdala:Combo lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment "This plug-in can sound quite subtle but comes alive when used on guitar with the drive turned up! Remember that distortion may not sound good on time-based effects such as delay and reverb, so put those effects after this plug, or after a separate distortion plug with Combo acting only as a speaker simulator." ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -21,7 +24,30 @@ mdala:Combo lv2:symbol "model" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; + lv2:scalePoint [ + rdfs:label "D.I. (flat frequency response)" ; + rdf:value 0.0 + ] , [ + rdfs:label "Tradtional speaker simulator" ; + rdf:value 1.0 + ] , [ + rdfs:label "Small radio speaker" ; + rdf:value 2.0 + ] , [ + rdfs:label "Small combo (close mic)" ; + rdf:value 3.0 + ] , [ + rdfs:label "Small combo (far mic)" ; + rdf:value 4.0 + ] , [ + rdfs:label "Large stack (front mic)" ; + rdf:value 5.0 + ] , [ + rdfs:label "Large stack (side mic, scooped mids)" ; + rdf:value 6.0 + ] ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +56,8 @@ mdala:Combo lv2:symbol "drive" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Amount of clipping" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +66,8 @@ mdala:Combo lv2:symbol "bias" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment """Clip one side of the waveform more than the other for rougher or "gated" effects (use an oscilloscope plug-in to see what's happening)""" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -48,16 +76,19 @@ mdala:Combo lv2:symbol "output" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Level trim" ] , [ a lv2:InputPort , lv2:ControlPort ; lv2:index 4 ; - lv2:name "Process" ; - lv2:symbol "process" ; - lv2:default 0.4 ; + lv2:name "Stereo" ; + lv2:symbol "stereo" ; + lv2:default 0.0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:portProperty lv2:toggled ; + rdfs:comment "Process in stereo. Defaults to Mono to reduce processor usage." ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -66,7 +97,8 @@ mdala:Combo lv2:symbol "hpf_freq" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "High-Pass Filter Cutoff Frequency" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -75,7 +107,8 @@ mdala:Combo lv2:symbol "hpf_reso" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "High-Pass Filter Resonance" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/DX10.ttl b/mdala.lv2/DX10.ttl index 7f004d2..c1d5298 100644 --- a/mdala.lv2/DX10.ttl +++ b/mdala.lv2/DX10.ttl @@ -1,7 +1,15 @@ @prefix doap: . @prefix lv2: . @prefix mdala: . +@prefix param: . @prefix pg: . +@prefix rdfs: . + + + a param:EnvelopeControls , + pg:InputGroup ; + lv2:name "Envelope" ; + lv2:symbol "env" . mdala:DX10 a lv2:Plugin , @@ -12,6 +20,7 @@ mdala:DX10 lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala: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.""" ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -20,7 +29,9 @@ mdala:DX10 lv2:symbol "attack" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:attack ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -29,7 +40,9 @@ mdala:DX10 lv2:symbol "decay" ; lv2:default 0.65 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:decay ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -38,7 +51,9 @@ mdala:DX10 lv2:symbol "release" ; lv2:default 0.441 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:release ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; diff --git a/mdala.lv2/DeEss.ttl b/mdala.lv2/DeEss.ttl index 7bb845b..2d9ac76 100644 --- a/mdala.lv2/DeEss.ttl +++ b/mdala.lv2/DeEss.ttl @@ -2,6 +2,7 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdfs: . mdala:DeEss a lv2:Plugin , @@ -13,6 +14,9 @@ mdala:DeEss lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment """Reduce excessive sibilants (/s/ /t/ /sh/ etc.) in vocals and speech. + +For stronger de-essing you may want to use two plug-ins in series, or apply processing twice.""" ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -21,7 +25,8 @@ mdala:DeEss lv2:symbol "thresh" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Set maximum level for high frequencies" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +35,8 @@ mdala:DeEss lv2:symbol "freq" ; lv2:default 0.6 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Lowest frequency affected (a HF shelf is used for stronger de-essing than designs that work on a frequency band)" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +45,8 @@ mdala:DeEss lv2:symbol "hf_drive" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Boost high frequencies before de-essing - can be used to enhance breathy vocals" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/Degrade.ttl b/mdala.lv2/Degrade.ttl index a8eab58..b128c3e 100644 --- a/mdala.lv2/Degrade.ttl +++ b/mdala.lv2/Degrade.ttl @@ -2,6 +2,7 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdfs: . mdala:Degrade a lv2:Plugin , @@ -21,7 +22,8 @@ mdala:Degrade lv2:symbol "headroom" ; lv2:default 0.8 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Peak clipping threshold" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +32,8 @@ mdala:Degrade lv2:symbol "quant" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment """Bit depth (typically 8 or below for "telephone" quality)""" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,16 +42,18 @@ mdala:Degrade lv2:symbol "rate" ; lv2:default 0.65 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Sample Rate (turn control to left or right for different sound characters)" ] , [ a lv2:InputPort , lv2:ControlPort ; lv2:index 3 ; - lv2:name "PostFilt" ; + lv2:name "Post Filter" ; lv2:symbol "post_filt" ; lv2:default 0.9 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Low-pass filter to muffle the distortion produced by the previous two controls" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -57,7 +62,8 @@ mdala:Degrade lv2:symbol "non_lin" ; lv2:default 0.58 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment """Additional harmonic distortion "thickening" (turn control to left or right for different sound characters)""" ] , [ a lv2:InputPort , lv2:ControlPort ; diff --git a/mdala.lv2/Delay.ttl b/mdala.lv2/Delay.ttl index f3db00f..0d553b2 100644 --- a/mdala.lv2/Delay.ttl +++ b/mdala.lv2/Delay.ttl @@ -2,6 +2,7 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdfs: . mdala:Delay a lv2:Plugin , @@ -21,7 +22,8 @@ mdala:Delay lv2:symbol "l_delay" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Left channel delay time" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +32,8 @@ mdala:Delay lv2:symbol "r_delay" ; lv2:default 0.27 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Right channel delay as a percentage of left channel delay - variable to left, fixed ratios to right" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +42,8 @@ mdala:Delay lv2:symbol "feedback" ; lv2:default 0.7 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Feedback (sum of left and right outputs)" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -48,7 +52,8 @@ mdala:Delay lv2:symbol "fb_tone" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Feedback filtering - low-pass to left, high-pass to right" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -57,7 +62,8 @@ mdala:Delay lv2:symbol "fx_mix" ; lv2:default 0.33 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Wet / dry mix" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -66,7 +72,8 @@ mdala:Delay lv2:symbol "output" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Level trim" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/Detune.ttl b/mdala.lv2/Detune.ttl index 129678f..16c8b87 100644 --- a/mdala.lv2/Detune.ttl +++ b/mdala.lv2/Detune.ttl @@ -2,6 +2,7 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdfs: . mdala:Detune a lv2:Plugin , @@ -13,6 +14,7 @@ mdala:Detune lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment "A low-quality stereo pitch shifter for the sort of chorus and detune effects found on multi-effects hardware." ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -21,7 +23,8 @@ mdala:Detune lv2:symbol "detune" ; lv2:default 0.2 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Detune amount in cents (left channel is lowered in pitch, right channel is raised)" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +33,8 @@ mdala:Detune lv2:symbol "mix" ; lv2:default 0.9 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Wet / dry mix" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +43,8 @@ mdala:Detune lv2:symbol "output" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Level trim" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -48,7 +53,8 @@ mdala:Detune lv2:symbol "latency" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Trade-off between latency and low-frequency response" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/Dither.ttl b/mdala.lv2/Dither.ttl index 89a8b27..7f6faf2 100644 --- a/mdala.lv2/Dither.ttl +++ b/mdala.lv2/Dither.ttl @@ -2,6 +2,8 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdf: . +@prefix rdfs: . mdala:Dither a lv2:Plugin , @@ -13,6 +15,17 @@ mdala:Dither lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment """When a waveform is rounded to the nearest 16 (or whatever)-bit value this causes distortion. Dither allows you to exchange this rough sounding signal-dependant distortion for a smooth background hiss. + +Some sort of dither should always be used when reducing the word length of digital audio, such as from 24-bit to 16-bit. In many cases the background noise in a recording will act as dither, but dither will still be required on fades and on very clean recordings such as purely synthetic sources. + +Noise shaping makes the background hiss of dither sound quieter, but adds more high-frequency noise than 'ordinary' dither. This high frequency noise can be a problem if a recording is later processed in any way (including gain changes) especially if noise shaping is applied a second time. + +If you are producing an absolutely final master at 16 bits or less, use noise shaped dither. In all other situations use a non-noise-shaped dither such as high-pass-triangular. When mastering for MP3 or other compressed formats be aware that noise shaping may take some of the encoder's 'attention' away from the real signal at high frequencies. + +No gain changes should be applied after this plug-in. Make sure any master output fader is set to 0.0 dB in the host application. + +Very technical note This plug-in follows Steinberg's convention that a signal level of 1.0 corresponds to a 16-bit output of 32768. If your host application does not allow this exact gain setting the effectiveness of dither may be reduced (check for harmonic distortion of a 1 kHz sine wave using a spectrum analyser).""" ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +43,20 @@ mdala:Dither lv2:symbol "dither" ; lv2:default 0.88 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:scalePoint [ + rdfs:label "Truncation" ; + rdf:value 0.0 + ] , [ + rdfs:label "Triangular PDF dither" ; + rdf:value 0.25 + ] , [ + rdfs:label "High-pass Triangular PDF dither" ; + rdf:value 0.5 + ] , [ + rdfs:label "Second-order noise-shaped dither" ; + rdf:value 0.75 + ] ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +65,8 @@ mdala:Dither lv2:symbol "dith_amp" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment """Dither amplitude - can be turned down to reduce background hiss at the expense of dither level "pumping" caused by the input signal type and level""" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -48,7 +75,8 @@ mdala:Dither lv2:symbol "dc_trim" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Fine tune DC offset - can help get best dither sound for silent or very quiet inputs" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -57,7 +85,8 @@ mdala:Dither lv2:symbol "zoom" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.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""" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/DubDelay.ttl b/mdala.lv2/DubDelay.ttl index e3532a9..7317138 100644 --- a/mdala.lv2/DubDelay.ttl +++ b/mdala.lv2/DubDelay.ttl @@ -2,6 +2,7 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdfs: . mdala:DubDelay a lv2:Plugin , @@ -21,7 +22,8 @@ mdala:DubDelay lv2:symbol "delay" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Delay time (delay is mono for authenticity!)" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +32,8 @@ mdala:DubDelay lv2:symbol "feedback" ; lv2:default 0.7 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Feedback - with soft saturation at maximum left position, hard clipping at maximum right" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +42,8 @@ mdala:DubDelay lv2:symbol "fb_tone" ; lv2:default 0.4 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Feedback filtering - low-pass to left, high-pass to right" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -48,7 +52,8 @@ mdala:DubDelay lv2:symbol "lfo_depth" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Delay time modulation (sine wave)" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -57,7 +62,8 @@ mdala:DubDelay lv2:symbol "lfo_rate" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Modulation rate" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -66,7 +72,8 @@ mdala:DubDelay lv2:symbol "fx_mix" ; lv2:default 0.33 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Wet / dry mix" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -75,7 +82,8 @@ mdala:DubDelay lv2:symbol "output" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Level trim" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/Dynamics.ttl b/mdala.lv2/Dynamics.ttl index cbd23c7..e6c858f 100644 --- a/mdala.lv2/Dynamics.ttl +++ b/mdala.lv2/Dynamics.ttl @@ -2,6 +2,7 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdfs: . mdala:Dynamics a lv2:Plugin , @@ -30,7 +31,8 @@ mdala:Dynamics lv2:symbol "ratio" ; lv2:default 0.4 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment """Very wide range allows "overcompression" where output gets quieter as input gets louder""" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +41,8 @@ mdala:Dynamics lv2:symbol "output" ; lv2:default 0.1 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Level trim" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -66,7 +69,8 @@ mdala:Dynamics lv2:symbol "limiter" ; lv2:default 1 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Limiter threshold - the limiter has zero attack time but uses the same release time as the compressor" ] , [ a lv2:InputPort , lv2:ControlPort ; diff --git a/mdala.lv2/Image.ttl b/mdala.lv2/Image.ttl index e3b8988..343b09c 100644 --- a/mdala.lv2/Image.ttl +++ b/mdala.lv2/Image.ttl @@ -2,6 +2,8 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdf: . +@prefix rdfs: . mdala:Image a lv2:Plugin , @@ -13,6 +15,7 @@ mdala:Image lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment "Allows the level and pan of mono and stereo components to be adjusted separately, or components to be separated for individual processing before recombining with a second Image plug-in." ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -21,7 +24,20 @@ mdala:Image lv2:symbol "mode" ; lv2:default 0.6 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:scalePoint [ + rdfs:label "Stereo image adjustment" ; + rdf:value 0.0 + ] , [ + rdfs:label "Encode to MS" ; + rdf:value 0.25 + ] , [ + rdfs:label "Decode from MS" ; + rdf:value 0.5 + ] , [ + rdfs:label "Decode from MS (input channels reversed)" ; + rdf:value 0.75 + ] ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +46,8 @@ mdala:Image lv2:symbol "s_width" ; lv2:default 0.75 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Stereo width (level of stereo component)" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +56,8 @@ mdala:Image lv2:symbol "s_pan" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Stereo image skew" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -48,7 +66,8 @@ mdala:Image lv2:symbol "m_level" ; lv2:default 0.75 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Centre depth" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -57,7 +76,8 @@ mdala:Image lv2:symbol "m_pan" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Centre pan" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -66,7 +86,8 @@ mdala:Image lv2:symbol "output" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Level trim (a 6dB correction may be required for some MS encoded material)" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/JX10.ttl b/mdala.lv2/JX10.ttl index 2c37faa..c5f905b 100644 --- a/mdala.lv2/JX10.ttl +++ b/mdala.lv2/JX10.ttl @@ -1,7 +1,22 @@ @prefix doap: . @prefix lv2: . @prefix mdala: . +@prefix param: . @prefix pg: . +@prefix rdfs: . +@prefix units: . + + + a param:EnvelopeControls , + pg:InputGroup ; + lv2:name "Filter Envelope" ; + lv2:symbol "filt_env" . + + + a param:EnvelopeControls , + pg:InputGroup ; + lv2:name "Amp Envelope" ; + lv2:symbol "amp_env" . mdala:JX10 a lv2:Plugin , @@ -12,6 +27,8 @@ mdala:JX10 lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala: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. + """ ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -20,7 +37,8 @@ mdala:JX10 lv2:symbol "osc_mix" ; lv2:default 1 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Level of second oscillator" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -29,7 +47,9 @@ mdala:JX10 lv2:symbol "osc_tune" ; lv2:default 0.37 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + units:unit units:semitone12TET ; + rdfs:comment "Tuning of second oscillator in semitones" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -38,7 +58,9 @@ mdala:JX10 lv2:symbol "osc_fine" ; lv2:default 0.25 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + units:unit units:cent ; + rdfs:comment "Tuning of second oscillator in cents" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -56,7 +78,8 @@ mdala:JX10 lv2:symbol "gld_rate" ; lv2:default 0.32 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Pitch glide rate" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -65,7 +88,8 @@ mdala:JX10 lv2:symbol "gld_bend" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Initial pitch-glide offset, for pitch-envelope effects" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -74,7 +98,8 @@ mdala:JX10 lv2:symbol "vcf_freq" ; lv2:default 0.9 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:cutoffFrequency ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -83,7 +108,8 @@ mdala:JX10 lv2:symbol "vcf_reso" ; lv2:default 0.6 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:resonance ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -92,7 +118,8 @@ mdala:JX10 lv2:symbol "vcf_env" ; lv2:default 0.12 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Cutoff modulation by VCF envelope" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -101,7 +128,8 @@ mdala:JX10 lv2:symbol "vcf_lfo" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Cutoff modulation by LFO" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -110,7 +138,8 @@ mdala:JX10 lv2:symbol "vcf_vel" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Cutoff modulation by velocity" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -119,7 +148,9 @@ mdala:JX10 lv2:symbol "vcf_att" ; lv2:default 0.9 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:attack ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -128,7 +159,9 @@ mdala:JX10 lv2:symbol "vcf_dec" ; lv2:default 0.89 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:decay ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -137,7 +170,9 @@ mdala:JX10 lv2:symbol "vcf_sus" ; lv2:default 0.9 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:sustain ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -146,7 +181,9 @@ mdala:JX10 lv2:symbol "vcf_rel" ; lv2:default 0.73 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:release ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -155,7 +192,9 @@ mdala:JX10 lv2:symbol "env_att" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:attack ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -164,7 +203,9 @@ mdala:JX10 lv2:symbol "env_dec" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:decay ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -173,7 +214,9 @@ mdala:JX10 lv2:symbol "env_sus" ; lv2:default 1 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:sustain ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -182,7 +225,9 @@ mdala:JX10 lv2:symbol "env_rel" ; lv2:default 0.71 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:release ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -191,7 +236,8 @@ mdala:JX10 lv2:symbol "lfo_rate" ; lv2:default 0.81 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "LFO rate (sine wave only)" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -200,7 +246,8 @@ mdala:JX10 lv2:symbol "vibrato" ; lv2:default 0.65 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "LFO modulation of pitch - turn to left for PWM effects" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -209,7 +256,8 @@ mdala:JX10 lv2:symbol "noise" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "White noise mix" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -218,7 +266,9 @@ mdala:JX10 lv2:symbol "octave" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + units:unit units:oct ; + rdfs:comment "Master tuning in octaves" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -227,7 +277,9 @@ mdala:JX10 lv2:symbol "tuning" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + units:unit units:cent ; + rdfs:comment "Master tuning in cents" ] , [ a lv2:OutputPort , lv2:AudioPort ; diff --git a/mdala.lv2/Leslie.ttl b/mdala.lv2/Leslie.ttl index d7cedae..f599d34 100644 --- a/mdala.lv2/Leslie.ttl +++ b/mdala.lv2/Leslie.ttl @@ -2,6 +2,8 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdf: . +@prefix rdfs: . mdala:Leslie a lv2:Plugin , @@ -13,6 +15,7 @@ mdala:Leslie lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment "No overdrive or speaker cabinet simulation is added - you may want to combine this plug-in with Combo. For a much thicker sound try combining two Leslie plug-ins in series!" ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -21,7 +24,17 @@ mdala:Leslie lv2:symbol "mode" ; lv2:default 0.66 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:scalePoint [ + rdfs:label "Stop" ; + rdf:value 0.0 + ] , [ + rdfs:label "Slow" ; + rdf:value 0.5 + ] , [ + rdfs:label "Fast" ; + rdf:value 1.0 + ] ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +43,8 @@ mdala:Leslie lv2:symbol "lo_width" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Low rotor pan modulation" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +53,8 @@ mdala:Leslie lv2:symbol "lo_throb" ; lv2:default 0.6 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Low rotor amplitude modulation" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -48,7 +63,8 @@ mdala:Leslie lv2:symbol "hi_width" ; lv2:default 0.7 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "High rotor pan modulation" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -57,7 +73,8 @@ mdala:Leslie lv2:symbol "hi_depth" ; lv2:default 0.6 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "High rotor frequency modulation (doppler)" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -66,7 +83,8 @@ mdala:Leslie lv2:symbol "hi_throb" ; lv2:default 0.7 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "High rotor amplitude modulation" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -75,7 +93,8 @@ mdala:Leslie lv2:symbol "x_over" ; lv2:default 0.48 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Crossover frequency between high and low rotors" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -84,7 +103,8 @@ mdala:Leslie lv2:symbol "output" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Level trim" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -93,7 +113,8 @@ mdala:Leslie lv2:symbol "speed" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Fine control for rotor speed" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/Limiter.ttl b/mdala.lv2/Limiter.ttl index 0303fcb..3152ba4 100644 --- a/mdala.lv2/Limiter.ttl +++ b/mdala.lv2/Limiter.ttl @@ -2,6 +2,8 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdf: . +@prefix rdfs: . mdala:Limiter a lv2:Plugin , @@ -21,7 +23,8 @@ mdala:Limiter lv2:symbol "thresh" ; lv2:default 0.6 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Threshold (this is not a brickwall limiter so this is only approximate)" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +33,8 @@ mdala:Limiter lv2:symbol "output" ; lv2:default 0.6 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Level trim" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -55,9 +59,17 @@ mdala:Limiter lv2:index 4 ; lv2:name "Knee" ; lv2:symbol "knee" ; - lv2:default 0.4 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; + lv2:scalePoint [ + rdfs:label "Hard" ; + rdf:value 0.0 + ] , [ + rdfs:label "Soft" ; + rdf:value 1.0 + ] ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/Loudness.ttl b/mdala.lv2/Loudness.ttl index 12ec6eb..ea00356 100644 --- a/mdala.lv2/Loudness.ttl +++ b/mdala.lv2/Loudness.ttl @@ -2,6 +2,7 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdfs: . mdala:Loudness a lv2:Plugin , @@ -13,6 +14,14 @@ mdala:Loudness lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment """The ear is less sensitive to low frequencies when listening at low volume. This plug-in is based on the Stevens-Davis equal loudness contours and allows the bass level to be adjusted to simulate or correct for this effect. + +Example uses: + +If a mix was made with a very low or very high monitoring level, the amount of bass can sound wrong at a normal monitoring level. Use Loudness to adjust the bass content. +Check how a mix would sound at a much louder level by decreasing Loudness. (although the non-linear behaviour of the ear at very high levels is not simulated by this plug-in). + +Fade out without the sound becoming "tinny" by activating Link and using Loudness to adjust the level without affecting the tonal balance.""" ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -21,7 +30,8 @@ mdala:Loudness lv2:symbol "loudness" ; lv2:default 0.7 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Source level relative to listening level (based on a 100 dB SPL maximum level)" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +40,8 @@ mdala:Loudness lv2:symbol "output" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Level trim" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +50,8 @@ mdala:Loudness lv2:symbol "link" ; lv2:default 0.35 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Automatically adjusts Output to maintain a consistent tonal balance at all levels" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/MultiBand.ttl b/mdala.lv2/MultiBand.ttl index cd3ceec..418c1fd 100644 --- a/mdala.lv2/MultiBand.ttl +++ b/mdala.lv2/MultiBand.ttl @@ -1,7 +1,15 @@ @prefix doap: . @prefix lv2: . @prefix mdala: . +@prefix param: . @prefix pg: . +@prefix rdfs: . + + + a param:EnvelopeControls , + pg:InputGroup ; + lv2:name "Envelope" ; + lv2:symbol "env" . mdala:MultiBand a lv2:Plugin , @@ -13,6 +21,9 @@ mdala:MultiBand lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment """As well as just "squashing everything" this plug-in can be used to "overcook" the mid-frequencies while leaving the low end unprocessed, enhancing playback over small speakers without affecting the overall sound too much. + +To give more control when mastering (and to offer something different from other dynamics processors) in Mono mode this plug does not compress any stereo information, but in Stereo mode only the stereo component is processed giving control over ambience and space with a similar sound to strereo "shufflers" - but be careful with the levels! The stereo width control works as a "mono depth" control in Stereo mode.""" ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -21,7 +32,8 @@ mdala:MultiBand lv2:symbol "listen" ; lv2:default 1 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Audition the low, mid and high bands individually" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +42,8 @@ mdala:MultiBand lv2:symbol "l_m" ; lv2:default 0.103 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Low / mid crossover frequency" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +52,8 @@ mdala:MultiBand lv2:symbol "m_h" ; lv2:default 0.878 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Mid / high crossover frequency" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -48,7 +62,8 @@ mdala:MultiBand lv2:symbol "l_comp" ; lv2:default 0.54 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Low compression amount" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -57,7 +72,8 @@ mdala:MultiBand lv2:symbol "m_comp" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Mid compression amount" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -66,7 +82,8 @@ mdala:MultiBand lv2:symbol "h_comp" ; lv2:default 0.6 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "High compression amount" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -75,7 +92,8 @@ mdala:MultiBand lv2:symbol "l_out" ; lv2:default 0.45 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Low output level trim" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -84,7 +102,8 @@ mdala:MultiBand lv2:symbol "m_out" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Mid output level trim" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -93,7 +112,8 @@ mdala:MultiBand lv2:symbol "h_out" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "High output level trim" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -102,7 +122,9 @@ mdala:MultiBand lv2:symbol "attack" ; lv2:default 0.22 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:attack ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -111,7 +133,9 @@ mdala:MultiBand lv2:symbol "release" ; lv2:default 0.602 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:release ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -120,7 +144,8 @@ mdala:MultiBand lv2:symbol "stereo" ; lv2:default 0.55 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Used to restore stereo width when heavy processing is applied to Mono component" ] , [ a lv2:InputPort , lv2:ControlPort ; diff --git a/mdala.lv2/Overdrive.ttl b/mdala.lv2/Overdrive.ttl index 04b27c5..641ee7a 100644 --- a/mdala.lv2/Overdrive.ttl +++ b/mdala.lv2/Overdrive.ttl @@ -2,6 +2,7 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdfs: . mdala:Overdrive a lv2:Plugin , @@ -13,6 +14,7 @@ mdala:Overdrive lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment "Possible uses include adding body to drum loops, fuzz guitar, and that 'standing outside a nightclub' sound. This plug does not simulate valve distortion, and any attempt to process organ sounds through it will be extremely unrewarding!" ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -21,7 +23,8 @@ mdala:Overdrive lv2:symbol "drive" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Amount of distortion" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +33,8 @@ mdala:Overdrive lv2:symbol "muffle" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Gentle low-pass filter" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +43,8 @@ mdala:Overdrive lv2:symbol "output" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Level trim" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/Piano.ttl b/mdala.lv2/Piano.ttl index 1e399a5..73afebf 100644 --- a/mdala.lv2/Piano.ttl +++ b/mdala.lv2/Piano.ttl @@ -1,7 +1,15 @@ @prefix doap: . @prefix lv2: . @prefix mdala: . +@prefix param: . @prefix pg: . +@prefix rdfs: . + + + a param:EnvelopeControls , + pg:InputGroup ; + lv2:name "Envelope" ; + lv2:symbol "env" . mdala:Piano a lv2:Plugin , @@ -20,7 +28,9 @@ mdala:Piano lv2:symbol "envelope_decay" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:decay ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -29,7 +39,9 @@ mdala:Piano lv2:symbol "envelope_release" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:release ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -38,7 +50,8 @@ mdala:Piano lv2:symbol "hardness_offset" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment """Adjusts sample keyranges up or down to change the "size" and brightness of the piano. Use "V" slider to adjust velocity control""" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -74,7 +87,8 @@ mdala:Piano lv2:symbol "velocity_sensitivity" ; lv2:default 0.376 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment """Velocity curve: Mid point is normal "square law" response""" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -92,7 +106,8 @@ mdala:Piano lv2:symbol "polyphony" ; lv2:default 0.33 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:portProperty lv2:integer ] , [ a lv2:InputPort , lv2:ControlPort ; diff --git a/mdala.lv2/RePsycho.ttl b/mdala.lv2/RePsycho.ttl index 8fa58aa..c0ad332 100644 --- a/mdala.lv2/RePsycho.ttl +++ b/mdala.lv2/RePsycho.ttl @@ -2,6 +2,8 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdfs: . +@prefix units: . mdala:RePsycho a lv2:Plugin , @@ -13,6 +15,11 @@ mdala:RePsycho lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment """Event-based pitch shifter + +Chops audio into individual beats and shifts each beat downwards in pitch. Only allowing downwards shifts helps keep timing very tight - depending on complexity, whole rhythm sections can be shifted! + +Alternative uses include a triggered flanger or sub-octave doubler (both with mix set to 50% or less) and a swing quantizer (with a high threshold so not all beats trigger).""" ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -21,7 +28,9 @@ mdala:RePsycho lv2:symbol "tune" ; lv2:default 1 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + units:unit units:semitone ; + rdfs:comment "Coarse tune (semitones)" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +39,9 @@ mdala:RePsycho lv2:symbol "fine" ; lv2:default 1 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + units:unit units:cent ; + rdfs:comment "Fine tune (cents)" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +50,8 @@ mdala:RePsycho lv2:symbol "decay" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Adjust envelope of each chunk (a fast decay can be useful while setting up)" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -48,7 +60,8 @@ mdala:RePsycho lv2:symbol "thresh" ; lv2:default 0.6 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Trigger level to divide the input into chunks" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -57,7 +70,8 @@ mdala:RePsycho lv2:symbol "hold" ; lv2:default 0.45 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Minimum chunk length" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -66,7 +80,8 @@ mdala:RePsycho lv2:symbol "mix" ; lv2:default 1 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Mix original signal with output" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -75,7 +90,8 @@ mdala:RePsycho lv2:symbol "quality" ; lv2:default 0.4 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "The High setting uses smoother pitch-shifting and allows processing of stereo signals" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/RezFilter.ttl b/mdala.lv2/RezFilter.ttl index 5b0605c..3fa1845 100644 --- a/mdala.lv2/RezFilter.ttl +++ b/mdala.lv2/RezFilter.ttl @@ -1,7 +1,21 @@ @prefix doap: . @prefix lv2: . @prefix mdala: . +@prefix param: . @prefix pg: . +@prefix rdfs: . + + + a param:EnvelopeControls , + pg:InputGroup ; + lv2:name "Envelope" ; + lv2:symbol "env" . + + + a param:FilterControls , + pg:InputGroup ; + lv2:name "Filter" ; + lv2:symbol "filt" . mdala:RezFilter a lv2:Plugin , @@ -21,7 +35,9 @@ mdala:RezFilter lv2:symbol "freq" ; lv2:default 0.33 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:cutoffFrequency ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +46,9 @@ mdala:RezFilter lv2:symbol "res" ; lv2:default 0.7 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:resonance ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +57,8 @@ mdala:RezFilter lv2:symbol "output" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Level trim" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -48,7 +67,8 @@ mdala:RezFilter lv2:symbol "env_vcf" ; lv2:default 0.85 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Positive or negative (squelchy!) envelope modulation of cut-off frequency" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -57,7 +77,9 @@ mdala:RezFilter lv2:symbol "attack" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:attack ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -66,7 +88,9 @@ mdala:RezFilter lv2:symbol "release" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:release ; + pg:group ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -75,7 +99,8 @@ mdala:RezFilter lv2:symbol "lfo_vcf" ; lv2:default 0.7 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "LFO modulation of cut-off frequency (turn to left for sample & hold LFO, right for sine)" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -84,7 +109,8 @@ mdala:RezFilter lv2:symbol "lfo_rate" ; lv2:default 0.4 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "LFO modulation speed" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -93,7 +119,8 @@ mdala:RezFilter lv2:symbol "trigger" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Envelope trigger level (normally set to minimum to acts as a free-running envelope follower)" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -102,7 +129,8 @@ mdala:RezFilter lv2:symbol "max_freq" ; lv2:default 0.75 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment """Limit maximum cut-off frequency for a mellower sound (the filter can sound "screechy" at high frequencies)""" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/RingMod.ttl b/mdala.lv2/RingMod.ttl index 583dbc1..dfff138 100644 --- a/mdala.lv2/RingMod.ttl +++ b/mdala.lv2/RingMod.ttl @@ -2,6 +2,7 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdfs: . mdala:RingMod a lv2:Plugin , @@ -13,6 +14,9 @@ mdala:RingMod lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment """Simple ring modulator with sine-wave oscillator. + +Can be used as a high-frequency enhancer for drum sounds (when mixed with the original), adding dissonance to pitched material, and severe tremolo (at low frequency settings).""" ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -21,7 +25,8 @@ mdala:RingMod lv2:symbol "freq" ; lv2:default 0.0625 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Set oscillator frequency in 100Hz steps" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +35,8 @@ mdala:RingMod lv2:symbol "fine" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Oscillator frequency fine tune" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +45,8 @@ mdala:RingMod lv2:symbol "feedback" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment """Amount of feedback for "harsh" sound""" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/RoundPan.ttl b/mdala.lv2/RoundPan.ttl index 4d0bf1a..c8210d3 100644 --- a/mdala.lv2/RoundPan.ttl +++ b/mdala.lv2/RoundPan.ttl @@ -2,6 +2,7 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdfs: . mdala:RoundPan a lv2:Plugin , @@ -13,6 +14,7 @@ mdala:RoundPan lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment "Like all 3D processes the result depends on where you sit relative to the speakers, and mono compatibility is not guaranteed. This plug-in must be used in a stereo channel or bus!" ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -21,7 +23,8 @@ mdala:RoundPan lv2:symbol "pan" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Fixed pan position (when Auto = 0)" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +33,8 @@ mdala:RoundPan lv2:symbol "auto" ; lv2:default 0.8 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Autopan rate (turn to left for anticlockwise, right for clockwise)" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/Shepard.ttl b/mdala.lv2/Shepard.ttl index 7f6f988..bd57334 100644 --- a/mdala.lv2/Shepard.ttl +++ b/mdala.lv2/Shepard.ttl @@ -2,6 +2,7 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdf: . @prefix rdfs: . mdala:Shepard @@ -14,15 +15,27 @@ mdala:Shepard lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment """This plug-in actually generates "Risset tones". Discrete stepping "Shepard tones" will hopefully be included in a future version.""" ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; lv2:index 0 ; lv2:name "Mode" ; lv2:symbol "mode" ; - lv2:default 0.2 ; + lv2:default 0.0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; + lv2:scalePoint [ + rdfs:label "Tones only" ; + rdf:value 0.0 + ] , [ + rdfs:label "Input ring modulated by tones" ; + rdf:value 0.5 + ] , [ + rdfs:label "Tones mixed with input" ; + rdf:value 1.0 + ] ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -32,7 +45,7 @@ mdala:Shepard lv2:default 0.7 ; lv2:minimum 0.0 ; lv2:maximum 1.0 ; - rdfs:comment "Rate of tone increase." + rdfs:comment "Speed of rising (right) or falling (left)" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -41,7 +54,8 @@ mdala:Shepard lv2:symbol "output" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Level trim" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/Splitter.ttl b/mdala.lv2/Splitter.ttl index f7c7ebf..a9a5945 100644 --- a/mdala.lv2/Splitter.ttl +++ b/mdala.lv2/Splitter.ttl @@ -2,6 +2,8 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdf: . +@prefix rdfs: . mdala:Splitter a lv2:Plugin , @@ -13,6 +15,7 @@ mdala:Splitter lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment """This plug-in can split a signal based on frequency or level, for example for producing dynamic effects where only loud drum hits are sent to a reverb. Other functions include a simple "spectral gate" in INVERSE mode and a conventional gate and filter for separating drum sounds in NORMAL mode.""" ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -21,7 +24,25 @@ mdala:Splitter lv2:symbol "mode" ; lv2:default 0.1 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; + lv2:scalePoint [ + rdf:value 0.0 ; + rdfs:label "Normal" ; + rdfs:comment "Output as selected with Frequency and Level controls" + ] , [ + rdf:value 0.25 ; + rdfs:label "Inverse" ; + rdfs:comment "Inverse of shown selection (e.g. everything except low frequencies at high level)" + ] , [ + rdf:value 0.5 ; + rdfs:label "Normal Inverse" ; + rdfs:comment "Left / Right split of above" + ] , [ + rdf:value 0.75 ; + rdfs:label "Inverse Normal" ; + rdfs:comment "Right / Left split of above" + ] ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +51,8 @@ mdala:Splitter lv2:symbol "freq" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Crossover frequency" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +61,18 @@ mdala:Splitter lv2:symbol "freq_sw" ; lv2:default 0.25 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; + lv2:scalePoint [ + rdfs:label "Low" ; + rdf:value 0.0 + ] , [ + rdfs:label "All" ; + rdf:value 0.5 + ] , [ + rdfs:label "High" ; + rdf:value 1.0 + ] ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -48,7 +81,8 @@ mdala:Splitter lv2:symbol "level" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Gate threshold" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -57,7 +91,18 @@ mdala:Splitter lv2:symbol "level_sw" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; + lv2:scalePoint [ + rdfs:label "Low" ; + rdf:value 0.0 + ] , [ + rdfs:label "All" ; + rdf:value 0.5 + ] , [ + rdfs:label "High" ; + rdf:value 1.0 + ] ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -66,7 +111,8 @@ mdala:Splitter lv2:symbol "envelope" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Gate envelope speed" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -75,7 +121,8 @@ mdala:Splitter lv2:symbol "output" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Level trim" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/SubSynth.ttl b/mdala.lv2/SubSynth.ttl index e08f332..5fd859f 100644 --- a/mdala.lv2/SubSynth.ttl +++ b/mdala.lv2/SubSynth.ttl @@ -1,7 +1,10 @@ @prefix doap: . @prefix lv2: . @prefix mdala: . +@prefix param: . @prefix pg: . +@prefix rdf: . +@prefix rdfs: . mdala:SubSynth lv2:symbol "SubSynth" ; @@ -11,6 +14,9 @@ mdala:SubSynth lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment """More bass than you could ever need! + +Be aware that you may be adding low frequency content outside the range of your monitor speakers. To avoid clipping, follow with a limiter plug-in (this can also give some giant hip-hop drum sounds!).""" ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -19,7 +25,25 @@ mdala:SubSynth lv2:symbol "type" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; + lv2:scalePoint [ + rdf:value 0.0 ; + rdfs:label "Distort" ; + rdfs:comment "Takes the existing low frequencies, clips them to produce harmonics at a constant level, then filters out the higher harmonics. Has a similar effect to compressing the low frequencies." + ] , [ + rdf:value 0.25 ; + rdfs:label "Divide" ; + rdfs:comment "As above, but works at an octave below the input frequency, like an octave divider guitar pedal." + ] , [ + rdf:value 0.5 ; + rdfs:label "Invert" ; + rdfs:comment "Flips the phase of the low frequency signal once per cycle to add a smooth sub-octave. A simplified version of the classic Sub-Harmonic Synthesizer." + ] , [ + rdf:value 0.75 ; + rdfs:label "Key Osc." ; + rdfs:comment """Adds a decaying "boom" - usually made with an oscillator before a noise gate keyed with the kick drum signal.""" + ] ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -28,7 +52,8 @@ mdala:SubSynth lv2:symbol "level" ; lv2:default 0.3 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Amount of synthesized low frequency signal to be added" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -37,7 +62,8 @@ mdala:SubSynth lv2:symbol "tune" ; lv2:default 0.6 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Maximum frequency - keep as low as possible to reduce distortion. In Key Osc mode sets the oscillator frequency" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -46,7 +72,8 @@ mdala:SubSynth lv2:symbol "dry_mix" ; lv2:default 1 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Reduces the level of the original signal" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -55,7 +82,8 @@ mdala:SubSynth lv2:symbol "thresh" ; lv2:default 0.6 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment """Increase to "gate" the low frequency effect and stop unwanted background rumbling""" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -64,7 +92,9 @@ mdala:SubSynth lv2:symbol "release" ; lv2:default 0.65 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:designation param:release ; + rdfs:comment "Decay time in Key Osc mode" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/TestTone.ttl b/mdala.lv2/TestTone.ttl index f883f9e..5b0c5e7 100644 --- a/mdala.lv2/TestTone.ttl +++ b/mdala.lv2/TestTone.ttl @@ -2,6 +2,8 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdf: . +@prefix rdfs: . mdala:TestTone a lv2:Plugin , @@ -21,7 +23,41 @@ mdala:TestTone lv2:symbol "mode" ; lv2:default 0.47 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; + lv2:scalePoint [ + rdf:value 0.0 ; + rdfs:label "MIDI #" ; + rdfs:comment "Sine waves at musical pitches (A3 = 69 = 440 Hz)" + ] , [ + rdf:value 0.14 ; + rdfs:label "Impulse" ; + rdfs:comment "Single-sample impulse" + ] , [ + rdf:value 0.28 ; + rdfs:label "White" ; + rdfs:comment "White noise" + ] , [ + rdf:value 0.42 ; + rdfs:label "Pink" ; + rdfs:comment "Pink noise" + ] , [ + rdf:value 0.57 ; + rdfs:label "Sine" ; + rdfs:comment "ISO 1/3-octave frequencies" + ] , [ + rdf:value 0.71 ; + rdfs:label "Log Sweep" ; + rdfs:comment "Logarithmic frequency sweep" + ] , [ + rdf:value 0.85 ; + rdfs:label "Log Step" ; + rdfs:comment "1/3 octave steps" + ] , [ + rdf:value 1.0 ; + rdfs:label "Lin Sweep" ; + rdfs:comment "Linear frequency sweep" + ] ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +66,8 @@ mdala:TestTone lv2:symbol "level" ; lv2:default 0.71 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Peak output level" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +76,8 @@ mdala:TestTone lv2:symbol "channel" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Generate signals on left or right channel only" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -48,7 +86,8 @@ mdala:TestTone lv2:symbol "f1" ; lv2:default 0.57 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Base frequency (not applicable to pink and white noise or impulses)" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -57,7 +96,8 @@ mdala:TestTone lv2:symbol "f2" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Fine frequency control, or end frequency for sweep modes" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -66,7 +106,8 @@ mdala:TestTone lv2:symbol "sweep" ; lv2:default 0.3 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Sweep duration for sweep modes (2 seconds silence is also added between sweeps). Sets repetition rate in inpulse mode" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -75,7 +116,8 @@ mdala:TestTone lv2:symbol "thru" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Allow the input signal to pass through the plug-in" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -84,7 +126,8 @@ mdala:TestTone lv2:symbol "zero_db" ; lv2:default 1 ; lv2:minimum 0.0 ; - lv2:maximum 1.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" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/ThruZero.ttl b/mdala.lv2/ThruZero.ttl index 291fb2c..c47881a 100644 --- a/mdala.lv2/ThruZero.ttl +++ b/mdala.lv2/ThruZero.ttl @@ -2,6 +2,7 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdfs: . mdala:ThruZero a lv2:Plugin , @@ -13,6 +14,9 @@ mdala:ThruZero lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment """Tape flanger and ADT + +This plug simulates tape-flanging, where two copies of a signal cancel out completely as the tapes pass each other. It can also be used for other "modulated delay" effects such as phasing and simple chorusing.""" ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -21,7 +25,8 @@ mdala:ThruZero lv2:symbol "rate" ; lv2:default 0.3 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Modulation rate (sine wave) - set to minimum for static comb filtering" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +35,8 @@ mdala:ThruZero lv2:symbol "depth" ; lv2:default 0.43 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Maximum modulation depth" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +45,8 @@ mdala:ThruZero lv2:symbol "mix" ; lv2:default 0.47 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Wet / dry mix - set to 50% for complete cancelling" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -48,7 +55,8 @@ mdala:ThruZero lv2:symbol "feedback" ; lv2:default 0.3 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment """Add positive or negative feedback for harsher or "ringing" sound""" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -57,7 +65,8 @@ mdala:ThruZero lv2:symbol "depth_mod" ; lv2:default 1 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Modulation depth - set to less than 100% to limit build up of low fequencies with feedback" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/Tracker.ttl b/mdala.lv2/Tracker.ttl index 7a04e01..caa3a0a 100644 --- a/mdala.lv2/Tracker.ttl +++ b/mdala.lv2/Tracker.ttl @@ -2,6 +2,8 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdf: . +@prefix rdfs: . mdala:Tracker a lv2:Plugin , @@ -13,6 +15,9 @@ mdala:Tracker lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment """This plug-in tracks the frequency of the input signal with an oscillator, ring modulator or filter. The pitch tracking only works with monophonic inputs, but can create interesting effects on unpitched sounds such as drums. + +This plug can be used with white or pink noise inputs to generate random pitch sequences. Interesting evolving soundscapes can be made with a drum loop input and Tracker, RezFilter and Delay in series.""" ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -21,7 +26,24 @@ mdala:Tracker lv2:symbol "mode" ; lv2:default 0 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; + lv2:scalePoint [ + rdf:value 0.0 ; + rdfs:label "Sine oscillator" + ] , [ + rdf:value 0.25 ; + rdfs:label "Square oscillator" + ] , [ + rdf:value 0.5 ; + rdfs:label "Sawtooth oscillator" + ] , [ + rdf:value 0.75 ; + rdfs:label "Ring modulator" + ] , [ + rdf:value 1.0 ; + rdfs:label "Peaking EQ" + ] ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +52,8 @@ mdala:Tracker lv2:symbol "dynamics" ; lv2:default 1 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Apply dynamics of input signal to generated output" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +62,8 @@ mdala:Tracker lv2:symbol "mix" ; lv2:default 1 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Wet/dry mix" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -48,7 +72,8 @@ mdala:Tracker lv2:symbol "glide" ; lv2:default 0.97 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Maximum pitch change rate" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -57,7 +82,8 @@ mdala:Tracker lv2:symbol "transpose" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Pitch offset to create harmonics, octave doubling, etc." ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -66,7 +92,8 @@ mdala:Tracker lv2:symbol "maximum" ; lv2:default 0.8 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Maximum allowed pitch - to supress pitch tracking errors" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -75,7 +102,8 @@ mdala:Tracker lv2:symbol "trigger" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Threshold level for pitch tracker - raise to stop tracking in gaps" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -84,7 +112,8 @@ mdala:Tracker lv2:symbol "output" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Level trim" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/VocInput.ttl b/mdala.lv2/VocInput.ttl index b5309f5..2b410f7 100644 --- a/mdala.lv2/VocInput.ttl +++ b/mdala.lv2/VocInput.ttl @@ -2,6 +2,8 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdf: . +@prefix rdfs: . mdala:VocInput a lv2:Plugin , @@ -13,6 +15,7 @@ mdala:VocInput lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment "This plug-in produces a voice-like signal on the right channel to be used as a carrier signal with vocoder and other vocoder plug-ins. The input signal passes through on the left channel." ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -21,7 +24,18 @@ mdala:VocInput lv2:symbol "tracking" ; lv2:default 0.25 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; + lv2:scalePoint [ + rdf:value 0.0 ; + rdfs:label "Constant pitch" + ] , [ + rdf:value 0.5 ; + rdfs:label "Track input pitch" + ] , [ + rdf:value 1.0 ; + rdfs:label "Track quantized input pitch" + ] ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +44,8 @@ mdala:VocInput lv2:symbol "pitch" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Oscillator pitch, or pitch transpose in tracking modes" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +54,8 @@ mdala:VocInput lv2:symbol "breath" ; lv2:default 0.2 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Amount of breath noise" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -48,7 +64,8 @@ mdala:VocInput lv2:symbol "s_thresh" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Sensitivity for adding sibilance / fricative noise to consonants" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -57,7 +74,8 @@ mdala:VocInput lv2:symbol "max_freq" ; lv2:default 0.35 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Maximum allowed pitch - mainly used to reduce pitch tracking errors" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/mdala.lv2/Vocoder.ttl b/mdala.lv2/Vocoder.ttl index 5ca3461..aeb35ad 100644 --- a/mdala.lv2/Vocoder.ttl +++ b/mdala.lv2/Vocoder.ttl @@ -2,6 +2,8 @@ @prefix lv2: . @prefix mdala: . @prefix pg: . +@prefix rdf: . +@prefix rdfs: . mdala:Vocoder a lv2:Plugin , @@ -13,6 +15,9 @@ mdala:Vocoder lv2:pluginProperty lv2:hardRTCapable ; pg:mainInput mdala:mainIn ; pg:mainOutput mdala:mainOut ; + rdfs:comment """16-band vocoder for applying the spectrum of one sound (the modulator, usually a voice or rhythm part) to the waveform of another (the carrier, usually a synth pad or sawtooth wave). + +Note that both carrier and modulator signals are taken from one input channel, which therefore must be stereo for normal operation. This is different to some other vocoder plug-ins where one of the input signals is taken from another plug-in in a different channel.""" ; lv2:port [ a lv2:InputPort , lv2:ControlPort ; @@ -21,7 +26,17 @@ mdala:Vocoder lv2:symbol "mod_in" ; lv2:default 0.33 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + lv2:portProperty lv2:enumeration ; + lv2:scalePoint [ + rdf:value 0.0 ; + rdfs:label "Left" ; + rdfs:comment "Modulator on left channel, carrier on right" + ] , [ + rdf:value 1.0 ; + rdfs:label "Right" ; + rdfs:comment "Modulator on right channel, carrier on left" + ] ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -30,7 +45,8 @@ mdala:Vocoder lv2:symbol "output" ; lv2:default 0.5 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Level trim" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -39,7 +55,8 @@ mdala:Vocoder lv2:symbol "hi_thru" ; lv2:default 0.4 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Level of high frequency input modulator input fed to output - can improve realism and intelligibility" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -48,7 +65,8 @@ mdala:Vocoder lv2:symbol "hi_band" ; lv2:default 0.4 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Level of high frequency vocoder band - may be unpleasant for some carrier signals" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -57,7 +75,8 @@ mdala:Vocoder lv2:symbol "envelope" ; lv2:default 0.16 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Envelope tracking speed - set to minimum to freeze filter shape" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -66,7 +85,8 @@ mdala:Vocoder lv2:symbol "filter_q" ; lv2:default 0.55 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Sharpness of each filter band - low values sound more synthetic, high-mid values more vocal" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -75,7 +95,8 @@ mdala:Vocoder lv2:symbol "mid_freq" ; lv2:default 0.6667 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Shift the filter bank up or down to optimize frequency range" ] , [ a lv2:InputPort , lv2:ControlPort ; @@ -84,7 +105,8 @@ mdala:Vocoder lv2:symbol "quality" ; lv2:default 0.33 ; lv2:minimum 0.0 ; - lv2:maximum 1.0 + lv2:maximum 1.0 ; + rdfs:comment "Select 16-band operation, or 8-band for thinner sound and reduced processor usage" ] , [ a lv2:InputPort , lv2:AudioPort ; diff --git a/src/mdaBandisto.cpp b/src/mdaBandisto.cpp index 82282ca..1ac2ff2 100644 --- a/src/mdaBandisto.cpp +++ b/src/mdaBandisto.cpp @@ -39,7 +39,7 @@ mdaBandisto::mdaBandisto(audioMasterCallback audioMaster) : AudioEffectX(audioMa fParam7 = (float)0.50; //L trim (2) fParam8 = (float)0.50; //M trim fParam9 = (float)0.50; //H trim - fParam10 = (float)0.4; //transistor/valve + fParam10 = (float)0.0; //unipolar/bipolar setNumInputs(2); setNumOutputs(2); @@ -53,7 +53,7 @@ mdaBandisto::mdaBandisto(audioMasterCallback audioMaster) : AudioEffectX(audioMa driv2 = (float)pow(10.0,(6.0 * fParam5 *fParam5) - 1.0); driv3 = (float)pow(10.0,(6.0 * fParam6 *fParam6) - 1.0); - valve = int(1.99 * fParam10); + valve = int(fParam10 > 0.0); if(valve) { trim1 = (float)(0.5); @@ -131,7 +131,7 @@ void mdaBandisto::setParameter(LvzInt32 index, float value) driv2 = (float)pow(10.0,(6.0 * fParam5 *fParam5) - 1.0); driv3 = (float)pow(10.0,(6.0 * fParam6 *fParam6) - 1.0); - valve = int(1.99 * fParam10); + valve = int(fParam10 > 0.0); if(valve) { trim1 = (float)(0.5); @@ -213,7 +213,7 @@ void mdaBandisto::getParameterDisplay(LvzInt32 index, char *text) case 6: sprintf(text, "%.0f", 40.0 * fParam7 - 20.0); break; case 7: sprintf(text, "%.0f", 40.0 * fParam8 - 20.0); break; case 8: sprintf(text, "%.0f", 40.0 * fParam9 - 20.0); break; - case 9: if(fParam10>0.5) { strcpy(text, "Unipolar"); } + case 9: if(fParam10>0.0) { strcpy(text, "Unipolar"); } else { strcpy(text, "Bipolar"); } break; } } diff --git a/src/mdaCombo.cpp b/src/mdaCombo.cpp index 05f1ca0..84b5c70 100644 --- a/src/mdaCombo.cpp +++ b/src/mdaCombo.cpp @@ -33,7 +33,7 @@ mdaCombo::mdaCombo(audioMasterCallback audioMaster) : AudioEffectX(audioMaster, fParam2 = 0.50f; //drive fParam3 = 0.50f; //bias fParam4 = 0.50f; //output - fParam5 = 0.40f; //stereo + fParam5 = 0.00f; //stereo fParam6 = 0.00f; //hpf freq fParam7 = 0.50f; //hpf reso @@ -70,7 +70,7 @@ void mdaCombo::setParameter(LvzInt32 index, float value) case 6: fParam7 = value; break; } //calcs here - ster=0; if(fParam5>0.5) ster=1; + ster=0; if(fParam5>0.0) ster=1; hpf = filterFreq(25.f); switch(int(fParam1*6.9)) { @@ -244,7 +244,7 @@ void mdaCombo::getParameterDisplay(LvzInt32 index, char *text) case 1: int2strng((LvzInt32)(200 * fParam2 - 100), text); break; case 2: int2strng((LvzInt32)(200 * fParam3 - 100), text); break; case 3: int2strng((LvzInt32)(40 * fParam4 - 20), text); break; - case 4: if(fParam5>0.5) strcpy(text, "STEREO"); + case 4: if(fParam5>0.0) strcpy(text, "STEREO"); else strcpy(text, "MONO"); break; case 5: int2strng((LvzInt32)(100 * fParam6), text); break; case 6: int2strng((LvzInt32)(100 * fParam7), text); break; @@ -288,7 +288,7 @@ void mdaCombo::process(float **inputs, float **outputs, LvzInt32 sampleFrames) --out1; --out2; - if(fParam5>0.5) //stereo + if(fParam5>0.0) //stereo { while(--sampleFrames >= 0) { diff --git a/src/mdaLimiter.cpp b/src/mdaLimiter.cpp index 02fff3b..d29cf0d 100644 --- a/src/mdaLimiter.cpp +++ b/src/mdaLimiter.cpp @@ -31,7 +31,7 @@ mdaLimiter::mdaLimiter(audioMasterCallback audioMaster) : AudioEffectX(audioMast fParam2 = (float)0.60; //trim fParam3 = (float)0.15; //attack fParam4 = (float)0.50; //release - fParam5 = (float)0.40; //knee + fParam5 = (float)0.0; //knee setNumInputs(2); // stereo in setNumOutputs(2); // stereo out @@ -40,7 +40,7 @@ mdaLimiter::mdaLimiter(audioMasterCallback audioMaster) : AudioEffectX(audioMast canProcessReplacing(); // supports both accumulating and replacing output strcpy(programName, "Limiter"); // default program name - if(fParam5>0.5) //soft knee + if(fParam5>0.0) //soft knee { thresh = (float)pow(10.0, 1.0 - (2.0 * fParam1)); } @@ -94,7 +94,7 @@ void mdaLimiter::setParameter(LvzInt32 index, float value) case 4: fParam5 = value; break; } //calcs here - if(fParam5>0.5) //soft knee + if(fParam5>0.0) //soft knee { thresh = (float)pow(10.0, 1.0 - (2.0 * fParam1)); } @@ -145,8 +145,8 @@ void mdaLimiter::getParameterDisplay(LvzInt32 index, char *text) case 1: int2strng((LvzInt32)(40.0*fParam2 - 20.0),text); break; case 3: int2strng((LvzInt32)(-301030.1 / (getSampleRate() * log10(1.0 - att))),text); break; case 2: int2strng((LvzInt32)(-301.0301 / (getSampleRate() * log10(1.0 - rel))),text); break; - case 4: if(fParam5<0.5) strcpy(text, "HARD"); - else strcpy(text, "SOFT"); break; + case 4: if(fParam5>0.0) strcpy(text, "SOFT"); + else strcpy(text, "HARD"); break; } } -- cgit v1.2.1