8fbfa460c4
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.
51 lines
1.2 KiB
C++
51 lines
1.2 KiB
C++
/**********************************************************************
|
|
|
|
Audacity: A Digital Audio Editor
|
|
|
|
SimpleMono.h
|
|
|
|
Dominic Mazzoni
|
|
|
|
This abstract class simplifies the implementation of a basic
|
|
monaural effect. Inherit from it if your effect doesn't just
|
|
modifies a track in place and doesn't care how many samples
|
|
it gets at a time. Your derived class only needs to implement
|
|
GetEffectName, GetEffectAction, and ProcessSimpleMono.
|
|
|
|
**********************************************************************/
|
|
|
|
#ifndef __AUDACITY_EFFECT_SIMPLE_MONO__
|
|
#define __AUDACITY_EFFECT_SIMPLE_MONO__
|
|
|
|
#include "Effect.h"
|
|
|
|
class WaveTrack;
|
|
|
|
class EffectSimpleMono : public Effect
|
|
{
|
|
public:
|
|
virtual bool Process();
|
|
|
|
protected:
|
|
|
|
// Override this method if you need to do things
|
|
// before every track (including the first one)
|
|
virtual bool NewTrackSimpleMono();
|
|
|
|
// Override this method to actually process audio
|
|
virtual bool ProcessSimpleMono(float *buffer, sampleCount len) = 0;
|
|
|
|
protected:
|
|
// Other useful information
|
|
int mCurTrackNum;
|
|
double mCurRate;
|
|
double mCurT0;
|
|
double mCurT1;
|
|
int mCurChannel;
|
|
|
|
private:
|
|
bool ProcessOne(WaveTrack * t, sampleCount start, sampleCount end);
|
|
};
|
|
|
|
#endif
|