Navigation
API > API/Plugins > API/Plugins/HarmonixDsp
| Name | FFusionVoice |
| Type | class |
| Header File | /Engine/Plugins/Runtime/Harmonix/Source/HarmonixDsp/Public/HarmonixDsp/FusionSampler/FusionVoice.h |
| Include Path | #include "HarmonixDsp/FusionSampler/FusionVoice.h" |
Syntax
class FFusionVoice : private FFusionVoiceFixLayout
Inheritance Hierarchy
- FFusionVoiceFixLayout → FFusionVoice
Derived Classes
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FFusionVoice() |
HarmonixDsp/FusionSampler/FusionVoice.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~FFusionVoice() |
HarmonixDsp/FusionSampler/FusionVoice.h |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FRelinquishHandler | TFunction< bool(FFusionVoice *)> | HarmonixDsp/FusionSampler/FusionVoice.h |
Constants
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| kInvalidId | const uint32 | HarmonixDsp/FusionSampler/FusionVoice.h | |
| kMaxPitchOffsetCents | const double | HarmonixDsp/FusionSampler/FusionVoice.h | |
| kNumLfos | const int32 | HarmonixDsp/FusionSampler/FusionVoice.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| ActiveRenderer | TSharedPtr< IAudioDataRenderer, ESPMode::ThreadSafe > | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| AdsrAssignable | Harmonix::Dsp::Modulators::FAdsr | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| AdsrVolume | Harmonix::Dsp::Modulators::FAdsr | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| bHasRenderedAnySamples | bool | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| bWaitingForAttack | bool | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| CachedFilterFrequency | float | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| CurrentVso | float | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| DebugID | uint32 | Just for debugging | HarmonixDsp/FusionSampler/FusionVoice.h | |
| EndOfSampleData | double | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| FileToOutputSampleRatio | double | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| FilterCoefsRamper | TLinearRamper< Harmonix::Dsp::Effects::FBiquadFilterCoefs > | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| FilterGainRamper | TLinearRamper< float > | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| FilterOctaveTarget | Harmonix::Dsp::Modulators::FModulatorTarget | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| Filters | Harmonix::Dsp::Effects::FBiquadFilter | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| KeyZone | const FKeyzoneSettings * | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| LastVsoPos | double | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| Lfo | Harmonix::Dsp::Modulators::FLfo | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| MaxAudioLevel | float | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| ModulatedFilterSettings | FBiquadFilterSettings | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| OctaveShift | float | This is the number we use to modulate the filter frequency. | HarmonixDsp/FusionSampler/FusionVoice.h | |
| OutputBuffer | TAudioBuffer< float > | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| Panner | FPanner | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| PitchModulation | double | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| PitchOffsetCents | double | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| PitchShift | double | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| PitchShifter | TSharedPtr< IStretcherAndPitchShifter, ESPMode::ThreadSafe > | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| RelinquishHandler | FRelinquishHandler | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| ResampleRate | double | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| SamplePos | double | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| SamplesPerSecond | double | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| SecondsPerSample | double | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| StartPos | double | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| StartQuarterNote | float | Needed for tempo sync'd keyzones... | HarmonixDsp/FusionSampler/FusionVoice.h | |
| VelocityGain | float | HarmonixDsp/FusionSampler/FusionVoice.h | ||
| VoicePool | FFusionVoicePool * | HarmonixDsp/FusionSampler/FusionVoice.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool AssignIDs
(
FFusionSampler* InSampler, |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
virtual void AttackWithTargetNote
(
uint8 InMidiNoteNumber, |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
virtual void FastRelease() |
Ramps down using a microfade to free up the voice as soon as possible without an audible pop | HarmonixDsp/FusionSampler/FusionVoice.h | |
virtual Harmonix::Dsp::Modulators::EAdsrStage GetAdsrStage() |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
uint32 GetAge() |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
float GetCombinedAudioLevel() |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
double GetEndOfSampleData() |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
virtual const FKeyzoneSettings * GetKeyzone() |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
virtual TSharedPtr< IStretcherAndPitchShifter, ESPMode::ThreadSafe > GetPitchShifter() |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
double GetPlaybackPos() |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
FFusionSampler * GetSampler() |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
int32 GetTargetMidiNote() |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
uint8 GetTriggeredMidiNote() |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
FMidiVoiceId GetVoiceID() |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
virtual bool HasBeenRelinquished() |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
void Init
(
FFusionVoicePool* InOwner, |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
virtual bool IsAlias() |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
virtual bool IsInUse() |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
virtual bool IsRendererForAlias() |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
bool IsWaitingForAttack() |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
virtual void Kill () |
Kill (and free up) the voice immediately with no ramp down. | HarmonixDsp/FusionSampler/FusionVoice.h | |
virtual bool MatchesIDs
(
const FFusionSampler* InSampler, |
If keyzone is NULL (or not passed in), then all voices with the channel and note id will match | HarmonixDsp/FusionSampler/FusionVoice.h | |
void PlaySampleSlice
(
float start, |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
uint8 Priority() |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
virtual uint32 Process
(
uint32 sliceIndex, |
This function is called on the audio thread to have the voice fill up the given buffer | HarmonixDsp/FusionSampler/FusionVoice.h | |
virtual void Release () |
Puts the voice into release stage, which lets it ramp down. | HarmonixDsp/FusionSampler/FusionVoice.h | |
void SetIsRendererForAlias
(
bool InIsRenderer |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
virtual void SetPitchOffset
(
double numCents |
Offset the pitch of this voice by a (fractional) number of cents call this only before calling attack. | HarmonixDsp/FusionSampler/FusionVoice.h | |
void SetPitchShiftForMidiNote
(
uint8 InNote |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
void SetRelinquishHandler
(
FRelinquishHandler handler |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
void SetSampler
(
FFusionSampler* InSampler |
Used by the voice aliasing system if this real voice is passed around amoung virtual voices... | HarmonixDsp/FusionSampler/FusionVoice.h | |
virtual void SetupLfo
(
uint8 Index, |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
virtual bool UsesKeyzone
(
const FKeyzoneSettings* InKeyzone |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
bool UsesSampler
(
const FFusionSampler* InSampler |
HarmonixDsp/FusionSampler/FusionVoice.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static void RestoreFilterGain
(
void* thisPointer |
HarmonixDsp/FusionSampler/FusionVoice.h | ||
static void UpdateFilterSettings
(
void* thisPointer |
HarmonixDsp/FusionSampler/FusionVoice.h |