mirror of
https://github.com/cookiengineer/audacity
synced 2025-08-08 08:01:19 +02:00
Noise Reduction Effect by Paul Licameli.
#ifdef EXPERIMENTAL_NOISE_REDUCTION for now.
This commit is contained in:
parent
c900da7a56
commit
6e384e2f6b
@ -185,5 +185,6 @@
|
||||
// Define to make the meters look like a row of LEDs
|
||||
//#define EXPERIMENTAL_METER_LED_STYLE
|
||||
|
||||
|
||||
// Define for new noise reduction effect from Paul Licameli.
|
||||
//#define EXPERIMENTAL_NOISE_REDUCTION
|
||||
#endif
|
||||
|
@ -30,6 +30,9 @@
|
||||
#include "Invert.h"
|
||||
#include "Leveller.h"
|
||||
#include "Noise.h"
|
||||
#ifdef EXPERIMENTAL_NOISE_REDUCTION
|
||||
#include "NoiseReduction.h"
|
||||
#endif
|
||||
#include "NoiseRemoval.h"
|
||||
#include "Normalize.h"
|
||||
#include "Phaser.h"
|
||||
@ -192,8 +195,12 @@ void LoadEffects()
|
||||
|
||||
#define ATEAM "http://audacityteam.org/namespace#"
|
||||
|
||||
#ifdef EXPERIMENTAL_NOISE_REDUCTION
|
||||
CatPtr nrm = em.AddCategory(wxT(ATEAM) wxT("NoiseReduction"),
|
||||
_("Noise Reduction"));
|
||||
#endif
|
||||
CatPtr nrm = em.AddCategory(wxT(ATEAM) wxT("NoiseRemoval"),
|
||||
_("Noise Removal"));
|
||||
_("Noise Removal"));
|
||||
CatPtr pnt = em.AddCategory(wxT(ATEAM) wxT("PitchAndTempo"),
|
||||
_("Pitch and Tempo"));
|
||||
CatPtr tim = em.AddCategory(wxT(ATEAM) wxT("TimelineChanger"),
|
||||
@ -249,6 +256,9 @@ void LoadEffects()
|
||||
em.RegisterEffect(new EffectFadeOut(), SIMPLE_EFFECT);
|
||||
em.RegisterEffect(new EffectInvert());
|
||||
em.RegisterEffect(new EffectLeveller(), SIMPLE_EFFECT);
|
||||
#ifdef EXPERIMENTAL_NOISE_REDUCTION
|
||||
em.RegisterEffect(new EffectNoiseReduction(), SIMPLE_EFFECT);
|
||||
#endif
|
||||
em.RegisterEffect(new EffectNoiseRemoval(), SIMPLE_EFFECT);
|
||||
em.RegisterEffect(new EffectNormalize(), SIMPLE_EFFECT);
|
||||
em.RegisterEffect(new EffectPhaser());
|
||||
|
1696
src/effects/NoiseReduction.cpp
Normal file
1696
src/effects/NoiseReduction.cpp
Normal file
File diff suppressed because it is too large
Load Diff
52
src/effects/NoiseReduction.h
Normal file
52
src/effects/NoiseReduction.h
Normal file
@ -0,0 +1,52 @@
|
||||
/**********************************************************************
|
||||
|
||||
Audacity: A Digital Audio Editor
|
||||
|
||||
NoiseReduction.h
|
||||
|
||||
Dominic Mazzoni
|
||||
Vaughan Johnson (Preview)
|
||||
Paul Licameli
|
||||
|
||||
**********************************************************************/
|
||||
|
||||
#ifndef __AUDACITY_EFFECT_NOISE_REDUCTION__
|
||||
#define __AUDACITY_EFFECT_NOISE_REDUCTION__
|
||||
|
||||
#include "Effect.h"
|
||||
|
||||
#include <memory>
|
||||
|
||||
class EffectNoiseReduction: public Effect {
|
||||
public:
|
||||
|
||||
EffectNoiseReduction();
|
||||
virtual ~EffectNoiseReduction();
|
||||
|
||||
using Effect::TrackProgress;
|
||||
|
||||
virtual wxString GetEffectName();
|
||||
virtual std::set<wxString> GetEffectCategories();
|
||||
virtual wxString GetEffectIdentifier();
|
||||
virtual wxString GetEffectAction();
|
||||
|
||||
virtual bool PromptUser();
|
||||
virtual bool TransferParameters( Shuttle & shuttle );
|
||||
|
||||
virtual bool Init();
|
||||
virtual bool CheckWhetherSkipEffect();
|
||||
virtual bool Process();
|
||||
|
||||
class Settings;
|
||||
class Statistics;
|
||||
class Dialog;
|
||||
|
||||
private:
|
||||
class Worker;
|
||||
friend Dialog;
|
||||
|
||||
std::auto_ptr<Settings> mSettings;
|
||||
std::auto_ptr<Statistics> mStatistics;
|
||||
};
|
||||
|
||||
#endif
|
@ -248,6 +248,7 @@
|
||||
<ClCompile Include="..\..\..\src\DirManager.cpp" />
|
||||
<ClCompile Include="..\..\..\src\Dither.cpp" />
|
||||
<ClCompile Include="..\..\..\src\effects\EffectRack.cpp" />
|
||||
<ClCompile Include="..\..\..\src\effects\NoiseReduction.cpp" />
|
||||
<ClCompile Include="..\..\..\src\Envelope.cpp" />
|
||||
<ClCompile Include="..\..\..\src\FFmpeg.cpp" />
|
||||
<ClCompile Include="..\..\..\src\FFT.cpp" />
|
||||
@ -517,6 +518,7 @@
|
||||
<ClInclude Include="..\..\..\src\CaptureEvents.h" />
|
||||
<ClInclude Include="..\..\..\src\commands\OpenSaveCommands.h" />
|
||||
<ClInclude Include="..\..\..\src\effects\EffectRack.h" />
|
||||
<ClInclude Include="..\..\..\src\effects\NoiseReduction.h" />
|
||||
<ClInclude Include="..\..\..\src\import\FormatClassifier.h" />
|
||||
<ClInclude Include="..\..\..\src\import\ImportGStreamer.h" />
|
||||
<ClInclude Include="..\..\..\src\import\MultiFormatReader.h" />
|
||||
|
@ -831,6 +831,9 @@
|
||||
<ClCompile Include="..\..\..\src\widgets\NumericTextCtrl.cpp">
|
||||
<Filter>src/widgets</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\effects\NoiseReduction.cpp">
|
||||
<Filter>src/effects</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\..\..\src\AboutDialog.h">
|
||||
@ -1652,6 +1655,9 @@
|
||||
<ClInclude Include="..\..\..\src\widgets\NumericTextCtrl.h">
|
||||
<Filter>src/widgets</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\src\effects\NoiseReduction.h">
|
||||
<Filter>src/effects</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Image Include="..\..\audacity.ico">
|
||||
|
Loading…
x
Reference in New Issue
Block a user