OpenShot Library | OpenShotAudio
0.2.2
|
A very simple ADSR envelope class. More...
#include <juce_ADSR.h>
Classes | |
struct | Parameters |
Holds the parameters being used by an ADSR object. More... | |
Public Member Functions | |
void | setParameters (const Parameters &newParameters) |
Sets the parameters that will be used by an ADSR object. More... | |
const Parameters & | getParameters () const |
Returns the parameters currently being used by an ADSR object. More... | |
bool | isActive () const noexcept |
Returns true if the envelope is in its attack, decay, sustain or release stage. More... | |
void | setSampleRate (double sampleRate) |
Sets the sample rate that will be used for the envelope. More... | |
void | reset () |
Resets the envelope to an idle state. More... | |
void | noteOn () |
Starts the attack phase of the envelope. More... | |
void | noteOff () |
Starts the release phase of the envelope. More... | |
float | getNextSample () |
Returns the next sample value for an ADSR object. More... | |
template<typename FloatType > | |
void | applyEnvelopeToBuffer (AudioBuffer< FloatType > &buffer, int startSample, int numSamples) |
This method will conveniently apply the next numSamples number of envelope values to an AudioBuffer. More... | |
A very simple ADSR envelope class.
To use it, call setSampleRate() with the current sample rate and give it some parameters with setParameters() then call getNextSample() to get the envelope value to be applied to each audio sample or applyEnvelopeToBuffer() to apply the envelope to a whole buffer.
Definition at line 40 of file juce_ADSR.h.
|
inline |
Sets the parameters that will be used by an ADSR object.
You must have called setSampleRate() with the correct sample rate before this otherwise the values may be incorrect!
Definition at line 78 of file juce_ADSR.h.
References juce::ADSR::Parameters::sustain.
|
inline |
Returns the parameters currently being used by an ADSR object.
Definition at line 93 of file juce_ADSR.h.
|
inlinenoexcept |
Returns true if the envelope is in its attack, decay, sustain or release stage.
Definition at line 96 of file juce_ADSR.h.
|
inline |
Sets the sample rate that will be used for the envelope.
This must be called before the getNextSample() or setParameters() methods.
Definition at line 103 of file juce_ADSR.h.
|
inline |
Resets the envelope to an idle state.
Definition at line 111 of file juce_ADSR.h.
Referenced by applyEnvelopeToBuffer(), getNextSample(), and noteOff().
|
inline |
Starts the attack phase of the envelope.
Definition at line 118 of file juce_ADSR.h.
|
inline |
Starts the release phase of the envelope.
Definition at line 136 of file juce_ADSR.h.
References reset().
|
inline |
Returns the next sample value for an ADSR object.
Definition at line 157 of file juce_ADSR.h.
References reset().
Referenced by applyEnvelopeToBuffer().
|
inline |
This method will conveniently apply the next numSamples number of envelope values to an AudioBuffer.
Definition at line 207 of file juce_ADSR.h.
References juce::ADSR::Parameters::attack, juce::ADSR::Parameters::decay, getNextSample(), juce::AudioBuffer< Type >::getNumChannels(), juce::AudioBuffer< Type >::getNumSamples(), juce::AudioBuffer< Type >::getWritePointer(), juce::ADSR::Parameters::release, reset(), and juce::ADSR::Parameters::sustain.