Add ChowDSP

Signed-off-by: falkTX <falktx@falktx.com>
This commit is contained in:
falkTX 2021-12-04 23:12:03 +00:00
parent fd9bf93ff2
commit 56c2fc2744
No known key found for this signature in database
GPG key ID: CDBAA37ABC74FBA0
8 changed files with 65 additions and 9 deletions

3
.gitmodules vendored
View file

@ -94,3 +94,6 @@
[submodule "plugins/Mog"]
path = plugins/Mog
url = https://github.com/CardinalModules/Mog-VCV.git
[submodule "plugins/ChowDSP"]
path = plugins/ChowDSP
url = https://github.com/jatinchowdhury18/ChowDSP-VCV.git

View file

@ -84,6 +84,7 @@ At the moment the following 3rd-party modules are provided:
- Bidoo
- Bogaudio
- cf
- ChowDSP
- DrumKit
- E-Series
- Fehler Fabrik

View file

@ -23,7 +23,7 @@ Bellow follows a list of all code licenses used in Cardinal and linked submodule
| Befaco | GPL-3.0-or-later | |
| Bidoo | GPL-3.0-or-later | |
| Bogaudio | GPL-3.0-or-later | |
| Cardinal | GPL-3.0-or-later | Internal Cardinal-only modules |
| ChowDSP | GPL-3.0-or-later | |
| cf | BSD-3-Clause | |
| DrumKit | CC0-1.0 | |
| E-Series | GPL-3.0-or-later | |

1
plugins/ChowDSP Submodule

@ -0,0 +1 @@
Subproject commit e1a20acc0fe64ed42d7a91ddcdbdf12daa6ec6d3

View file

@ -380,6 +380,14 @@ PLUGIN_FILES += $(wildcard BogaudioModules/src/dsp/filters/*.cpp)
BOGAUDIO_CUSTOM = ADSR BlueNoiseGenerator LFO Noise VCA VCO VCF
BOGAUDIO_CUSTOM_PER_FILE = ARQuantity AttackMenuItem ReleaseMenuItem
# --------------------------------------------------------------
# ChowDSP
PLUGIN_FILES += ChowDSP/src/plugin.cpp
PLUGIN_FILES += $(wildcard ChowDSP/src/*/*.cpp)
PLUGIN_FILES += $(wildcard ChowDSP/src/*/*/*.cpp)
PLUGIN_FILES += $(wildcard ChowDSP/lib/r8lib/*.cpp)
# --------------------------------------------------------------
# cf
@ -488,7 +496,7 @@ PLUGIN_FILES += $(filter-out rackwindows/src/plugin.cpp,$(wildcard rackwindows/s
PLUGIN_FILES += $(filter-out repelzen/src/repelzen.cpp,$(wildcard repelzen/src/*.cpp))
# modules/types which are present in other plugins
REPELZEN_CUSTOM = Blank Mixer tanh_pade
REPELZEN_CUSTOM = Blank Mixer Werner tanh_pade
# --------------------------------------------------------------
# sonusmodular
@ -907,6 +915,18 @@ $(BUILD_DIR)/cf/src/%.cpp.o: cf/src/%.cpp
-DpluginInstance=pluginInstance__cf \
-Wno-misleading-indentation
$(BUILD_DIR)/ChowDSP/%.cpp.o: ChowDSP/%.cpp
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
@echo "Compiling $<"
$(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \
$(foreach m,$(CHOWDSP_CUSTOM),$(call custom_module_names,$(m),ChowDSP)) \
-DpluginInstance=pluginInstance__ChowDSP \
-Dinit=init__ChowDSP \
-DUSE_EIGEN \
-IChowDSP/lib \
-IChowDSP/lib/chowdsp_utils/DSP/WDF \
-Wno-deprecated-copy
$(BUILD_DIR)/DrumKit/%.cpp.o: DrumKit/%.cpp
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
@echo "Compiling $<"

View file

@ -224,6 +224,9 @@ extern Model *modelBlank;
// cf
#include "cf/src/plugin.hpp"
// ChowDSP
#include "ChowDSP/src/plugin.hpp"
// DrumKit
#include "DrumKit/src/DrumKit.hpp"
void setupSamples();
@ -332,10 +335,12 @@ extern Model *modelMaude_221;
// repelzen
#define modelBlank modelrepelzenBlank
#define modelMixer modelrepelzenMixer
#define modelWerner modelrepelzenWerner
#define tanh_pade repelzentanh_pade
#include "repelzen/src/repelzen.hpp"
#undef modelBlank
#undef modelMixer
#undef modelWerner
#undef tanh_pade
// sonusmodular
@ -379,6 +384,7 @@ Plugin* pluginInstance__Befaco;
Plugin* pluginInstance__Bidoo;
Plugin* pluginInstance__BogaudioModules;
Plugin* pluginInstance__cf;
extern Plugin* pluginInstance__ChowDSP;
extern Plugin* pluginInstance__DrumKit;
Plugin* pluginInstance__ESeries;
Plugin* pluginInstance__FehlerFabrik;
@ -1044,6 +1050,33 @@ static void initStatic__cf()
}
}
static void initStatic__ChowDSP()
{
Plugin* const p = new Plugin;
pluginInstance__ChowDSP = p;
const StaticPluginLoader spl(p, "ChowDSP");
if (spl.ok())
{
p->addModel(modelChowTape);
p->addModel(modelChowPhaserFeedback);
p->addModel(modelChowPhaserMod);
p->addModel(modelChowFDN);
p->addModel(modelChowRNN);
p->addModel(modelChowModal);
p->addModel(modelChowDer);
p->addModel(modelWarp);
p->addModel(modelWerner);
p->addModel(modelCredit);
p->addModel(modelChowPulse);
p->addModel(modelChowTapeCompression);
p->addModel(modelChowTapeChew);
p->addModel(modelChowTapeDegrade);
p->addModel(modelChowTapeLoss);
p->addModel(modelChowChorus);
}
}
static void initStatic__DrumKit()
{
Plugin* const p = new Plugin;
@ -1369,6 +1402,7 @@ static void initStatic__repelzen()
{
#define modelBlank modelrepelzenBlank
#define modelMixer modelrepelzenMixer
#define modelWerner modelrepelzenWerner
p->addModel(modelBlank);
p->addModel(modelBurst);
p->addModel(modelFolder);
@ -1377,6 +1411,7 @@ static void initStatic__repelzen()
p->addModel(modelMixer);
#undef modelBlank
#undef modelMixer
#undef modelWerner
}
}
@ -1495,6 +1530,7 @@ void initStaticPlugins()
initStatic__Bidoo();
initStatic__BogaudioModules();
initStatic__cf();
initStatic__ChowDSP();
initStatic__DrumKit();
initStatic__ESeries();
initStatic__FehlerFabrik();

1
plugins/res/ChowDSP Symbolic link
View file

@ -0,0 +1 @@
../ChowDSP/res

View file

@ -1,6 +1,6 @@
List of plugins still to add, sorted by popularity
- TODO, see list at https://github.com/VCVRack/library/tree/v1/repos
- TODO, see list at https://github.com/VCVRack/library/tree/v2/repos
Grayscale 74754.0 (not opensource?)
@ -20,17 +20,11 @@ https://github.com/adbrant/ArableInstruments/
squinkylabs-plug1 48682.0
https://github.com/squinkylabs/SquinkyVCV
SonusModular 45245.0
https://gitlab.com/sonusdept/sonusmodular
LindenbergResearch 43959.0 (not opensource?)
Geodesics 42761.0
https://github.com/MarcBoule/Geodesics
BaconMusic 42095.0
https://github.com/baconpaul/BaconPlugs/
HetrickCV 42077.0
https://github.com/mhetrick/hetrickcv