|
SoundFontInfoLib
2.21.6
Library for parsing and rendering SF2 files
|
A voice renders audio samples for a given note / pitch. More...
#include <Voice.hpp>
Public Member Functions | |
| Voice (double sampleRate, const MIDI::Channel &channel, const Setup &setup) | |
| Construct a new voice renderer. More... | |
| void | keyReleased () |
| Signal the envelopes that the key is no longer pressed, transitioning to release phase. More... | |
| bool | isActive () const |
| bool | canLoop () const |
| double | render () |
A voice renders audio samples for a given note / pitch.
| Voice::Voice | ( | double | sampleRate, |
| const MIDI::Channel & | channel, | ||
| const Setup & | setup | ||
| ) |
Construct a new voice renderer.
| sampleRate | the sample rate to use for generating audio |
| channel | the MIDI state associated with the renderer |
| setup | the zones to apply to build the generator state |
References SF2::Entity::Generator::delayModulatorLFO, SF2::Entity::Generator::delayVibratoLFO, SF2::Entity::Generator::frequencyModulatorLFO, and SF2::Entity::Generator::frequencyVibratoLFO.
|
inline |
References SF2::Render::Voice::State::continuously, SF2::Render::Voice::State::duringKeyPress, and SF2::Render::Envelope::Generator::isGated().
Referenced by render().
|
inline |
References SF2::Render::Envelope::Generator::isActive().
Referenced by render().
|
inline |
Signal the envelopes that the key is no longer pressed, transitioning to release phase.
References SF2::Render::Envelope::Generator::gate().
|
inline |
References canLoop(), SF2::Render::Sample::Generator::generate(), isActive(), SF2::Render::Voice::State::modulated(), SF2::Entity::Generator::modulatorEnvelopeToPitch, SF2::Entity::Generator::modulatorLFOToPitch, SF2::Render::Envelope::Generator::process(), SF2::Render::LFO::valueAndIncrement(), and SF2::Entity::Generator::vibratoLFOToPitch.