|
sfFDN
|
Base class for audio processors. More...
#include <audio_processor.h>
Public Member Functions | |
| virtual void | Process (const AudioBuffer &input, AudioBuffer &output) noexcept=0 |
| Process audio buffers. | |
| virtual uint32_t | InputChannelCount () const =0 |
| Returns the number of input channels this processor expects. | |
| virtual uint32_t | OutputChannelCount () const =0 |
| Returns the number of output channels this processor produces. | |
| virtual void | Clear ()=0 |
| Clears the internal state of the processor. | |
| virtual std::unique_ptr< AudioProcessor > | Clone () const =0 |
| Creates a copy of the audio processor. | |
Base class for audio processors.
An AudioProcessor processes audio samples and outputs the result, e.g., applying effects or transformations.
|
pure virtual |
Clears the internal state of the processor.
This function should reset any internal buffers or states used by the processor without changing its configuration. For example, calling Clear() on an IIR filter should set its internal state to 0 while keeping its coefficients intact.
Implemented in sfFDN::AllpassFilter, sfFDN::AudioProcessorChain, sfFDN::CascadedBiquads, sfFDN::DelayBank, sfFDN::DelayBankTimeVarying, sfFDN::DelayInterp, sfFDN::DelayMatrix, sfFDN::DelayTimeVarying, sfFDN::FDN, sfFDN::FilterBank, sfFDN::FilterFeedbackMatrix, sfFDN::Fir, sfFDN::IIRFilterBank, sfFDN::OnePoleFilter, sfFDN::ParallelGains, sfFDN::PartitionedConvolver, sfFDN::ScalarFeedbackMatrix, sfFDN::SchroederAllpassSection, sfFDN::SparseFir, and sfFDN::TimeVaryingParallelGains.
|
pure virtual |
Creates a copy of the audio processor.
Implemented in sfFDN::AllpassFilter, sfFDN::AudioProcessorChain, sfFDN::CascadedBiquads, sfFDN::DelayBank, sfFDN::DelayBankTimeVarying, sfFDN::DelayInterp, sfFDN::DelayMatrix, sfFDN::DelayTimeVarying, sfFDN::FDN, sfFDN::FilterBank, sfFDN::FilterFeedbackMatrix, sfFDN::Fir, sfFDN::IIRFilterBank, sfFDN::OnePoleFilter, sfFDN::ParallelGains, sfFDN::PartitionedConvolver, sfFDN::ScalarFeedbackMatrix, sfFDN::SchroederAllpassSection, sfFDN::SparseFir, and sfFDN::TimeVaryingParallelGains.
|
pure virtual |
Returns the number of input channels this processor expects.
Implemented in sfFDN::AllpassFilter, sfFDN::AudioProcessorChain, sfFDN::CascadedBiquads, sfFDN::DelayBank, sfFDN::DelayBankTimeVarying, sfFDN::DelayInterp, sfFDN::DelayMatrix, sfFDN::DelayTimeVarying, sfFDN::FDN, sfFDN::FilterBank, sfFDN::FilterFeedbackMatrix, sfFDN::Fir, sfFDN::IIRFilterBank, sfFDN::OnePoleFilter, sfFDN::ParallelGains, sfFDN::PartitionedConvolver, sfFDN::ScalarFeedbackMatrix, sfFDN::SchroederAllpassSection, sfFDN::SparseFir, and sfFDN::TimeVaryingParallelGains.
|
pure virtual |
Returns the number of output channels this processor produces.
Implemented in sfFDN::AllpassFilter, sfFDN::AudioProcessorChain, sfFDN::CascadedBiquads, sfFDN::DelayBank, sfFDN::DelayBankTimeVarying, sfFDN::DelayInterp, sfFDN::DelayMatrix, sfFDN::DelayTimeVarying, sfFDN::FDN, sfFDN::FilterBank, sfFDN::FilterFeedbackMatrix, sfFDN::Fir, sfFDN::IIRFilterBank, sfFDN::OnePoleFilter, sfFDN::ParallelGains, sfFDN::PartitionedConvolver, sfFDN::ScalarFeedbackMatrix, sfFDN::SchroederAllpassSection, sfFDN::SparseFir, and sfFDN::TimeVaryingParallelGains.
|
pure virtualnoexcept |
Process audio buffers.
| input | The input audio buffer. |
| output | The output audio buffer. |
Implemented in sfFDN::AllpassFilter, sfFDN::AudioProcessorChain, sfFDN::CascadedBiquads, sfFDN::DelayBank, sfFDN::DelayBankTimeVarying, sfFDN::DelayInterp, sfFDN::DelayMatrix, sfFDN::DelayTimeVarying, sfFDN::FDN, sfFDN::FilterBank, sfFDN::FilterFeedbackMatrix, sfFDN::Fir, sfFDN::IIRFilterBank, sfFDN::OnePoleFilter, sfFDN::ParallelGains, sfFDN::PartitionedConvolver, sfFDN::ScalarFeedbackMatrix, sfFDN::SchroederAllpassSection, sfFDN::SparseFir, and sfFDN::TimeVaryingParallelGains.