Skip to content

Commit 0f405dd

Browse files
falkTXdromer
andauthored
Add Starling Via (#636)
* adding Starling Via * update StarlingVia with async file dialogs; adjust plugins/Makefile * include plugin binaries * custom defines for StarlingVia * extern StarlingVia * update starlingvia * use newer StarlingVia commit * Fix memory issues in StarlingVia Signed-off-by: falkTX <falktx@falktx.com> --------- Signed-off-by: falkTX <falktx@falktx.com> Co-authored-by: dreamer <dreamer@puikheid.nl> Co-authored-by: dreamer <1185977+dromer@users.noreply.github.com>
1 parent 106c6dd commit 0f405dd

File tree

6 files changed

+79
-3
lines changed

6 files changed

+79
-3
lines changed

.gitmodules

+4-2
Original file line numberDiff line numberDiff line change
@@ -236,7 +236,9 @@
236236
[submodule "plugins/Computerscare"]
237237
path = plugins/Computerscare
238238
url = https://github.com/freddyz/computerscare-vcv-modules.git
239-
branch = v2.0.4
240239
[submodule "plugins/CVfunk"]
241240
path = plugins/CVfunk
242-
url = https://github.com/codygeary/CVfunk-Modules.git
241+
url = https://github.com/codygeary/CVfunk-Modules.git
242+
[submodule "plugins/StarlingVia"]
243+
path = plugins/StarlingVia
244+
url = https://github.com/starlingcode/Via-for-Rack.git

README.md

+1
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,7 @@ At the moment the following 3rd-party modules are provided:
186186
- [Sapphire](https://github.com/cosinekitty/sapphire)
187187
- [Sonus Modular](https://gitlab.com/sonusdept/sonusmodular)
188188
- [stocaudio](https://github.com/aptrn/stocaudio-modules)
189+
- [Starling Via](https://github.com/starlingcode/Via-for-Rack)
189190
- [Stoermelder Pack-One](https://github.com/stoermelder/vcvrack-packone)
190191
- [Surge XT](https://github.com/surge-synthesizer/surge-rack)
191192
- [unless_modules](https://gitlab.com/unlessgames/unless_modules)

docs/LICENSES.md

+2
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ Bellow follows a list of all code licenses used in Cardinal and linked submodule
7979
| RebelTech | GPL-2.0-or-later | |
8080
| Sapphire | GPL-3.0-or-later | |
8181
| Sonus Modular | GPL-3.0-or-later | |
82+
| Starling Via | MIT | |
8283
| stocaudio | GPL-3.0-or-later | |
8384
| Stoermelder Pack-One | GPL-3.0-or-later | |
8485
| Surge XT | GPL-3.0-or-later | |
@@ -235,6 +236,7 @@ Below is a list of artwork licenses from plugins
235236
| RebelTech/* | CC-BY-NC-4.0 | |
236237
| Sapphire/* | GPL-3.0-or-later | No artwork specific license provided |
237238
| sonusmodular/* | GPL-3.0-or-later | [Same license as source code](https://gitlab.com/sonusdept/sonusmodular/-/issues/14) |
239+
| StarlingVia/* | MIT | No artwork specific license provided |
238240
| stocaudio/* | GPL-3.0-or-later | No artwork specific license provided |
239241
| stoermelder-packone/* | GPL-3.0-or-later | No artwork specific license provided |
240242
| stoermelder-packone/fonts/RedkostComic.otf | OFL-1.1-RFN | |

plugins/Makefile

+32-1
Original file line numberDiff line numberDiff line change
@@ -1012,8 +1012,24 @@ PLUGIN_FILES += $(filter-out Sapphire/src/plugin.cpp,$(wildcard Sapphire/src/*.c
10121012
PLUGIN_FILES += $(filter-out sonusmodular/src/sonusmodular.cpp,$(wildcard sonusmodular/src/*.cpp))
10131013

10141014
# --------------------------------------------------------------
1015-
# stocaudio
1015+
# Starling Via
1016+
1017+
PLUGIN_FILES += $(wildcard StarlingVia/src/*.cpp)
1018+
PLUGIN_FILES += $(wildcard StarlingVia/Via/io/src/*.cpp)
1019+
PLUGIN_FILES += $(wildcard StarlingVia/Via/ui/src/*.cpp)
1020+
PLUGIN_FILES += $(wildcard StarlingVia/Via/modules/*/*.cpp)
1021+
PLUGIN_BINARIES += StarlingVia/res/original.gateseq
1022+
PLUGIN_BINARIES += StarlingVia/res/original.meta
1023+
PLUGIN_BINARIES += StarlingVia/res/original.osc3
1024+
PLUGIN_BINARIES += StarlingVia/res/original.scanner
1025+
PLUGIN_BINARIES += StarlingVia/res/original.sync
1026+
PLUGIN_BINARIES += StarlingVia/res/original.sync3
1027+
1028+
# modules/types which are present in other plugins
1029+
STARLINGVIA_CUSTOM = Scanner Scale Wavetable
10161030

1031+
# --------------------------------------------------------------
1032+
# stocaudio
10171033
PLUGIN_FILES += $(filter-out stocaudio/src/plugin.cpp,$(wildcard stocaudio/src/*.cpp))
10181034

10191035
# --------------------------------------------------------------
@@ -2645,6 +2661,21 @@ $(BUILD_DIR)/sonusmodular/%.cpp.o: sonusmodular/%.cpp
26452661
$(foreach m,$(SONUSMODULAR_CUSTOM),$(call custom_module_names,$(m),sonusmodular)) \
26462662
-DpluginInstance=pluginInstance__sonusmodular
26472663

2664+
$(BUILD_DIR)/StarlingVia/%.cpp.o: StarlingVia/%.cpp
2665+
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
2666+
@echo "Compiling $<"
2667+
$(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \
2668+
$(foreach m,$(STARLINGVIA_CUSTOM),$(call custom_module_names,$(m),StarlingVia)) \
2669+
-DpluginInstance=pluginInstance__StarlingVia \
2670+
-DBUILD_VIRTUAL \
2671+
-IStarlingVia/dep/starling-dsp \
2672+
-IStarlingVia/Via/modules/inc \
2673+
-IStarlingVia/Via/synthesis/inc \
2674+
-IStarlingVia/Via/io/inc \
2675+
-IStarlingVia/Via/ui/inc \
2676+
-IStarlingVia/src/dep/starling-dsp \
2677+
-IStarlingVia/src/dep/starling-rack-ui
2678+
26482679
$(BUILD_DIR)/stoermelder-packone/%.cpp.o: stoermelder-packone/%.cpp
26492680
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
26502681
@echo "Compiling $<"

plugins/StarlingVia

Submodule StarlingVia added at a6b75fd

plugins/plugins.cpp

+39
Original file line numberDiff line numberDiff line change
@@ -782,6 +782,16 @@ void addThemeMenuItems(Menu*, ModuleTheme*) {}
782782
// sonusmodular
783783
#include "sonusmodular/src/sonusmodular.hpp"
784784

785+
786+
// Starling Via
787+
#define modelScanner modelStarlingViaScanner
788+
#define Scale starlingViaScale
789+
#define Wavetable starlingViaWavetable
790+
#include "StarlingVia/src/starling.hpp"
791+
#undef modelScanner
792+
#undef Scale
793+
#undef Wavetable
794+
785795
// stocaudio
786796
#include "stocaudio/src/plugin.hpp"
787797

@@ -914,6 +924,7 @@ Plugin* pluginInstance__RebelTech;
914924
Plugin* pluginInstance__repelzen;
915925
Plugin* pluginInstance__sapphire;
916926
Plugin* pluginInstance__sonusmodular;
927+
extern Plugin* pluginInstance__StarlingVia;
917928
Plugin* pluginInstance__stocaudio;
918929
extern Plugin* pluginInstance__stoermelder_p1;
919930
Plugin* pluginInstance__surgext;
@@ -2987,6 +2998,33 @@ static void initStatic__sonusmodular()
29872998
}
29882999
}
29893000

3001+
3002+
static void initStatic__StarlingVia()
3003+
{
3004+
Plugin* const p = new Plugin;
3005+
pluginInstance__StarlingVia = p;
3006+
3007+
const StaticPluginLoader spl(p, "StarlingVia");
3008+
if (spl.ok())
3009+
{
3010+
#define modelScanner modelStarlingViaScanner
3011+
#define Scale starlingViaScale
3012+
#define Wavetable starlingViaWavetable
3013+
p->addModel(modelMeta);
3014+
p->addModel(modelGateseq);
3015+
p->addModel(modelScanner);
3016+
p->addModel(modelSync);
3017+
p->addModel(modelAtsr);
3018+
p->addModel(modelOsc3);
3019+
p->addModel(modelSync3);
3020+
p->addModel(modelSync3XL);
3021+
p->addModel(modelSync3XLLevels);
3022+
#undef modelScanner
3023+
#undef Scale
3024+
#undef Wavetable
3025+
}
3026+
}
3027+
29903028
static void initStatic__stocaudio()
29913029
{
29923030
Plugin* const p = new Plugin;
@@ -3329,6 +3367,7 @@ void initStaticPlugins()
33293367
initStatic__repelzen();
33303368
initStatic__Sapphire();
33313369
initStatic__sonusmodular();
3370+
initStatic__StarlingVia();
33323371
initStatic__stocaudio();
33333372
initStatic__stoermelder_p1();
33343373
initStatic__surgext();

0 commit comments

Comments
 (0)