zynaddsubfx

ZynAddSubFX open source synthesizer
Log | Files | Refs | Submodules | LICENSE

commit 33645ee3cae670493d0d75ef6abef62953ba2fb1
parent 81558f9a159b4bcc07c9f402c75215dbd321c594
Author: fundamental <mark.d.mccurry@gmail.com>
Date:   Sun, 17 Jul 2016 13:25:41 -0400

Add More Effect Metadata

Diffstat:
Msrc/Effects/EffectMgr.cpp | 5++++-
Msrc/Effects/Phaser.cpp | 30+++++++++++++++---------------
Msrc/Effects/Reverb.cpp | 30++++++++++++++++++++++++++++++
Msrc/Effects/Reverb.h | 1+
4 files changed, 50 insertions(+), 16 deletions(-)

diff --git a/src/Effects/EffectMgr.cpp b/src/Effects/EffectMgr.cpp @@ -131,9 +131,12 @@ static const rtosc::Ports local_ports = { //Return the old data for distruction d.reply("/free", "sb", "EffectMgr", sizeof(EffectMgr*), &eff_); }}, - rSubtype(Echo), rSubtype(Alienwah), + rSubtype(Chorus), rSubtype(Distorsion), + rSubtype(Echo), + rSubtype(Phaser), + rSubtype(Reverb), }; const rtosc::Ports &EffectMgr::ports = local_ports; diff --git a/src/Effects/Phaser.cpp b/src/Effects/Phaser.cpp @@ -34,21 +34,21 @@ rtosc::Ports Phaser::ports = { rBegin; rEnd}, //Pvolume/Ppanning are common - rEffPar(lfo.Pfreq, 2, ""), - rEffPar(lfo.Prandomness, 3, ""), - rEffPar(lfo.PLFOtype, 4, ""), - rEffPar(lfo.Pstereo, 5, ""), - rEffPar(Pdepth, 6, ""), - rEffPar(Pfb, 7, ""), - rEffPar(Pstages, 8, ""), - rEffPar(Plrcross, 9, ""), - rEffPar(Poffset, 9, ""), - rEffParTF(Poutsub, 10, ""), - rEffPar(Pphase, 11, ""), - rEffPar(Pwidth, 11, ""), - rEffPar(Phyper, 12, ""), - rEffPar(Pdistortion, 13, ""), - rEffPar(Panalog, 14, ""), + rEffPar(lfo.Pfreq, 2, rShort("freq"), ""), + rEffPar(lfo.Prandomness, 3, rShort("rnd."), ""), + rEffPar(lfo.PLFOtype, 4, rShort("type"), ""), + rEffParTF(lfo.Pstereo, 5, rShort("stereo"), ""), + rEffPar(Pdepth, 6, rShort("depth"), ""), + rEffPar(Pfb, 7, rShort("fb"), ""), + rEffPar(Pstages, 8, rShort("stages"), ""), + rEffPar(Plrcross, 9, rShort("cross"), ""), + rEffPar(Poffset, 9, rShort("off"), ""), + rEffParTF(Poutsub, 10, rShort("sub") ""), + rEffPar(Pphase, 11, rShort("phase"), ""), + rEffPar(Pwidth, 11, rShort("width"), ""), + rEffParTF(Phyper, 12, rShort("hyp."), ""), + rEffPar(Pdistortion, 13, rShort("distort"), "Distortion"), + rEffParTF(Panalog, 14, rShort("analog"), ""), }; #undef rBegin #undef rEnd diff --git a/src/Effects/Reverb.cpp b/src/Effects/Reverb.cpp @@ -17,6 +17,36 @@ #include "../DSP/AnalogFilter.h" #include "../DSP/Unison.h" #include <cmath> +#include <rtosc/ports.h> +#include <rtosc/port-sugar.h> + +#define rObject Reverb +#define rBegin [](const char *, rtosc::RtData &) { +#define rEnd } + +rtosc::Ports Reverb::ports = { + {"preset::i", rOptions(Cathedral1, Cathedral2, Cathedral3, + Hall1, Hall2, Room1, Room2, Basement, + Tunnel, Echoed1, Echoed2, VeryLong1, VeryLong2) + rProp(parameter) + rDoc("Instrument Presets"), 0, + rBegin; + rEnd}, + //Pvolume/Ppanning are common + rEffPar(Ptime, 2, rShort("time"), "Length of Reverb"), + rEffPar(Pidelay, 3, rShort("i.time"), "Delay for first impulse"), + rEffPar(Pidelayfb,4, rShort("i.fb"), "Feedback for first impulse"), + rEffPar(Plpf, 7, rShort("lpf"), "Low pass filter"), + rEffPar(Phpf, 8, rShort("lpf"), "High pass filter"), + rEffPar(Plohidamp,9, rShort("damp"), "Dampening"), + //Todo make this a selector + rEffPar(Ptype, 10,rShort("type"), "Type"), + rEffPar(Proomsize,11,rShort("size"), "Room Size"), + rEffPar(Pbandwidth,12,rShort("bw"), "Bandwidth"), +}; +#undef rBegin +#undef rEnd +#undef rObject Reverb::Reverb(EffectParams pars) :Effect(pars), diff --git a/src/Effects/Reverb.h b/src/Effects/Reverb.h @@ -32,6 +32,7 @@ class Reverb:public Effect void changepar(int npar, unsigned char value); unsigned char getpar(int npar) const; + static rtosc::Ports ports; private: //Parametrii unsigned char Pvolume;