mirror of
https://github.com/cookiengineer/audacity
synced 2025-11-08 22:23:59 +01:00
Migrating the remaining effects
This brings the builtin, LV2, and VAMP effects inline with the Audio Units, LADSPA, and VST effects. All effects now share a common UI. This gives all effects (though not implemented for all): User and factory preset capability Preset import/export capability Shared or private configuration options Builtin effects can now be migrated to RTP, depending on algorithm. LV2 effects now support graphical interfaces if the plugin supplies one. Nyquist prompt enhanced to provide some features of the Nyquist Workbench. It may not look like it, but this was a LOT of work, so trust me, there WILL be problems and everything effect related should be suspect. Keep a sharp eye (or two) open.
This commit is contained in:
@@ -12,6 +12,10 @@
|
||||
#ifndef __AUDACITY_EFFECT_NOISE_REMOVAL__
|
||||
#define __AUDACITY_EFFECT_NOISE_REMOVAL__
|
||||
|
||||
#include "../Audacity.h"
|
||||
|
||||
#if !defined(EXPERIMENTAL_NOISE_REDUCTION)
|
||||
|
||||
#include "Effect.h"
|
||||
|
||||
#include <wx/dialog.h>
|
||||
@@ -26,37 +30,25 @@ class WaveTrack;
|
||||
|
||||
#include "../RealFFTf.h"
|
||||
|
||||
class EffectNoiseRemoval: public Effect {
|
||||
|
||||
class EffectNoiseRemoval : public Effect
|
||||
{
|
||||
public:
|
||||
|
||||
EffectNoiseRemoval();
|
||||
virtual ~EffectNoiseRemoval();
|
||||
|
||||
virtual wxString GetEffectName() {
|
||||
return wxString(wxTRANSLATE("Noise Removal..."));
|
||||
}
|
||||
// IdentInterface implementation
|
||||
|
||||
virtual std::set<wxString> GetEffectCategories() {
|
||||
std::set<wxString> result;
|
||||
result.insert(wxT("http://audacityteam.org/namespace#NoiseRemoval"));
|
||||
return result;
|
||||
}
|
||||
virtual wxString GetSymbol();
|
||||
virtual wxString GetDescription();
|
||||
|
||||
virtual wxString GetEffectIdentifier() {
|
||||
return wxString(wxT("Noise Removal"));
|
||||
}
|
||||
// EffectIdentInterface implementation
|
||||
|
||||
virtual wxString GetEffectAction() {
|
||||
if (mDoProfile)
|
||||
return wxString(_("Creating Noise Profile"));
|
||||
else
|
||||
return wxString(_("Removing Noise"));
|
||||
}
|
||||
virtual EffectType GetType();
|
||||
virtual bool SupportsAutomation();
|
||||
|
||||
// Effect implementation
|
||||
|
||||
virtual bool PromptUser();
|
||||
virtual bool TransferParameters( Shuttle & shuttle );
|
||||
|
||||
virtual bool Init();
|
||||
virtual bool CheckWhetherSkipEffect();
|
||||
virtual bool Process();
|
||||
@@ -123,7 +115,7 @@ private:
|
||||
float **mRealFFTs; // mHistoryLen x mWindowSize
|
||||
float **mImagFFTs; // mHistoryLen x mWindowSize
|
||||
|
||||
friend class NoiseRemovalDialog;
|
||||
friend class NoiseRemovalDialog;
|
||||
};
|
||||
|
||||
// WDR: class declarations
|
||||
@@ -199,3 +191,5 @@ private:
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user