LMMS
Loading...
Searching...
No Matches
juce::dsp::ConvolutionEngine Struct Reference

Public Member Functions

 ConvolutionEngine (const float *samples, size_t numSamples, size_t maxBlockSize)
void reset ()
void processSamples (const float *input, float *output, size_t numSamples)
void processSamplesWithAddedLatency (const float *input, float *output, size_t numSamples)
void prepareForConvolution (float *samples) noexcept
void convolutionProcessingAndAccumulate (const float *input, const float *impulse, float *output)
void updateSymmetricFrequencyDomainData (float *samples) noexcept

Public Attributes

const size_t blockSize
const size_t fftSize
const std::unique_ptr< FFTfftObject
const size_t numSegments
const size_t numInputSegments
size_t currentSegment = 0
size_t inputDataPos = 0
AudioBuffer< float > bufferInput
AudioBuffer< float > bufferOutput
AudioBuffer< float > bufferTempOutput
AudioBuffer< float > bufferOverlap
std::vector< AudioBuffer< float > > buffersInputSegments
std::vector< AudioBuffer< float > > buffersImpulseSegments

Constructor & Destructor Documentation

◆ ConvolutionEngine()

juce::dsp::ConvolutionEngine::ConvolutionEngine ( const float * samples,
size_t numSamples,
size_t maxBlockSize )
inline

Member Function Documentation

◆ convolutionProcessingAndAccumulate()

void juce::dsp::ConvolutionEngine::convolutionProcessingAndAccumulate ( const float * input,
const float * impulse,
float * output )
inline

◆ prepareForConvolution()

void juce::dsp::ConvolutionEngine::prepareForConvolution ( float * samples)
inlinenoexcept

◆ processSamples()

void juce::dsp::ConvolutionEngine::processSamples ( const float * input,
float * output,
size_t numSamples )
inline

◆ processSamplesWithAddedLatency()

void juce::dsp::ConvolutionEngine::processSamplesWithAddedLatency ( const float * input,
float * output,
size_t numSamples )
inline

◆ reset()

void juce::dsp::ConvolutionEngine::reset ( )
inline

◆ updateSymmetricFrequencyDomainData()

void juce::dsp::ConvolutionEngine::updateSymmetricFrequencyDomainData ( float * samples)
inlinenoexcept

Member Data Documentation

◆ blockSize

const size_t juce::dsp::ConvolutionEngine::blockSize

◆ bufferInput

AudioBuffer<float> juce::dsp::ConvolutionEngine::bufferInput

◆ bufferOutput

AudioBuffer<float> juce::dsp::ConvolutionEngine::bufferOutput

◆ bufferOverlap

AudioBuffer<float> juce::dsp::ConvolutionEngine::bufferOverlap

◆ buffersImpulseSegments

std::vector<AudioBuffer<float> > juce::dsp::ConvolutionEngine::buffersImpulseSegments

◆ buffersInputSegments

std::vector<AudioBuffer<float> > juce::dsp::ConvolutionEngine::buffersInputSegments

◆ bufferTempOutput

AudioBuffer<float> juce::dsp::ConvolutionEngine::bufferTempOutput

◆ currentSegment

size_t juce::dsp::ConvolutionEngine::currentSegment = 0

◆ fftObject

const std::unique_ptr<FFT> juce::dsp::ConvolutionEngine::fftObject

◆ fftSize

const size_t juce::dsp::ConvolutionEngine::fftSize

◆ inputDataPos

size_t juce::dsp::ConvolutionEngine::inputDataPos = 0

◆ numInputSegments

const size_t juce::dsp::ConvolutionEngine::numInputSegments

◆ numSegments

const size_t juce::dsp::ConvolutionEngine::numSegments

The documentation for this struct was generated from the following file: