Audio processing class that uses multi-threading to convolve an input signal with an impulse response.
More...
#include <ConvolutionReverb.h>
Audio processing class that uses multi-threading to convolve an input signal with an impulse response.
◆ Channel
◆ ConvolutionReverb()
| krotos::ConvolutionReverb::ConvolutionReverb |
( |
| ) |
|
◆ ~ConvolutionReverb()
| krotos::ConvolutionReverb::~ConvolutionReverb |
( |
| ) |
|
◆ clearConvolvers()
| void krotos::ConvolutionReverb::clearConvolvers |
( |
| ) |
|
◆ getConvolverHeadBlockSize()
| size_t krotos::ConvolutionReverb::getConvolverHeadBlockSize |
( |
| ) |
const |
◆ getConvolvers()
| const OwnedArray< IRConvolver > & krotos::ConvolutionReverb::getConvolvers |
( |
| ) |
const |
◆ getConvolverTailBlockSize()
| size_t krotos::ConvolutionReverb::getConvolverTailBlockSize |
( |
| ) |
const |
◆ getImpulseResponseFilePath()
| String krotos::ConvolutionReverb::getImpulseResponseFilePath |
( |
| ) |
const |
◆ getNextSample()
| float krotos::ConvolutionReverb::getNextSample |
( |
int | sampleIdx, |
|
|
int | channelIdx ) |
◆ getSampleRate()
| double krotos::ConvolutionReverb::getSampleRate |
( |
| ) |
const |
◆ prepareNextBlock()
| void krotos::ConvolutionReverb::prepareNextBlock |
( |
const float *const * | buffer, |
|
|
int | numSamples, |
|
|
int | numChannels ) |
◆ prepareToPlay()
| void krotos::ConvolutionReverb::prepareToPlay |
( |
double | sampleRate, |
|
|
int | samplesPerBlock ) |
◆ processBlock()
| void krotos::ConvolutionReverb::processBlock |
( |
AudioBuffer< float > & | buffer | ) |
|
◆ reset()
| void krotos::ConvolutionReverb::reset |
( |
| ) |
|
◆ setImpulseResponseFilePath()
| void krotos::ConvolutionReverb::setImpulseResponseFilePath |
( |
const String & | impulseResponseFilePath | ) |
|
◆ setMix()
| void krotos::ConvolutionReverb::setMix |
( |
float | mixValue | ) |
|
◆ setOutputGainDb()
| void krotos::ConvolutionReverb::setOutputGainDb |
( |
float | outputGainValueIndB | ) |
|
◆ setPredelayMs()
| void krotos::ConvolutionReverb::setPredelayMs |
( |
float | predelayMs | ) |
|
◆ setSampleRate()
| void krotos::ConvolutionReverb::setSampleRate |
( |
double | newSampleRate | ) |
|
◆ updateConvolvers()
| void krotos::ConvolutionReverb::updateConvolvers |
( |
| ) |
|
◆ m_convolutionBufferLL
| std::vector<float> krotos::ConvolutionReverb::m_convolutionBufferLL |
|
private |
◆ m_convolutionBufferLR
| std::vector<float> krotos::ConvolutionReverb::m_convolutionBufferLR |
|
private |
◆ m_convolutionBufferRL
| std::vector<float> krotos::ConvolutionReverb::m_convolutionBufferRL |
|
private |
◆ m_convolutionBufferRR
| std::vector<float> krotos::ConvolutionReverb::m_convolutionBufferRR |
|
private |
◆ m_convolverHeadBlockSize
| size_t krotos::ConvolutionReverb::m_convolverHeadBlockSize {0} |
|
private |
◆ m_convolverMutex
| CriticalSection krotos::ConvolutionReverb::m_convolverMutex |
|
mutableprivate |
◆ m_convolvers
| OwnedArray<IRConvolver> krotos::ConvolutionReverb::m_convolvers |
|
private |
◆ m_convolverTailBlockSize
| size_t krotos::ConvolutionReverb::m_convolverTailBlockSize {0} |
|
private |
◆ m_dryBuffer
| AudioBuffer<float> krotos::ConvolutionReverb::m_dryBuffer |
|
private |
◆ m_impulseResponseFilePath
| String krotos::ConvolutionReverb::m_impulseResponseFilePath {""} |
|
private |
◆ m_irCalculation
| std::unique_ptr<Thread> krotos::ConvolutionReverb::m_irCalculation |
|
private |
◆ m_irCalculationMutex
| CriticalSection krotos::ConvolutionReverb::m_irCalculationMutex |
|
mutableprivate |
◆ m_maxPredelayMs
| const float krotos::ConvolutionReverb::m_maxPredelayMs {600.0f} |
|
private |
◆ m_mix
| DryWet krotos::ConvolutionReverb::m_mix {1.0f} |
|
private |
◆ m_numOutputChannels
| const int krotos::ConvolutionReverb::m_numOutputChannels {2} |
|
private |
◆ m_outputGain
| float krotos::ConvolutionReverb::m_outputGain {1.0f} |
|
private |
◆ m_predelay
| float krotos::ConvolutionReverb::m_predelay {0.0f} |
|
private |
◆ m_predelayBuffers
◆ m_sampleRate
| double krotos::ConvolutionReverb::m_sampleRate {0.0} |
|
private |
◆ m_wetBuffer
| AudioBuffer<float> krotos::ConvolutionReverb::m_wetBuffer |
|
private |
The documentation for this class was generated from the following files: