38 float thresholdInDecibels,
float ratio,
39 float makeUpGainInDecibels);
55 void setKnee (
const float kneeInDecibels);
79 void getCharacteristic (
float* inputLevelsInDecibels,
float* destination,
const int numSamples);
114 inline const float timeToGain (
const float timeInSeconds);
void prepare(const double sampleRate)
void setMakeUpGain(const float makeUpGainInDecibels)
void getCharacteristic(float *inputLevelsInDecibels, float *destination, const int numSamples)
static float getCharacteristicSample(float inputLevelInDecibels, float kneeInDecibels, float thresholdInDecibels, float ratio, float makeUpGainInDecibels)
std::atomic< float > maxInputLevel
void computeGainInDecibelsFromSidechainSignal(const float *sideChainSignal, float *destination, const int numSamples)
const float getMaxGainReductionInDecibels()
static float applyCharacteristicToOverShoot(float overShootInDecibels, float knee, float slope)
const float getThreshold()
const float getMakeUpGain()
void setThreshold(const float thresholdInDecibels)
void setReleaseTime(const float releaseTimeInSeconds)
std::atomic< float > maxGainReduction
void setAttackTime(const float attackTimeInSeconds)
void setRatio(const float ratio)
const float getMaxInputLevelInDecibels()
void setKnee(const float kneeInDecibels)
const float timeToGain(const float timeInSeconds)
void computeLinearGainFromSidechainSignal(const float *sideChainSignal, float *destination, const int numSamples)