[SCM] calf/master: + Organ: possible fix for hold pedal release causing skipping release stage + Organ: GUI rearrangements (Vibrato section put in Advanced and assigned a proper group label)

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


The following commit has been merged in the master branch:
commit 7ad52cdb61bf5613d8164f092d4c3f64e607df3a
Author: kfoltman <kfoltman at 78b06b96-2940-0410-b7fc-879d825d01d8>
Date:   Sun Aug 10 14:39:29 2008 +0000

    + Organ: possible fix for hold pedal release causing skipping release stage
    + Organ: GUI rearrangements (Vibrato section put in Advanced and assigned a proper group label)
    
    
    git-svn-id: https://calf.svn.sourceforge.net/svnroot/calf/trunk@267 78b06b96-2940-0410-b7fc-879d825d01d8

diff --git a/src/calf/organ.h b/src/calf/organ.h
index 6e2abea..1eb48ac 100644
--- a/src/calf/organ.h
+++ b/src/calf/organ.h
@@ -237,6 +237,8 @@ protected:
     organ_vibrato vibrato;
     float velocity;
     bool perc_released;
+    /// The envelopes have ended and the voice is in final fadeout stage
+    bool finishing;
 
 public:
     organ_voice()
@@ -255,7 +257,9 @@ public:
     }
 
     void note_on(int note, int vel) {
+        finishing = false;
         perc_released = false;
+        released = false;
         reset();
         this->note = note;
         const float sf = 0.001f;
@@ -268,7 +272,6 @@ public:
         update_pitch();
         velocity = vel * 1.0 / 127.0;
         amp.set(1.0f);
-        released = false;
         perc_note_on(note, vel);
     }
 
diff --git a/src/organ.cpp b/src/organ.cpp
index a0c5911..cf6836c 100644
--- a/src/organ.cpp
+++ b/src/organ.cpp
@@ -249,30 +249,6 @@ const char *organ_audio_module::get_gui_xml()
                         "</vbox>"
                     "</frame>"
                 "</vbox>"
-                "<frame label=\"LFO\">"
-                    "<vbox>"
-                        "<vbox expand=\"0\" fill=\"0\">"
-                            "<label param=\"vib_rate\" />"
-                            "<align><knob param=\"vib_rate\" expand=\"0\" fill=\"0\"/></align><value param=\"vib_rate\"/>"
-                        "</vbox>"
-                        "<vbox expand=\"0\" fill=\"0\">"
-                            "<label param=\"vib_amt\" />"
-                            "<align><knob param=\"vib_amt\" expand=\"0\" fill=\"0\"/></align><value param=\"vib_amt\"/>"
-                        "</vbox>"
-                        "<vbox expand=\"0\" fill=\"0\">"
-                            "<label param=\"vib_wet\" />"
-                            "<align><knob param=\"vib_wet\" expand=\"0\" fill=\"0\"/></align><value param=\"vib_wet\"/>"
-                        "</vbox>"
-                        "<vbox expand=\"0\" fill=\"0\">"
-                            "<label param=\"vib_phase\" />"
-                            "<align><knob param=\"vib_phase\" expand=\"0\" fill=\"0\" type=\"3\"/></align><value param=\"vib_phase\"/>"
-                        "</vbox>"
-                        "<vbox expand=\"0\" fill=\"0\">"
-                            "<label param=\"vib_mode\" />"
-                            "<combo param=\"vib_mode\" expand=\"0\" fill=\"0\"/>"
-                        "</vbox>"
-                    "</vbox>"
-                "</frame>"
             "</hbox>"
             "<vbox page=\"Advanced\">"
                 "<align scale-x=\"1.0\" scale-y=\"0.3\">"
@@ -283,7 +259,7 @@ const char *organ_audio_module::get_gui_xml()
                                 "<table rows=\"2\" cols=\"5\">"
                                     "<vbox attach-x=\"0\" attach-y=\"0\">"
                                         "<label param=\"perc_waveform\"/>"
-                                        "<combo param=\"perc_waveform\"/>"
+                                        "<align><combo param=\"perc_waveform\"/></align>"
                                     "</vbox>"        
                                     "<vbox attach-x=\"1\" attach-y=\"0\">"
                                         "<label param=\"perc_harmonic\"/>"
@@ -307,7 +283,7 @@ const char *organ_audio_module::get_gui_xml()
                                     "</vbox>"        
                                     "<vbox attach-x=\"0\" attach-y=\"1\">"
                                         "<label param=\"perc_fm_waveform\"/>"
-                                        "<combo param=\"perc_fm_waveform\"/>"
+                                        "<align><combo param=\"perc_fm_waveform\"/></align>"
                                     "</vbox>"        
                                     "<vbox attach-x=\"1\" attach-y=\"1\">"
                                         "<label param=\"perc_fm_harmonic\"/>"
@@ -331,43 +307,71 @@ const char *organ_audio_module::get_gui_xml()
                                     "</vbox>"        
                                 "</table>"
                                 "<vbox>"
-                                    "<vbox>"
-                                        "<label param=\"perc_stereo\"/>"
-                                        "<knob param=\"perc_stereo\" expand=\"0\" fill=\"0\" type=\"3\"/>"
-                                        "<value param=\"perc_stereo\"/>"
-                                    "</vbox>"
                                     "<hbox>"
-                                        "<vbox>"
-                                            "<label param=\"perc_trigger\"/>"
-                                            "<combo param=\"perc_trigger\"/>"
-                                        "</vbox>"        
+                                        "<align>"
+                                            "<vbox>"
+                                                "<label param=\"perc_stereo\"/>"
+                                                "<knob param=\"perc_stereo\" expand=\"0\" fill=\"0\" type=\"3\"/>"
+                                                "<value param=\"perc_stereo\"/>"
+                                            "</vbox>"
+                                        "</align>"
+                                        "<align>"
+                                            "<vbox>"
+                                                "<label param=\"perc_trigger\"/>"
+                                                "<align>"
+                                                    "<combo param=\"perc_trigger\"/>"
+                                                "</align>"
+                                            "</vbox>"        
+                                        "</align>"
                                     "</hbox>"
                                 "</vbox>"
                             "</hbox>"
                         "</vbox>"
                     "</frame>"
                 "</align>"
-                "<align scale-x=\"0.8\" scale-y=\"0.3\">"
-                    "<frame label=\"Additional settings\">"
-                        "<hbox>"
-                            "<vbox>"
-                                "<label param=\"transpose\"/>"
-                                "<align><knob param=\"transpose\" type=\"1\"/></align>"
-                                "<value param=\"transpose\"/>"
-                            "</vbox>"
-                            "<vbox>"
-                                "<label param=\"detune\"/>"
-                                "<align><knob param=\"detune\" type=\"1\"/></align>"
-                                "<value param=\"detune\"/>"
-                            "</vbox>"
-                            "<vbox>"
-                                "<label param=\"foldnote\"/>"
-                                "<align><knob param=\"foldnote\"/></align>"
-                                "<value param=\"foldnote\"/>"
-                            "</vbox>"
-                        "</hbox>"
-                    "</frame>"
-                "</align>"
+                "<frame label=\"Vibrato\">"
+                    "<hbox>"
+                        "<vbox expand=\"0\" fill=\"0\">"
+                            "<label param=\"vib_rate\" />"
+                            "<align><knob param=\"vib_rate\" expand=\"0\" fill=\"0\"/></align><value param=\"vib_rate\"/>"
+                        "</vbox>"
+                        "<vbox expand=\"0\" fill=\"0\">"
+                            "<label param=\"vib_amt\" />"
+                            "<align><knob param=\"vib_amt\" expand=\"0\" fill=\"0\"/></align><value param=\"vib_amt\"/>"
+                        "</vbox>"
+                        "<vbox expand=\"0\" fill=\"0\">"
+                            "<label param=\"vib_wet\" />"
+                            "<align><knob param=\"vib_wet\" expand=\"0\" fill=\"0\"/></align><value param=\"vib_wet\"/>"
+                        "</vbox>"
+                        "<vbox expand=\"0\" fill=\"0\">"
+                            "<label param=\"vib_phase\" />"
+                            "<align><knob param=\"vib_phase\" expand=\"0\" fill=\"0\" type=\"3\"/></align><value param=\"vib_phase\"/>"
+                        "</vbox>"
+                        "<vbox expand=\"0\" fill=\"0\">"
+                            "<label param=\"vib_mode\" />"
+                            "<align><combo param=\"vib_mode\" expand=\"0\" fill=\"0\"/></align>"
+                        "</vbox>"
+                    "</hbox>"
+                "</frame>"
+                "<frame label=\"Additional settings\">"
+                    "<hbox>"
+                        "<vbox>"
+                            "<label param=\"transpose\"/>"
+                            "<align><knob param=\"transpose\" type=\"1\"/></align>"
+                            "<value param=\"transpose\"/>"
+                        "</vbox>"
+                        "<vbox>"
+                            "<label param=\"detune\"/>"
+                            "<align><knob param=\"detune\" type=\"1\"/></align>"
+                            "<value param=\"detune\"/>"
+                        "</vbox>"
+                        "<vbox>"
+                            "<label param=\"foldnote\"/>"
+                            "<align><knob param=\"foldnote\"/></align>"
+                            "<value param=\"foldnote\"/>"
+                        "</vbox>"
+                    "</hbox>"
+                "</frame>"
                 "<vbox>"
                 "</vbox>"
             "</vbox>"
@@ -1146,7 +1150,7 @@ void organ_voice::render_block() {
     if (vibrato_mode >= lfomode_direct && vibrato_mode <= lfomode_filter2)
         vibrato.process(parameters, aux_buffers[vibrato_mode - lfomode_direct], BlockSize, sample_rate);
     if (!any_running)
-        released = true;
+        finishing = true;
     // calculate delta from pre and post
     for (int i = 0; i < ampctl_count - 1; i++)
         amp_post[i] = (amp_post[i] - amp_pre[i]) * (1.0 / BlockSize);
@@ -1175,7 +1179,7 @@ void organ_voice::render_block() {
     if (vibrato_mode == lfomode_voice)
         vibrato.process(parameters, output_buffer, BlockSize, sample_rate);
 
-    if (released)
+    if (finishing)
     {
         for (int i = 0; i < (int) BlockSize; i++) {
             output_buffer[i][0] *= amp.get();

-- 
calf audio plugins packaging



More information about the pkg-multimedia-commits mailing list