[SCM] calf/master: final changes in analyser and standard settings

js at users.alioth.debian.org js at users.alioth.debian.org
Tue May 7 15:41:03 UTC 2013


The following commit has been merged in the master branch:
commit 3ded42b42704ed8b475d087b69e2b0f09f834f9f
Author: Christian Holschuh <chrisch.holli at gmx.de>
Date:   Tue Mar 6 15:35:09 2012 +0100

    final changes in analyser and standard settings

diff --git a/src/metadata.cpp b/src/metadata.cpp
index 1a5e073..887562b 100644
--- a/src/metadata.cpp
+++ b/src/metadata.cpp
@@ -992,7 +992,7 @@ CALF_PORT_PROPS(analyzer) = {
     { 0,           0,           1,     0,  PF_FLOAT | PF_CTL_LED | PF_PROP_OUTPUT | PF_PROP_OPTIONAL, NULL, "clip_L", "Clip L" },
     { 0,           0,           1,     0,  PF_FLOAT | PF_CTL_LED | PF_PROP_OUTPUT | PF_PROP_OPTIONAL, NULL, "clip_R", "Clip R" },
     
-    { 1,           0.5,           2,    0,  PF_FLOAT | PF_SCALE_LOG | PF_CTL_KNOB | PF_UNIT_COEF | PF_PROP_NOBOUNDS, NULL, "analyzer_level", "Analyzer Level" },
+    { 1.33,           0.5,           2,    0,  PF_FLOAT | PF_SCALE_LOG | PF_CTL_KNOB | PF_UNIT_COEF | PF_PROP_NOBOUNDS, NULL, "analyzer_level", "Analyzer Level" },
     { 0,           0,           2,     0,  PF_ENUM | PF_CTL_COMBO, analyzer_source_names, "analyzer_source", "Analyzer Source" },
     { 6,      2,           8,   0,  PF_INT | PF_SCALE_LINEAR | PF_CTL_KNOB | PF_UNIT_COEF | PF_PROP_GRAPH, NULL, "analyzer_accuracy", "Analyzer Accuracy" },
     { 13,      1,           15,   0,  PF_INT | PF_SCALE_LINEAR | PF_CTL_KNOB | PF_UNIT_COEF | PF_PROP_GRAPH, NULL, "analyzer_speed", "Analyzer Speed" },
@@ -1000,7 +1000,7 @@ CALF_PORT_PROPS(analyzer) = {
     { 0,           0,           2,     0,  PF_ENUM | PF_CTL_COMBO, analyzer_smooth_names, "analyzer_smoothing", "Analyzer Smoothing" },
     { 0,           0,           1,     0,  PF_BOOL | PF_CTL_TOGGLE, NULL, "analyzer_hold", "Analyzer Hold" },
     { 0,          0, 1,     2, PF_BOOL | PF_CTL_TOGGLE , NULL, "analyzer_freeze", "Analyzer Freeze" },
-    { 1,          0, 1,     2, PF_BOOL | PF_CTL_TOGGLE , NULL, "analyzer_linear", "Analyzer Linear" },
+    { 0,          0, 1,     2, PF_BOOL | PF_CTL_TOGGLE , NULL, "analyzer_linear", "Analyzer Linear" },
     { 1,          0, 1,     2, PF_BOOL | PF_CTL_TOGGLE , NULL, "analyzer_bars", "Analyzer Bars" },
     { 1,           0,           3,     0,  PF_ENUM | PF_CTL_COMBO, analyzer_mode_names, "analyzer_mode", "Analyzer Mode" },
     
diff --git a/src/modules.cpp b/src/modules.cpp
index 1b7af4a..6acbe2f 100644
--- a/src/modules.cpp
+++ b/src/modules.cpp
@@ -997,6 +997,7 @@ bool analyzer_audio_module::get_graph(int index, int subindex, float *data, int
         return false;
     bool fftdone = false; // if fft was renewed, this one is true
     double freq;
+    float stereo_coeff = pow(2, 4 * *params[param_analyzer_level] - 2);
     int iter = 0;
     int _iter = 1;
     float posneg = 1;
@@ -1137,7 +1138,7 @@ bool analyzer_audio_module::get_graph(int index, int subindex, float *data, int
                         //do not forget fft_out[_iter] for the next time
                         lastout = fft_out[_iter];
                         //pumping up actual signal an erase surrounding sounds
-                        fft_out[_iter] = std::max(n * fabs(fft_out[_iter]) - var1 , 1e-20);
+                        fft_out[_iter] = 0.25f * std::max(n * 0.6f * fabs(fft_out[_iter]) - var1 , 1e-20);
                     break;
                     case 3:
                         if(fftdone and i) {
@@ -1198,7 +1199,7 @@ bool analyzer_audio_module::get_graph(int index, int subindex, float *data, int
             data[i] = dB_grid(fabs(val) / _accuracy * 2.f + 1e-20, pow(64, *params[param_analyzer_level]), 0.5f);
             if(*params[param_analyzer_mode] == 3) {
                 if(i) {
-                    data[i] = val * pow(*params[param_analyzer_level], 3);
+                    data[i] = 0.2f * (1.f - stereo_coeff) * pow(val, 5.f) + 0.8f * ( 1.f - stereo_coeff) * pow(val, 3.f) + val * stereo_coeff;
                 }
                 else data[i] = 0.f;
             } 

-- 
calf audio plugins packaging



More information about the pkg-multimedia-commits mailing list