[SCM] calf/master: + Organ: separate control for Velocity to FM amount in percussion module

js at users.alioth.debian.org js at users.alioth.debian.org
Tue May 7 15:37:28 UTC 2013


The following commit has been merged in the master branch:
commit df48187351e0dc45f3bffd5fd2e65dcb2b209609
Author: kfoltman <kfoltman at 78b06b96-2940-0410-b7fc-879d825d01d8>
Date:   Sun Aug 3 22:09:06 2008 +0000

    + Organ: separate control for Velocity to FM amount in percussion module
    
    
    git-svn-id: https://calf.svn.sourceforge.net/svnroot/calf/trunk@253 78b06b96-2940-0410-b7fc-879d825d01d8

diff --git a/src/calf/organ.h b/src/calf/organ.h
index d45f5e7..0801b1c 100644
--- a/src/calf/organ.h
+++ b/src/calf/organ.h
@@ -59,12 +59,13 @@ struct organ_parameters {
     float percussion_level;
     float percussion_wave;
     float percussion_harmonic;
+    float percussion_vel2amp;
     float percussion_fm_time;
     float percussion_fm_depth;
     float percussion_fm_wave;
     float percussion_fm_harmonic;
+    float percussion_vel2fm;
     float percussion_trigger;
-    float percussion_vel2amp;
     float filter_chain;
     float master;
 
@@ -310,9 +311,9 @@ struct drawbar_organ: public synth::basic_synth {
         par_pan1, par_pan2, par_pan3, par_pan4, par_pan5, par_pan6, par_pan7, par_pan8, par_pan9, 
         par_routing1, par_routing2, par_routing3, par_routing4, par_routing5, par_routing6, par_routing7, par_routing8, par_routing9, 
         par_foldover,
-        par_percdecay, par_perclevel, par_percwave, par_percharm,
-        par_percfmdecay, par_percfmdepth, par_percfmwave, par_percfmharm, 
-        par_perctrigger, par_percvel2amp,
+        par_percdecay, par_perclevel, par_percwave, par_percharm, par_percvel2amp,
+        par_percfmdecay, par_percfmdepth, par_percfmwave, par_percfmharm, par_percvel2fm,
+        par_perctrigger, 
         par_filterchain,
         par_master, 
         par_f1cutoff, par_f1res, par_f1env1, par_f1env2, par_f1env3, par_f1keyf,
diff --git a/src/organ.cpp b/src/organ.cpp
index 62cdc68..40b904c 100644
--- a/src/organ.cpp
+++ b/src/organ.cpp
@@ -280,7 +280,7 @@ const char *organ_audio_module::get_gui_xml()
                         "<vbox>"
                             "<align scale-x=\"0.0\" scale-y=\"1.0\"><vbox><keyboard octaves=\"10\"/><curve key=\"map_curve\" maxpoints=\"4\"/></vbox></align>"
                             "<hbox>"
-                                "<table rows=\"2\" cols=\"4\">"
+                                "<table rows=\"2\" cols=\"5\">"
                                     "<vbox attach-x=\"0\" attach-y=\"0\">"
                                         "<label param=\"perc_waveform\"/>"
                                         "<combo param=\"perc_waveform\"/>"
@@ -300,6 +300,11 @@ const char *organ_audio_module::get_gui_xml()
                                         "<knob param=\"perc_decay\" expand=\"0\" fill=\"0\"/>"
                                         "<value param=\"perc_decay\"/>"
                                     "</vbox>"
+                                    "<vbox attach-x=\"4\" attach-y=\"0\">"
+                                        "<label param=\"perc_vel2amp\"/>"
+                                        "<knob param=\"perc_vel2amp\" expand=\"0\" fill=\"0\"/>"
+                                        "<value param=\"perc_vel2amp\"/>"
+                                    "</vbox>"        
                                     "<vbox attach-x=\"0\" attach-y=\"1\">"
                                         "<label param=\"perc_fm_waveform\"/>"
                                         "<combo param=\"perc_fm_waveform\"/>"
@@ -319,6 +324,11 @@ const char *organ_audio_module::get_gui_xml()
                                         "<knob param=\"perc_fm_decay\" expand=\"0\" fill=\"0\"/>"
                                         "<value param=\"perc_fm_decay\"/>"
                                     "</vbox>"
+                                    "<vbox attach-x=\"4\" attach-y=\"1\">"
+                                        "<label param=\"perc_vel2fm\"/>"
+                                        "<knob param=\"perc_vel2fm\" expand=\"0\" fill=\"0\"/>"
+                                        "<value param=\"perc_vel2fm\"/>"
+                                    "</vbox>"        
                                 "</table>"
                                 "<vbox>"
                                     "<hbox>"
@@ -327,13 +337,6 @@ const char *organ_audio_module::get_gui_xml()
                                             "<combo param=\"perc_trigger\"/>"
                                         "</vbox>"        
                                     "</hbox>"
-                                    "<hbox>"
-                                        "<vbox>"
-                                            "<label param=\"perc_vel2amp\"/>"
-                                            "<knob param=\"perc_vel2amp\" expand=\"0\" fill=\"0\"/>"
-                                            "<value param=\"perc_vel2amp\"/>"
-                                        "</vbox>"        
-                                    "</hbox>"
                                 "</vbox>"
                             "</hbox>"
                         "</vbox>"
@@ -506,14 +509,15 @@ parameter_properties organ_audio_module::param_props[] = {
     { 0.25,      0,  1, 100, PF_FLOAT | PF_SCALE_GAIN | PF_CTL_KNOB, NULL, "perc_level", "P: Level" },
     { 2,         0,  organ_voice_base::wave_count_small - 1, 1, PF_ENUM | PF_CTL_COMBO, organ_wave_names, "perc_waveform", "P: Carrier Wave" },
     { 2,      1, 32, 32, PF_INT | PF_SCALE_LINEAR | PF_CTL_KNOB, NULL, "perc_harmonic", "P: Carrier Frq" },
+    { 0,          0,    1,    0, PF_FLOAT | PF_SCALE_PERC, NULL, "perc_vel2amp", "P: Vel->Amp" },
     
     { 200,         10,  3000, 100, PF_FLOAT | PF_SCALE_LOG | PF_CTL_KNOB | PF_UNIT_MSEC, NULL, "perc_fm_decay", "P: Modulator Decay" },
-    { 0,          0,    4,    0, PF_FLOAT | PF_SCALE_PERC, NULL, "perc_fm_depth", "P: FM Depth" },
+    { 1,          0,    4,    0, PF_FLOAT | PF_SCALE_PERC, NULL, "perc_fm_depth", "P: FM Depth" },
     { 2,         0,  organ_voice_base::wave_count_small - 1, 1, PF_ENUM | PF_CTL_COMBO, organ_wave_names, "perc_fm_waveform", "P: Modulator Wave" },
     { 2,      1, 32, 32, PF_INT | PF_SCALE_LINEAR | PF_CTL_KNOB, NULL, "perc_fm_harmonic", "P: Modulator Frq" },
+    { 0,          0,    1,    0, PF_FLOAT | PF_SCALE_PERC, NULL, "perc_vel2fm", "P: Vel->FM" },
     
     { 0,         0,  organ_voice_base::perctrig_count - 1, 0, PF_ENUM | PF_CTL_COMBO, organ_percussion_trigger_names, "perc_trigger", "P: Trigger" },
-    { 0,          0,    1,    0, PF_FLOAT | PF_SCALE_PERC, NULL, "perc_vel2amp", "P: Vel->Amp" },
 
     { 0,         0,  1, 0, PF_BOOL | PF_CTL_TOGGLE, NULL, "filter_chain", "Filter 1 To 2" },
     { 0.1,         0,  1, 100, PF_FLOAT | PF_SCALE_GAIN | PF_CTL_KNOB | PF_PROP_OUTPUT_GAIN, NULL, "master", "Volume" },
@@ -1180,7 +1184,7 @@ void percussion_voice::note_on(int note, int vel)
             break;
         }
     }
-    fm_amp.set(fm_keytrack * (1.0f + (vel - 127) * parameters->percussion_vel2amp / 127.0));
+    fm_amp.set(fm_keytrack * (1.0f + (vel - 127) * parameters->percussion_vel2fm / 127.0));
 }
 
 void percussion_voice::render_to(float (*buf)[2], int nsamples)

-- 
calf audio plugins packaging



More information about the pkg-multimedia-commits mailing list