From d20839cb44dfb24702202204e88214462b4b68a3 Mon Sep 17 00:00:00 2001 From: Ahornberg <35393886+Ahornberg@users.noreply.github.com> Date: Sat, 4 Mar 2023 08:13:15 +0100 Subject: [PATCH 1/2] port to Rack v2 --- plugin.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugin.json b/plugin.json index 33d2846..b1fa035 100644 --- a/plugin.json +++ b/plugin.json @@ -1,7 +1,7 @@ { "slug": "Edge", "name": "Edge", - "version": "1.0.2", + "version": "2.0.0", "brand": "Edge", "author": "Edge", "license": "GPL-3.0-or-later", From 830a8730a4fb45ae56d2d520d7ff9c4669a63df2 Mon Sep 17 00:00:00 2001 From: Ahornberg <35393886+Ahornberg@users.noreply.github.com> Date: Sun, 5 Mar 2023 01:18:04 +0100 Subject: [PATCH 2/2] VVTO: added DC filter at 10 Hz --- plugin.json | 2 +- src/WCO_Osc.cpp | 13 ++++++++----- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/plugin.json b/plugin.json index b1fa035..8bfbb2c 100644 --- a/plugin.json +++ b/plugin.json @@ -1,7 +1,7 @@ { "slug": "Edge", "name": "Edge", - "version": "2.0.0", + "version": "2.0.1", "brand": "Edge", "author": "Edge", "license": "GPL-3.0-or-later", diff --git a/src/WCO_Osc.cpp b/src/WCO_Osc.cpp index 33f0666..81c7ba6 100644 --- a/src/WCO_Osc.cpp +++ b/src/WCO_Osc.cpp @@ -412,7 +412,8 @@ struct WCO_Osc : Module { const std::string wavefiles[64]={"00.wav","01.wav","02.wav","03.wav","04.wav","05.wav","06.wav","07.wav","08.wav","09.wav","10.wav","11.wav","12.wav","13.wav","14.wav","15.wav","16.wav","17.wav","18.wav","19.wav","20.wav","21.wav","22.wav","23.wav","24.wav","25.wav","26.wav","27.wav","28.wav","29.wav","30.wav","31.wav","32.wav","33.wav","34.wav","35.wav","36.wav","37.wav","38.wav","39.wav","40.wav","41.wav","42.wav","43.wav","44.wav","45.wav","46.wav","47.wav","48.wav","49.wav","50.wav","51.wav","52.wav","53.wav","54.wav","55.wav","56.wav","57.wav","58.wav","59.wav","60.wav","61.wav","62.wav","63.wav"}; bool tab_loaded = false; - + + dsp::RCFilter dcFilters[16]; //Poly float pitchCv[16]={0.0f}; @@ -434,9 +435,10 @@ struct WCO_Osc : Module { configParam(FREQ_PARAM, -54.0f, 54.0f, 0.0f); configParam(FINE_PARAM, -1.0f, 1.0f, 0.0f); configParam(FM_PARAM, 0.0f, 1.0f, 0.0f); - - - + float sampleTime = APP->engine->getSampleTime(); + for (int i = 0; i < 16; i++) { + dcFilters[i].setCutoffFreq(10.f * sampleTime); + } } void process(const ProcessArgs &args) override; void LoadWaves(); @@ -570,7 +572,8 @@ void WCO_Osc::process(const ProcessArgs &args) { for (int c = 0; c < channels; c++) { if (outputs[OUTPUT].active){ if(params[LFO_NOISE_PARAM].getValue() == 1){ - outputs[OUTPUT].setVoltage(clamp (5.0f* oscillator.sin(c) ,-5.0f,5.0f),c); + dcFilters[c].process(clamp (5.0f* oscillator.sin(c) ,-5.0f,5.0f)); + outputs[OUTPUT].setVoltage(dcFilters[c].highpass(),c); } else{ if(lfo_range == 0){