Browse Source

Carla: Add code for native zynaddsubfx plugin

tags/v0.9.0
falkTX 12 years ago
parent
commit
805bd19936
5 changed files with 97 additions and 3 deletions
  1. +10
    -0
      c++/carla-backend/Makefile
  2. +10
    -0
      c++/carla-backend/Makefile.dbg
  3. +5
    -2
      c++/carla-backend/carla_backend_standalone.cpp
  4. +6
    -0
      c++/carla-backend/carla_native.cpp
  5. +66
    -1
      c++/carla-backend/qtcreator/carla-backend.pro

+ 10
- 0
c++/carla-backend/Makefile View File

@@ -12,6 +12,7 @@ HAVE_JACK = $(shell pkg-config --exists jack && echo true)
# HAVE_PULSEAUDIO = $(shell pkg-config --exists libpulse-simple && echo true)
HAVE_FLUIDSYNTH = $(shell pkg-config --exists fluidsynth && echo true)
HAVE_LINUXSAMPLER = $(shell pkg-config --exists linuxsampler && echo true)
HAVE_ZYN_DEPS = $(shell pkg-config --exists fftw3 mxml && echo true)
HAVE_SUIL = $(shell pkg-config --exists suil-0 && echo true)

BASE_FLAGS = -O2 -ffast-math -fomit-frame-pointer -fPIC -mtune=generic -msse -mfpmath=sse -Wall -I. -I../carla-includes -I../carla-jackbridge
@@ -55,6 +56,11 @@ CARLA_CXX_FLAGS += $(shell pkg-config --cflags linuxsampler) -DWANT_LINUXSAMPLE
CARLA_LD_FLAGS += $(shell pkg-config --libs linuxsampler)
endif

ifeq ($(HAVE_ZYN_DEPS),true)
CARLA_CXX_FLAGS += $(shell pkg-config --cflags fftw3 mxml) -DWANT_ZYNADDSUBFX -Iplugins/zynaddsubfx
CARLA_LD_FLAGS += $(shell pkg-config --libs fftw3 mxml)
endif

ifeq ($(HAVE_SUIL),true)
CARLA_CXX_FLAGS += $(shell pkg-config --cflags suil-0) -DHAVE_SUIL
CARLA_LD_FLAGS += $(shell pkg-config --libs suil-0)
@@ -84,6 +90,10 @@ OBJS += rtaudio-4.0.11/RtAudio.o
OBJS += rtmidi-2.0.1/RtMidi.o
endif

ifeq ($(HAVE_ZYN_DEPS),true)
OBJS += plugins/zynaddsubfx.o
endif

# --------------------------------------------------------------

all: carla_backend.so


+ 10
- 0
c++/carla-backend/Makefile.dbg View File

@@ -12,6 +12,7 @@ HAVE_JACK = $(shell pkg-config --exists jack && echo true)
# HAVE_PULSEAUDIO = $(shell pkg-config --exists libpulse-simple && echo true)
HAVE_FLUIDSYNTH = $(shell pkg-config --exists fluidsynth && echo true)
HAVE_LINUXSAMPLER = $(shell pkg-config --exists linuxsampler && echo true)
HAVE_ZYN_DEPS = $(shell pkg-config --exists fftw3 mxml && echo true)
HAVE_SUIL = $(shell pkg-config --exists suil-0 && echo true)

BASE_FLAGS = -O0 -g -fPIC -Wall -I. -I../carla-includes -I../carla-jackbridge
@@ -55,6 +56,11 @@ CARLA_CXX_FLAGS += $(shell pkg-config --cflags linuxsampler) -DWANT_LINUXSAMPLE
CARLA_LD_FLAGS += $(shell pkg-config --libs linuxsampler)
endif

ifeq ($(HAVE_ZYN_DEPS),true)
CARLA_CXX_FLAGS += $(shell pkg-config --cflags fftw3 mxml) -DWANT_ZYNADDSUBFX -Iplugins/zynaddsubfx
CARLA_LD_FLAGS += $(shell pkg-config --libs fftw3 mxml)
endif

ifeq ($(HAVE_SUIL),true)
CARLA_CXX_FLAGS += $(shell pkg-config --cflags suil-0) -DHAVE_SUIL
CARLA_LD_FLAGS += $(shell pkg-config --libs suil-0)
@@ -84,6 +90,10 @@ OBJS += rtaudio-4.0.11/RtAudio.o
OBJS += rtmidi-2.0.1/RtMidi.o
endif

ifeq ($(HAVE_ZYN_DEPS),true)
OBJS += plugins/zynaddsubfx.o
endif

# --------------------------------------------------------------

all: carla_backend.so


+ 5
- 2
c++/carla-backend/carla_backend_standalone.cpp View File

@@ -1735,13 +1735,14 @@ int main(int argc, char* argv[])
short id_ladspa = add_plugin(BINARY_NATIVE, PLUGIN_LADSPA, "/usr/lib/ladspa/LEET_eqbw2x2.so", "LADSPA plug name, test long name - "
"------- name ------------ name2 ----------- name3 ------------ name4 ------------ name5 ---------- name6", "leet_equalizer_bw2x2", nullptr);

short id_dssi = add_plugin(BINARY_NATIVE, PLUGIN_DSSI, "/usr/lib/dssi/fluidsynth-dssi.so", "DSSI pname, short-utf8 _ \xAE", "FluidSynth-DSSI", (void*)"/usr/lib/dssi/fluidsynth-dssi/FluidSynth-DSSI_gtk");
short id_dssi = add_plugin(BINARY_NATIVE, PLUGIN_DSSI, "/usr/lib/dssi/fluidsynth-dssi.so", "DSSI pname, short-utf8 _ \xAE", "FluidSynth-DSSI", (void*)"/usr/lib/dssi/fluidsynth-dssi/FluidSynth-DSSI_gtk");
short id_native = add_plugin(BINARY_NATIVE, PLUGIN_INTERNAL, "", "ZynHere", "zynaddsubfx", nullptr);

//short id_lv2 = add_plugin(BINARY_NATIVE, PLUGIN_LV2, "FILENAME", "HAHA name!!!", "http://studionumbersix.com/foo/lv2/yc20", nullptr);

//short id_vst = add_plugin(BINARY_NATIVE, PLUGIN_LV2, "FILENAME", "HAHA name!!!", "http://studionumbersix.com/foo/lv2/yc20", nullptr);

if (id_ladspa < 0 || id_dssi < 0)
if (id_ladspa < 0 || id_dssi < 0 || id_native < 0)
{
qCritical("failed to start load plugins, reason:\n%s", get_last_error());
delete vstGui;
@@ -1758,6 +1759,7 @@ int main(int argc, char* argv[])
// activate
set_active(id_ladspa, true);
set_active(id_dssi, true);
set_active(id_native, true);

// start guis
show_gui(id_dssi, true);
@@ -1774,6 +1776,7 @@ int main(int argc, char* argv[])

remove_plugin(id_ladspa);
remove_plugin(id_dssi);
remove_plugin(id_native);
engine_close();

return 0;


+ 6
- 0
c++/carla-backend/carla_native.cpp View File

@@ -25,6 +25,9 @@ extern void carla_register_native_plugin_bypass();

// Internal C++ plugins
extern void carla_register_native_plugin_midiSplit();
#ifdef WANT_ZYNADDSUBFX
extern void carla_register_native_plugin_zynAddSubFx();
#endif

CARLA_BACKEND_START_NAMESPACE

@@ -67,6 +70,9 @@ public:
firstInit = false;
carla_register_native_plugin_bypass();
carla_register_native_plugin_midiSplit();
#ifdef WANT_ZYNADDSUBFX
carla_register_native_plugin_zynAddSubFx();
#endif
}
}



+ 66
- 1
c++/carla-backend/qtcreator/carla-backend.pro View File

@@ -7,6 +7,7 @@ PKGCONFIG = liblo
PKGCONFIG += jack
PKGCONFIG += alsa libpulse-simple
PKGCONFIG += fluidsynth linuxsampler
PKGCONFIG += fftw3 mxml
PKGCONFIG += suil-0

TARGET = carla_backend
@@ -33,7 +34,70 @@ SOURCES = \

SOURCES += \
../plugins/bypass.c \
../plugins/midi-split.cpp
../plugins/midi-split.cpp \
../plugins/zynaddsubfx.cpp

#SOURCES += \
# ../plugins/zynaddsubfx/DSP/AnalogFilter.cpp \
# ../plugins/zynaddsubfx/DSP/FFTwrapper.cpp \
# ../plugins/zynaddsubfx/DSP/Filter.cpp \
# ../plugins/zynaddsubfx/DSP/FormantFilter.cpp \
# ../plugins/zynaddsubfx/DSP/SVFilter.cpp \
# ../plugins/zynaddsubfx/DSP/Unison.cpp \
# ../plugins/zynaddsubfx/Effects/Alienwah.cpp \
# ../plugins/zynaddsubfx/Effects/Chorus.cpp \
# ../plugins/zynaddsubfx/Effects/Distorsion.cpp \
# ../plugins/zynaddsubfx/Effects/DynamicFilter.cpp \
# ../plugins/zynaddsubfx/Effects/Echo.cpp \
# ../plugins/zynaddsubfx/Effects/Effect.cpp \
# ../plugins/zynaddsubfx/Effects/EffectLFO.cpp \
# ../plugins/zynaddsubfx/Effects/EffectMgr.cpp \
# ../plugins/zynaddsubfx/Effects/EQ.cpp \
# ../plugins/zynaddsubfx/Effects/Phaser.cpp \
# ../plugins/zynaddsubfx/Effects/Reverb.cpp \
# ../plugins/zynaddsubfx/Misc/Bank.cpp \
# ../plugins/zynaddsubfx/Misc/Config.cpp \
# ../plugins/zynaddsubfx/Misc/Dump.cpp \
# ../plugins/zynaddsubfx/Misc/Master.cpp \
# ../plugins/zynaddsubfx/Misc/Microtonal.cpp \
# ../plugins/zynaddsubfx/Misc/Part.cpp \
# ../plugins/zynaddsubfx/Misc/Recorder.cpp \
# ../plugins/zynaddsubfx/Misc/Stereo.cpp \
# ../plugins/zynaddsubfx/Misc/Util.cpp \
# ../plugins/zynaddsubfx/Misc/WavFile.cpp \
# ../plugins/zynaddsubfx/Misc/WaveShapeSmps.cpp \
# ../plugins/zynaddsubfx/Misc/XMLwrapper.cpp \
# ../plugins/zynaddsubfx/Nio/AudioOut.cpp \
# ../plugins/zynaddsubfx/Nio/Engine.cpp \
# ../plugins/zynaddsubfx/Nio/EngineMgr.cpp \
# ../plugins/zynaddsubfx/Nio/MidiIn.cpp \
# ../plugins/zynaddsubfx/Nio/Nio.cpp \
# ../plugins/zynaddsubfx/Nio/NulEngine.cpp \
# ../plugins/zynaddsubfx/Nio/InMgr.cpp \
# ../plugins/zynaddsubfx/Nio/OutMgr.cpp \
# ../plugins/zynaddsubfx/Nio/WavEngine.cpp \
# ../plugins/zynaddsubfx/Params/ADnoteParameters.cpp \
# ../plugins/zynaddsubfx/Params/Controller.cpp \
# ../plugins/zynaddsubfx/Params/EnvelopeParams.cpp \
# ../plugins/zynaddsubfx/Params/FilterParams.cpp \
# ../plugins/zynaddsubfx/Params/LFOParams.cpp \
# ../plugins/zynaddsubfx/Params/PADnoteParameters.cpp \
# ../plugins/zynaddsubfx/Params/Presets.cpp \
# ../plugins/zynaddsubfx/Params/PresetsArray.cpp \
# ../plugins/zynaddsubfx/Params/PresetsStore.cpp \
# ../plugins/zynaddsubfx/Params/SUBnoteParameters.cpp \
# ../plugins/zynaddsubfx/Synth/ADnote.cpp \
# ../plugins/zynaddsubfx/Synth/Envelope.cpp \
# ../plugins/zynaddsubfx/Synth/LFO.cpp \
# ../plugins/zynaddsubfx/Synth/OscilGen.cpp \
# ../plugins/zynaddsubfx/Synth/PADnote.cpp \
# ../plugins/zynaddsubfx/Synth/Resonance.cpp \
# ../plugins/zynaddsubfx/Synth/SUBnote.cpp \
# ../plugins/zynaddsubfx/Synth/SynthNote.cpp

# ../plugins/zynaddsubfx/Effects/.cpp \
# ../plugins/zynaddsubfx/Params/.cpp \
# ../plugins/zynaddsubfx/Synth/.cpp \

HEADERS = \
../carla_backend.h \
@@ -76,6 +140,7 @@ DEFINES += CARLA_ENGINE_VST
DEFINES += HAVE_SUIL
DEFINES += WANT_LADSPA WANT_DSSI WANT_LV2 WANT_VST
DEFINES += WANT_FLUIDSYNTH WANT_LINUXSAMPLER
DEFINES += WANT_ZYNADDSUBFX

#LIBS += -L../../carla-jackbridge -lcarla-jackbridge-native



Loading…
Cancel
Save