Krotos Modules 3
Loading...
Searching...
No Matches
krotos::EnvelopeFollowerSPD Class Reference

#include <SlopEnvelopeOnsetdetection.h>

Public Member Functions

 EnvelopeFollowerSPD (float sampleRate)
 
void setupEnvFol (float attackTimeMs, float releaseTimeMs)
 
void setAttackMs (float attackTimeMs)
 
void setReleaseMs (float releaseTimeMs)
 
std::vector< float > filterVector (std::vector< float > inputMonoVector)
 
std::vector< float > normaliseEnvelope (std::vector< float > inputMonoVector)
 

Private Attributes

float m_attackTimeSec
 
float m_releaseTimeSec
 
float m_sampleRate {-1.0f}
 
float m_gAtt {0.0f}
 
float m_gRel {0.0f}
 
float m_inputSamplePrev {0.0f}
 

Constructor & Destructor Documentation

◆ EnvelopeFollowerSPD()

krotos::EnvelopeFollowerSPD::EnvelopeFollowerSPD ( float sampleRate)

Member Function Documentation

◆ filterVector()

std::vector< float > krotos::EnvelopeFollowerSPD::filterVector ( std::vector< float > inputMonoVector)

Processes the incoming sample and returns the envelope follower value. Depends on former incoming sample absolute value.

Parameters
inputSampleCurrentcurrent incoming Sample

◆ normaliseEnvelope()

std::vector< float > krotos::EnvelopeFollowerSPD::normaliseEnvelope ( std::vector< float > inputMonoVector)

Normalises the envelope vector from min.max to 0-1.

Parameters
inputMonoVectormono signal envelope vector returns vector<float> with min = 0f and max = 1f

◆ setAttackMs()

void krotos::EnvelopeFollowerSPD::setAttackMs ( float attackTimeMs)

Sets the attack time parameter in miliSeconds and recalculates the coefficient In case only this parameter is updated.

Parameters
attackTimeMsattackTime in miliseconds

◆ setReleaseMs()

void krotos::EnvelopeFollowerSPD::setReleaseMs ( float releaseTimeMs)

Sets the release time parameter in miliSeconds and recalculates the coefficient In case only this parameter is updated.

Parameters
releaseTimeMsreleaseTimeMs in miliseconds

◆ setupEnvFol()

void krotos::EnvelopeFollowerSPD::setupEnvFol ( float attackTimeMs,
float releaseTimeMs )

Sets up the attack and release time parameters in miliSeconds and recalculates the coefficients

Parameters
attackTimeMsattackTime in miliseconds
releaseTimeMsreleaseTimeMs in miliseconds

Member Data Documentation

◆ m_attackTimeSec

float krotos::EnvelopeFollowerSPD::m_attackTimeSec
private

Envelope Follower parameters.

◆ m_gAtt

float krotos::EnvelopeFollowerSPD::m_gAtt {0.0f}
private

◆ m_gRel

float krotos::EnvelopeFollowerSPD::m_gRel {0.0f}
private

◆ m_inputSamplePrev

float krotos::EnvelopeFollowerSPD::m_inputSamplePrev {0.0f}
private

◆ m_releaseTimeSec

float krotos::EnvelopeFollowerSPD::m_releaseTimeSec
private

◆ m_sampleRate

float krotos::EnvelopeFollowerSPD::m_sampleRate {-1.0f}
private

The documentation for this class was generated from the following files: