Continue work on LV2 export, add a few plugins
Signed-off-by: falkTX <falktx@falktx.com>
This commit is contained in:
parent
ebb768b713
commit
d9c9c5d19c
9 changed files with 1404 additions and 217 deletions
|
|
@ -34,16 +34,12 @@ ifeq ($(DEBUG),true)
|
||||||
BASE_FLAGS += -UDEBUG
|
BASE_FLAGS += -UDEBUG
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# BASE_FLAGS += -DHEADLESS
|
BASE_FLAGS += -DHEADLESS
|
||||||
# BASE_FLAGS += -DPRIVATE=
|
BASE_FLAGS += -fno-finite-math-only
|
||||||
#
|
BASE_FLAGS += -pthread
|
||||||
# BASE_FLAGS += -fno-finite-math-only
|
|
||||||
# # BASE_FLAGS += -I../dpf/dgl
|
# might be needed later
|
||||||
# BASE_FLAGS += -I../dpf/dgl/src/nanovg
|
|
||||||
# BASE_FLAGS += -I../dpf/distrho
|
|
||||||
# BASE_FLAGS += -I../include
|
|
||||||
# BASE_FLAGS += -I../include/neon-compat
|
# BASE_FLAGS += -I../include/neon-compat
|
||||||
# BASE_FLAGS += -I../src/Rack/include
|
|
||||||
# ifeq ($(SYSDEPS),true)
|
# ifeq ($(SYSDEPS),true)
|
||||||
# BASE_FLAGS += -DCARDINAL_SYSDEPS
|
# BASE_FLAGS += -DCARDINAL_SYSDEPS
|
||||||
# BASE_FLAGS += $(shell pkg-config --cflags jansson libarchive samplerate speexdsp)
|
# BASE_FLAGS += $(shell pkg-config --cflags jansson libarchive samplerate speexdsp)
|
||||||
|
|
@ -58,14 +54,13 @@ endif
|
||||||
# # BASE_FLAGS += -IRack/dep/osdialog
|
# # BASE_FLAGS += -IRack/dep/osdialog
|
||||||
# BASE_FLAGS += -I../src/Rack/dep/oui-blendish
|
# BASE_FLAGS += -I../src/Rack/dep/oui-blendish
|
||||||
# BASE_FLAGS += -I../src/Rack/dep/pffft
|
# BASE_FLAGS += -I../src/Rack/dep/pffft
|
||||||
# BASE_FLAGS += -pthread
|
|
||||||
#
|
ifeq ($(WINDOWS),true)
|
||||||
# ifeq ($(WINDOWS),true)
|
BASE_FLAGS += -D_USE_MATH_DEFINES
|
||||||
# BASE_FLAGS += -D_USE_MATH_DEFINES
|
BASE_FLAGS += -DWIN32_LEAN_AND_MEAN
|
||||||
# BASE_FLAGS += -DWIN32_LEAN_AND_MEAN
|
BASE_FLAGS += -I../include/mingw-compat
|
||||||
# BASE_FLAGS += -I../include/mingw-compat
|
BASE_FLAGS += -I../include/mingw-std-threads
|
||||||
# BASE_FLAGS += -I../include/mingw-std-threads
|
endif
|
||||||
# endif
|
|
||||||
|
|
||||||
# --------------------------------------------------------------
|
# --------------------------------------------------------------
|
||||||
# lots of warnings from VCV side
|
# lots of warnings from VCV side
|
||||||
|
|
@ -121,10 +116,15 @@ clean:
|
||||||
|
|
||||||
# --------------------------------------------------------------
|
# --------------------------------------------------------------
|
||||||
|
|
||||||
# $(BUILD_DIR)/valleyaudio-plateau.cpp.o: plugins/valleyaudio-plateau.cpp
|
$(BUILD_DIR)/aubileinstruments-%.cpp.o: plugins/aubileinstruments-%.cpp
|
||||||
# -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
|
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
|
||||||
# @echo "Compiling $<"
|
@echo "Compiling $<"
|
||||||
# $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -DSLUG='"$*"' -c -o $@
|
$(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -DSLUG='"aubileinstruments-$*"' \
|
||||||
|
-DTEST \
|
||||||
|
-I../plugins/AudibleInstruments/eurorack \
|
||||||
|
-Wno-class-memaccess \
|
||||||
|
-Wno-unused-local-typedefs \
|
||||||
|
-c -o $@
|
||||||
|
|
||||||
$(BUILD_DIR)/%.cpp.o: plugins/%.cpp
|
$(BUILD_DIR)/%.cpp.o: plugins/%.cpp
|
||||||
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
|
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -35,6 +35,9 @@ static constexpr const bool kCvOutputs[] = PLUGIN_CV_OUTPUTS;
|
||||||
|
|
||||||
#include "DistrhoUtils.hpp"
|
#include "DistrhoUtils.hpp"
|
||||||
|
|
||||||
|
#include <time.h>
|
||||||
|
#include <sys/time.h>
|
||||||
|
|
||||||
namespace rack {
|
namespace rack {
|
||||||
|
|
||||||
static thread_local Context* threadContext = nullptr;
|
static thread_local Context* threadContext = nullptr;
|
||||||
|
|
@ -51,6 +54,15 @@ void contextSet(Context* context) {
|
||||||
threadContext = context;
|
threadContext = context;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
namespace random {
|
||||||
|
|
||||||
|
Xoroshiro128Plus& local() {
|
||||||
|
static Xoroshiro128Plus rng;
|
||||||
|
return rng;
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace random
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
struct PluginLv2 {
|
struct PluginLv2 {
|
||||||
|
|
@ -62,6 +74,21 @@ struct PluginLv2 {
|
||||||
|
|
||||||
PluginLv2(double sr)
|
PluginLv2(double sr)
|
||||||
{
|
{
|
||||||
|
rack::random::Xoroshiro128Plus& rng(rack::random::local());
|
||||||
|
|
||||||
|
if (! rng.isSeeded())
|
||||||
|
{
|
||||||
|
struct timeval tv;
|
||||||
|
gettimeofday(&tv, NULL);
|
||||||
|
uint64_t usec = uint64_t(tv.tv_sec) * 1000 * 1000 + tv.tv_usec;
|
||||||
|
|
||||||
|
static uint64_t globalCounter = 1;
|
||||||
|
rng.seed(usec, globalCounter++);
|
||||||
|
|
||||||
|
for (int i = 0; i < 4; i++)
|
||||||
|
rng();
|
||||||
|
}
|
||||||
|
|
||||||
context._engine.sampleRate = sr;
|
context._engine.sampleRate = sr;
|
||||||
contextSet(&context);
|
contextSet(&context);
|
||||||
module = PLUGIN_MODEL->createModule();
|
module = PLUGIN_MODEL->createModule();
|
||||||
|
|
|
||||||
60
lv2export/plugins/aubileinstruments-macro-osc-2.cpp
Normal file
60
lv2export/plugins/aubileinstruments-macro-osc-2.cpp
Normal file
|
|
@ -0,0 +1,60 @@
|
||||||
|
/*
|
||||||
|
* DISTRHO Cardinal Plugin
|
||||||
|
* Copyright (C) 2021-2022 Filipe Coelho <falktx@falktx.com>
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License as
|
||||||
|
* published by the Free Software Foundation; either version 3 of
|
||||||
|
* the License, or any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* For a full copy of the GNU General Public License see the LICENSE file.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define PLAITS_ALWAYS_LOW_CPU_MODE
|
||||||
|
#include "AudibleInstruments/src/Plaits.cpp"
|
||||||
|
#include "AudibleInstruments/eurorack/stmlib/utils/random.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/stmlib/dsp/units.cc"
|
||||||
|
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/voice.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/engine/additive_engine.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/engine/bass_drum_engine.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/engine/chord_engine.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/engine/fm_engine.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/engine/grain_engine.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/engine/hi_hat_engine.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/engine/modal_engine.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/engine/noise_engine.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/engine/particle_engine.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/engine/snare_drum_engine.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/engine/speech_engine.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/engine/string_engine.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/engine/swarm_engine.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/engine/virtual_analog_engine.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/engine/waveshaping_engine.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/engine/wavetable_engine.cc"
|
||||||
|
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/physical_modelling/modal_voice.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/physical_modelling/resonator.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/physical_modelling/string.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/physical_modelling/string_voice.cc"
|
||||||
|
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/speech/lpc_speech_synth.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/speech/lpc_speech_synth_controller.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/speech/lpc_speech_synth_phonemes.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/speech/lpc_speech_synth_words.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/speech/naive_speech_synth.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/dsp/speech/sam_speech_synth.cc"
|
||||||
|
|
||||||
|
#include "AudibleInstruments/eurorack/plaits/resources.cc"
|
||||||
|
|
||||||
|
#define PLUGIN_MODEL modelPlaits
|
||||||
|
#define PLUGIN_CV_INPUTS {1,1,1,1,1,1,1,1}
|
||||||
|
#define PLUGIN_CV_OUTPUTS {0,0}
|
||||||
|
|
||||||
|
#include "lv2plugin.cpp"
|
||||||
|
#include "export.cpp"
|
||||||
40
lv2export/plugins/aubileinstruments-macro-osc.cpp
Normal file
40
lv2export/plugins/aubileinstruments-macro-osc.cpp
Normal file
|
|
@ -0,0 +1,40 @@
|
||||||
|
/*
|
||||||
|
* DISTRHO Cardinal Plugin
|
||||||
|
* Copyright (C) 2021-2022 Filipe Coelho <falktx@falktx.com>
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License as
|
||||||
|
* published by the Free Software Foundation; either version 3 of
|
||||||
|
* the License, or any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* For a full copy of the GNU General Public License see the LICENSE file.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define BRAIDS_ALWAYS_LOW_CPU_MODE
|
||||||
|
#include "AudibleInstruments/src/Braids.cpp"
|
||||||
|
#include "AudibleInstruments/eurorack/stmlib/utils/random.cc"
|
||||||
|
|
||||||
|
#define kHighestNote kHighestNoteAnalog
|
||||||
|
#define kPitchTableStart kPitchTableStartAnalog
|
||||||
|
#define kOctave kOctaveAnalog
|
||||||
|
#include "AudibleInstruments/eurorack/braids/analog_oscillator.cc"
|
||||||
|
#undef kHighestNote
|
||||||
|
#undef kPitchTableStart
|
||||||
|
#undef kOctave
|
||||||
|
|
||||||
|
#include "AudibleInstruments/eurorack/braids/digital_oscillator.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/braids/macro_oscillator.cc"
|
||||||
|
// #include "AudibleInstruments/eurorack/braids/quantizer.cc"
|
||||||
|
#include "AudibleInstruments/eurorack/braids/resources.cc"
|
||||||
|
|
||||||
|
#define PLUGIN_MODEL modelBraids
|
||||||
|
#define PLUGIN_CV_INPUTS {1,1,1,1,1}
|
||||||
|
#define PLUGIN_CV_OUTPUTS {0}
|
||||||
|
|
||||||
|
#include "lv2plugin.cpp"
|
||||||
|
#include "export.cpp"
|
||||||
25
lv2export/plugins/fundamental-quantizer.cpp
Normal file
25
lv2export/plugins/fundamental-quantizer.cpp
Normal file
|
|
@ -0,0 +1,25 @@
|
||||||
|
/*
|
||||||
|
* DISTRHO Cardinal Plugin
|
||||||
|
* Copyright (C) 2021-2022 Filipe Coelho <falktx@falktx.com>
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License as
|
||||||
|
* published by the Free Software Foundation; either version 3 of
|
||||||
|
* the License, or any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* For a full copy of the GNU General Public License see the LICENSE file.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "Fundamental/src/Quantizer.cpp"
|
||||||
|
|
||||||
|
#define PLUGIN_MODEL modelQuantizer
|
||||||
|
#define PLUGIN_CV_INPUTS {1}
|
||||||
|
#define PLUGIN_CV_OUTPUTS {1}
|
||||||
|
|
||||||
|
#include "lv2plugin.cpp"
|
||||||
|
#include "export.cpp"
|
||||||
25
lv2export/plugins/fundamental-seq3.cpp
Normal file
25
lv2export/plugins/fundamental-seq3.cpp
Normal file
|
|
@ -0,0 +1,25 @@
|
||||||
|
/*
|
||||||
|
* DISTRHO Cardinal Plugin
|
||||||
|
* Copyright (C) 2021-2022 Filipe Coelho <falktx@falktx.com>
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License as
|
||||||
|
* published by the Free Software Foundation; either version 3 of
|
||||||
|
* the License, or any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* For a full copy of the GNU General Public License see the LICENSE file.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "Fundamental/src/SEQ3.cpp"
|
||||||
|
|
||||||
|
#define PLUGIN_MODEL modelSEQ3
|
||||||
|
#define PLUGIN_CV_INPUTS {1,1,1,1,1}
|
||||||
|
#define PLUGIN_CV_OUTPUTS {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}
|
||||||
|
|
||||||
|
#include "lv2plugin.cpp"
|
||||||
|
#include "export.cpp"
|
||||||
|
|
@ -1 +1 @@
|
||||||
Subproject commit 6833adeb7141a06151c9ee7059cc43d3c854c96d
|
Subproject commit 2a19bb25c0da725756390ad96dca55632800c74d
|
||||||
|
|
@ -1 +1 @@
|
||||||
Subproject commit 612b0dba4634c365b98f96da2459ba58124bbcf0
|
Subproject commit 5ad6f48a006beedda1465208aab8f9296d39c48a
|
||||||
Loading…
Add table
Add a link
Reference in a new issue