[SCM] calf/master: + Wavetable: new synth (the name is temporary)

js at users.alioth.debian.org js at users.alioth.debian.org
Tue May 7 15:39:23 UTC 2013


The following commit has been merged in the master branch:
commit 4c36059fc389a6cc22cd0c8b61c95d73f0bcf04b
Author: Krzysztof Foltman <wdev at foltman.com>
Date:   Sat Feb 28 13:24:58 2009 +0000

    + Wavetable: new synth (the name is temporary)

diff --git a/src/Makefile.am b/src/Makefile.am
index 7836b41..cb4e1a7 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -51,7 +51,7 @@ calfbenchmark_CXXFLAGS = $(AM_CXXFLAGS) -DTEST_OSC
 calfbenchmark_LDADD += libcalfgui.la
 endif
 
-calf_la_SOURCES = modules.cpp modules_dsp.cpp modules_small.cpp fluidsynth.cpp giface.cpp monosynth.cpp organ.cpp osctl.cpp osctlnet.cpp plugin.cpp preset.cpp synth.cpp utils.cpp
+calf_la_SOURCES = modules.cpp modules_dsp.cpp modules_small.cpp fluidsynth.cpp giface.cpp monosynth.cpp organ.cpp osctl.cpp osctlnet.cpp plugin.cpp preset.cpp synth.cpp utils.cpp wavetable.cpp
 calf_la_LIBADD ?= $(FLUIDSYNTH_DEPS_LIBS)
 if USE_DEBUG
 calf_la_LDFLAGS = -rpath $(ladspadir) -avoid-version -module -lexpat -disable-static  
@@ -68,7 +68,7 @@ calflv2gui_la_LDFLAGS = -rpath $(lv2dir) -avoid-version -module -lexpat -export-
 endif
 endif
 
-libcalfstatic_la_SOURCES = modules.cpp modules_dsp.cpp modules_small.cpp fluidsynth.cpp giface.cpp monosynth.cpp organ.cpp osctl.cpp osctlnet.cpp preset.cpp synth.cpp utils.cpp
+libcalfstatic_la_SOURCES = modules.cpp modules_dsp.cpp modules_small.cpp fluidsynth.cpp giface.cpp monosynth.cpp organ.cpp osctl.cpp osctlnet.cpp preset.cpp synth.cpp utils.cpp wavetable.cpp
 libcalfstatic_la_LDFLAGS = -static -lexpat -disable-shared  $(FLUIDSYNTH_DEPS_LIBS)
 
 if USE_GUI
diff --git a/src/calf/metadata.h b/src/calf/metadata.h
index 248ea3b..39fb67c 100644
--- a/src/calf/metadata.h
+++ b/src/calf/metadata.h
@@ -211,6 +211,17 @@ struct fluidsynth_metadata: public plugin_metadata<fluidsynth_metadata>
     const char **get_default_configure_vars();
 };
     
+/// Wavetable - metadata
+struct wavetable_metadata: public plugin_metadata<wavetable_metadata>
+{
+    enum { 
+        par_o1wave, par_o1offset, par_o1transpose, par_o1detune, par_o1level,
+        param_count };
+    enum { in_count = 0, out_count = 2, support_midi = true, require_midi = true, rt_capable = true };
+    enum { step_size = 64 };
+    PLUGIN_NAME_ID_LABEL("wavetable", "wavetable", "Wavetable")
+};
+    
 };
 
 #endif
diff --git a/src/calf/modulelist.h b/src/calf/modulelist.h
index 1ba573d..0c9f0b8 100644
--- a/src/calf/modulelist.h
+++ b/src/calf/modulelist.h
@@ -12,6 +12,7 @@
     PER_MODULE_ITEM(compressor, false, "compressor")
 #ifdef ENABLE_EXPERIMENTAL
     PER_MODULE_ITEM(fluidsynth, true, "fluidsynth")
+    PER_MODULE_ITEM(wavetable, true, "wavetable")
 #endif
 #undef PER_MODULE_ITEM
 #endif
diff --git a/src/calf/modules_synths.h b/src/calf/modules_synths.h
index 66b79a7..6e054c7 100644
--- a/src/calf/modules_synths.h
+++ b/src/calf/modules_synths.h
@@ -255,4 +255,10 @@ public:
 
 };
 
+#if ENABLE_EXPERIMENTAL
+    
+#include "wavetable.h"
+
+#endif
+
 #endif
diff --git a/src/modules.cpp b/src/modules.cpp
index da48666..3dde553 100644
--- a/src/modules.cpp
+++ b/src/modules.cpp
@@ -504,6 +504,24 @@ CALF_PORT_PROPS(fluidsynth) = {
 
 ////////////////////////////////////////////////////////////////////////////
 
+const char *wavetable_init_soundfont = "";
+
+CALF_PORT_NAMES(wavetable) = {
+    "Out L", "Out R", 
+};
+
+CALF_PLUGIN_INFO(wavetable) = { 0x8701, "Wavetable", "Calf Wavetable", "Krzysztof Foltman", calf_plugins::calf_copyright_info, "SynthesizerPlugin" };
+
+CALF_PORT_PROPS(wavetable) = {
+    { 0,       0,  organ_enums::wave_count - 1, 0, PF_ENUM | PF_SCALE_LINEAR | PF_CTL_COMBO, organ_wave_names, "o1wave", "Osc1 Wave" },
+    { 0.5,     0,      1,  0, PF_FLOAT | PF_SCALE_PERC | PF_CTL_KNOB | PF_UNIT_COEF, NULL, "o1offset", "Osc1 Ctl"},
+    { 0,        -48,   48, 48*2+1, PF_INT   | PF_SCALE_LINEAR | PF_CTL_KNOB | PF_UNIT_SEMITONES, NULL, "o1trans", "Osc1 Transpose" },
+    { 0,       -100,  100,      0, PF_INT   | PF_SCALE_LINEAR | PF_CTL_KNOB | PF_UNIT_CENTS, NULL, "o1detune", "Osc1 Detune" },
+    { 1,          0,   1,     0, PF_FLOAT | PF_SCALE_GAIN | PF_CTL_KNOB | PF_UNIT_COEF | PF_PROP_NOBOUNDS, NULL, "o1level", "Osc1 Level" },
+};
+
+////////////////////////////////////////////////////////////////////////////
+
 void calf_plugins::get_all_plugins(std::vector<plugin_metadata_iface *> &plugins)
 {
     #define PER_MODULE_ITEM(name, isSynth, jackname) plugins.push_back(new name##_metadata);

-- 
calf audio plugins packaging



More information about the pkg-multimedia-commits mailing list