Audacity 3.2.0
|
#include <EchoBase.h>
Public Member Functions | |
Instance (const PerTrackEffect &effect) | |
bool | ProcessInitialize (EffectSettings &settings, double sampleRate, ChannelNames chanMap) override |
size_t | ProcessBlock (EffectSettings &settings, const float *const *inBlock, float *const *outBlock, size_t blockLen) override |
Called for destructive effect computation. More... | |
bool | ProcessFinalize () noexcept override |
unsigned | GetAudioOutCount () const override |
How many output buffers to allocate at once. More... | |
unsigned | GetAudioInCount () const override |
How many input buffers to allocate at once. More... | |
Public Member Functions inherited from PerTrackEffect::Instance | |
Instance (const PerTrackEffect &processor) | |
~Instance () override | |
bool | Process (EffectSettings &settings) final |
Uses the other virtual functions of this class. More... | |
bool | ProcessInitialize (EffectSettings &settings, double sampleRate, ChannelNames chanMap) override |
bool | ProcessFinalize () noexcept override |
Public Member Functions inherited from EffectInstanceEx | |
virtual bool | Init () |
Call once to set up state for whole list of tracks to be processed. More... | |
virtual bool | Process (EffectSettings &settings)=0 |
Actually do the effect here. More... | |
~EffectInstanceEx () override | |
Public Member Functions inherited from EffectInstance | |
virtual | ~EffectInstance () |
virtual size_t | GetBlockSize () const =0 |
virtual size_t | SetBlockSize (size_t maxBlockSize)=0 |
virtual unsigned | GetAudioInCount () const =0 |
How many input buffers to allocate at once. More... | |
virtual unsigned | GetAudioOutCount () const =0 |
How many output buffers to allocate at once. More... | |
virtual bool | RealtimeInitialize (EffectSettings &settings, double sampleRate) |
virtual bool | RealtimeAddProcessor (EffectSettings &settings, EffectOutputs *pOutputs, unsigned numChannels, float sampleRate) |
virtual bool | RealtimeSuspend () |
virtual bool | RealtimeResume () |
virtual std::unique_ptr< Message > | MakeMessage () const |
Called on the main thread, in which the result may be cloned. More... | |
virtual bool | UsesMessages () const noexcept |
virtual bool | RealtimeProcessStart (MessagePackage &package) |
settings are possibly changed, since last call, by an asynchronous dialog More... | |
virtual size_t | RealtimeProcess (size_t group, EffectSettings &settings, const float *const *inBuf, float *const *outBuf, size_t numSamples) |
virtual void | RealtimePassThrough (size_t group, EffectSettings &settings, const float *const *inBuf, size_t numSamples) |
Called instead of RealtimeProcess when the effect is bypassed. Default implementation does nothing. More... | |
virtual bool | RealtimeProcessEnd (EffectSettings &settings) noexcept |
settings can be updated to let a dialog change appearance at idle More... | |
virtual bool | RealtimeFinalize (EffectSettings &settings) noexcept |
virtual size_t | GetTailSize () const |
virtual SampleCount | GetLatency (const EffectSettings &settings, double sampleRate) const |
virtual bool | NeedsDither () const |
virtual bool | ProcessInitialize (EffectSettings &settings, double sampleRate, ChannelNames chanMap)=0 |
virtual bool | ProcessFinalize () noexcept=0 |
virtual size_t | ProcessBlock (EffectSettings &settings, const float *const *inBlock, float *const *outBlock, size_t blockLen)=0 |
Called for destructive effect computation. More... | |
Public Member Functions inherited from EffectInstanceWithBlockSize | |
~EffectInstanceWithBlockSize () override | |
size_t | GetBlockSize () const override |
size_t | SetBlockSize (size_t maxBlockSize) override |
Public Attributes | |
Floats | history |
size_t | histPos |
size_t | histLen |
Additional Inherited Members | |
Public Types inherited from EffectInstance | |
using | Message = EffectSettingsAccess::Message |
using | SampleCount = uint64_t |
Protected Attributes inherited from PerTrackEffect::Instance | |
const PerTrackEffect & | mProcessor |
Protected Attributes inherited from EffectInstanceWithBlockSize | |
size_t | mBlockSize { 0 } |
Definition at line 48 of file EchoBase.h.
|
inline |
Definition at line 52 of file EchoBase.h.
|
inlineoverridevirtual |
How many input buffers to allocate at once.
If the instance processes channels independently, this can return 1 The result is not necessarily well defined before RealtimeInitialize
Implements EffectInstance.
Definition at line 72 of file EchoBase.h.
|
inlineoverridevirtual |
How many output buffers to allocate at once.
The result is not necessarily well defined before RealtimeInitialize
Implements EffectInstance.
Definition at line 67 of file EchoBase.h.
|
overridevirtual |
Called for destructive effect computation.
Implements EffectInstance.
Definition at line 91 of file EchoBase.cpp.
References EffectWithSettings< EchoSettings, PerTrackEffect >::GetSettings(), and settings().
|
overridevirtualnoexcept |
Called at end of destructive processing, for each (mono/stereo) track Default implementation does nothing, returns true This may be called during stack unwinding:
Implements EffectInstance.
Definition at line 86 of file EchoBase.cpp.
|
overridevirtual |
Called at start of destructive processing, for each (mono/stereo) track Default implementation does nothing, returns true
chanMap | null or array terminated with ChannelNameEOL. Do not retain the pointer |
GetAudioInCount()
and GetAudioOutCount()
are well defined Implements EffectInstance.
Definition at line 56 of file EchoBase.cpp.
References EffectWithSettings< EchoSettings, PerTrackEffect >::GetSettings(), histLen, history, histPos, ArrayOf< X >::reinit(), anonymous_namespace{ClipSegmentTest.cpp}::sampleRate, settings(), BasicUI::ShowMessageBox(), and XO().
size_t EchoBase::Instance::histLen |
Definition at line 79 of file EchoBase.h.
Referenced by ProcessInitialize().
Floats EchoBase::Instance::history |
Definition at line 77 of file EchoBase.h.
Referenced by ProcessInitialize().
size_t EchoBase::Instance::histPos |
Definition at line 78 of file EchoBase.h.
Referenced by ProcessInitialize().