Audacity  2.2.2
Classes | Macros | Typedefs | Enumerations
NoiseReduction.cpp File Reference
#include "../Audacity.h"
#include "../Experimental.h"
#include "NoiseReduction.h"
#include "EffectManager.h"
#include "../ShuttleGui.h"
#include "../widgets/HelpSystem.h"
#include "../Prefs.h"
#include "../WaveTrack.h"
#include "../widgets/ErrorDialog.h"
#include "../widgets/valnum.h"
#include <algorithm>
#include <vector>
#include <math.h>
#include <wx/button.h>
#include <wx/choice.h>
#include <wx/dialog.h>
#include <wx/radiobut.h>
#include <wx/slider.h>
#include <wx/valtext.h>
#include <wx/textctrl.h>
#include <wx/sizer.h>

Go to the source code of this file.

Classes

class  EffectNoiseReduction::Statistics
 
class  EffectNoiseReduction::Settings
 
class  EffectNoiseReduction::Worker
 
struct  EffectNoiseReduction::Worker::Record
 
class  EffectNoiseReduction::Dialog
 Dialog used with EffectNoiseReduction. More...
 

Macros

#define RESIDUE_CHOICE
 

Typedefs

typedef std::vector< float > FloatVector
 

Enumerations

enum  DiscriminationMethod
 
enum  WindowTypes
 
enum  
 
enum  NoiseReductionChoice
 
enum  {
  ID_BUTTON_GETPROFILE = 10001, ID_RADIOBUTTON_KEEPSIGNAL, ID_RADIOBUTTON_RESIDUE, ID_GAIN_SLIDER,
  ID_GAIN_TEXT, ID_NEW_SENSITIVITY_SLIDER, ID_NEW_SENSITIVITY_TEXT, ID_FREQ_SLIDER,
  ID_FREQ_TEXT, END_OF_BASIC_SLIDERS, END_OF_SLIDERS = END_OF_BASIC_SLIDERS, FIRST_SLIDER = ID_GAIN_SLIDER
}
 

Macro Definition Documentation

#define RESIDUE_CHOICE

Typedef Documentation

typedef std::vector<float> FloatVector

Definition at line 74 of file NoiseReduction.cpp.

Enumeration Type Documentation

anonymous enum
Enumerator
ID_BUTTON_GETPROFILE 
ID_RADIOBUTTON_KEEPSIGNAL 
ID_RADIOBUTTON_RESIDUE 
ID_GAIN_SLIDER 
ID_GAIN_TEXT 
ID_NEW_SENSITIVITY_SLIDER 
ID_NEW_SENSITIVITY_TEXT 
ID_FREQ_SLIDER 
ID_FREQ_TEXT 
END_OF_BASIC_SLIDERS 
END_OF_SLIDERS 
FIRST_SLIDER 

Definition at line 1353 of file NoiseReduction.cpp.

1353  {
1354  ID_BUTTON_GETPROFILE = 10001,
1356 #ifdef ISOLATE_CHOICE
1357  ID_RADIOBUTTON_KEEPNOISE,
1358 #endif
1359 #ifdef RESIDUE_CHOICE
1361 #endif
1362 
1363 #ifdef ADVANCED_SETTINGS
1364  ID_CHOICE_METHOD,
1365 #endif
1366 
1367  // Slider/text pairs
1369  ID_GAIN_TEXT,
1370 
1373 
1374 #ifdef ATTACK_AND_RELEASE
1375  ID_ATTACK_TIME_SLIDER,
1376  ID_ATTACK_TIME_TEXT,
1377 
1378  ID_RELEASE_TIME_SLIDER,
1379  ID_RELEASE_TIME_TEXT,
1380 #endif
1381 
1383  ID_FREQ_TEXT,
1384 
1386 
1387 #ifdef ADVANCED_SETTINGS
1388  ID_OLD_SENSITIVITY_SLIDER = END_OF_BASIC_SLIDERS,
1389  ID_OLD_SENSITIVITY_TEXT,
1390 
1391  END_OF_ADVANCED_SLIDERS,
1392  END_OF_SLIDERS = END_OF_ADVANCED_SLIDERS,
1393 #else
1394  END_OF_SLIDERS = END_OF_BASIC_SLIDERS,
1395 #endif
1396 
1398 };
anonymous enum

Definition at line 147 of file NoiseReduction.cpp.

147  {
148  DEFAULT_WINDOW_SIZE_CHOICE = 8, // corresponds to 2048
149  DEFAULT_STEPS_PER_WINDOW_CHOICE = 1 // corresponds to 4, minimum for WT_HANN_HANN
150 };

Definition at line 91 of file NoiseReduction.cpp.

91  {
92  DM_MEDIAN,
93  DM_SECOND_GREATEST,
94  DM_OLD_METHOD,
95 
96  DM_N_METHODS,
97  DM_DEFAULT_METHOD = DM_SECOND_GREATEST,
98 };

Definition at line 152 of file NoiseReduction.cpp.

152  {
153  NRC_REDUCE_NOISE,
154  NRC_ISOLATE_NOISE,
155  NRC_LEAVE_RESIDUE,
156 };

Definition at line 113 of file NoiseReduction.cpp.

113  {
114  WT_RECTANGULAR_HANN = 0, // 2.0.6 behavior, requires 1/2 step
115  WT_HANN_RECTANGULAR, // requires 1/2 step
116  WT_HANN_HANN, // requires 1/4 step
117  WT_BLACKMAN_HANN, // requires 1/4 step
118  WT_HAMMING_RECTANGULAR, // requires 1/2 step
119  WT_HAMMING_HANN, // requires 1/4 step
120  WT_HAMMING_INV_HAMMING, // requires 1/2 step
121 
122  WT_N_WINDOW_TYPES,
123  WT_DEFAULT_WINDOW_TYPES = WT_HANN_HANN
124 };