5#include "sffdn/audio_processor.h"
13class ScalarFeedbackMatrix;
72 class DelayMatrixImpl;
73 std::unique_ptr<DelayMatrixImpl> impl_;
A class representing an audio buffer with multiple channels of non-interleaved audio data.
Definition audio_buffer.h:18
Base class for audio processors.
Definition audio_processor.h:23
DelayMatrix implementation as presented in [1].
Definition delay_matrix.h:24
uint32_t OutputChannelCount() const override
Returns the number of output channels this processor produces.
DelayMatrix(DelayMatrix &&) noexcept
Move constructor.
std::unique_ptr< AudioProcessor > Clone() const override
Creates a copy of the delay matrix.
void PrintInfo() const
Prints information about the delay matrix.
void Process(const AudioBuffer &input, AudioBuffer &output) noexcept override
Processes the input audio buffer through the delay matrix.
uint32_t InputChannelCount() const override
Returns the number of input channels this processor expects.
void Clear() override
Clears the internal delay buffers.
DelayMatrix(uint32_t order, std::span< const uint32_t > delays, const ScalarFeedbackMatrix &mixing_matrix)
Constructs a DelayMatrix with the specified size and delay values.
DelayMatrix(const DelayMatrix &)
Copy constructor.
DelayMatrix & operator=(const DelayMatrix &)
Copy assignment operator.
A scalar feedback matrix processor.
Definition feedback_matrix.h:22