Merge branch 'calf-updates'

* calf-updates:
  + Deesser: use correct threshold
  + Equalizer: remove unused variables
  + Gain reduction module: clearer authorship information
  + Framework: placeholder for waveshaper class (need it to merge further changes from Markus)
(cherry picked from commit 774bd74c77)
This commit is contained in:
Tobias Doerffel
2009-11-10 10:28:47 +01:00
parent 595d50fc20
commit be2b6ec9b0
3 changed files with 41 additions and 8 deletions

View File

@@ -1267,13 +1267,9 @@ public:
/// Equalizer 5 Band by Markus Schmidt (based on Krzysztof's filters)
class equalizer5band_audio_module: public audio_module<equalizer5band_metadata>, public frequency_response_line_graph {
private:
float hp_mode_old, hp_freq_old;
float lp_mode_old, lp_freq_old;
float ls_level_old, ls_freq_old;
float hs_level_old, hs_freq_old;
float p_level_old[3], p_freq_old[3], p_q_old[3];
float hp_mode_old1, hp_freq_old1, hp_active_old1;
float lp_mode_old1, lp_freq_old1, lp_active_old1;
float ls_level_old1, ls_freq_old1, ls_active_old1;
float hs_level_old1, hs_freq_old1, hs_active_old1;
float p_level_old1[3], p_freq_old1[3], p_q_old1[3], p_active_old1[3];

View File

@@ -0,0 +1,37 @@
/* Calf DSP Library
* Placeholder for waveshaping classes
*
* Copyright (C) 2001-2009 Krzysztof Foltman
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General
* Public License along with this program; if not, write to the
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
* Boston, MA 02111-1307, USA.
*/
#ifndef __CALF_WAVESHAPING_H
#define __CALF_WAVESHAPING_H
/// This will be a waveshaper... when I'll code it (-:
/// (or get Tom Szlagyi's permission to use his own)
class waveshaper {
public:
waveshaper();
void activate() {}
void deactivate() {}
void set_params(float blend, float drive) {}
void set_sample_rate(uint32_t sr) {}
float process(float in) { return in; }
float get_distortion_level() { return 1; }
};
#endif

View File

@@ -1543,7 +1543,7 @@ uint32_t deesser_audio_module::process(uint32_t offset, uint32_t numsamples, uin
outs[0][offset] = outL;
outs[1][offset] = outR;
if(std::max(fabs(leftSC), fabs(rightSC)) > 0.1) {
if(std::max(fabs(leftSC), fabs(rightSC)) > *params[param_threshold]) {
detected_led = srate >> 3;
}
if(std::max(fabs(leftAC), fabs(rightAC)) > 1.f) {
@@ -1640,10 +1640,10 @@ int deesser_audio_module::get_changed_offsets(int index, int generation, int &su
return false;
}
/// Gain reduction module implemented by Markus Schmidt
/// Nearly all functions of this module are originally written
/// Gain reduction module by Thor
/// All functions of this module are originally written
/// by Thor, while some features have been stripped (mainly stereo linking
/// and frequency correction as implemented in his Compressor above)
/// and frequency correction as implemented in Sidechain Compressor above)
/// To save some CPU.
////////////////////////////////////////////////////////////////////////////////
gain_reduction_audio_module::gain_reduction_audio_module()