Navigation
| Name | HarmonixDsp |
| Type | Runtime |
| Part of Plugins | Harmonix |
| Location | /Engine/Plugins/Runtime/Harmonix/Source/HarmonixDsp/ |
| Module Build Rules | HarmonixDsp.Build.cs |
Classes
| Name | Remarks |
|---|---|
| FAliasFusionVoice | |
| FBiquadFilterCoefs | Coefficients for difference function |
| FBoolParameter | Helper to make bool parameters easier to work with. |
| FDelay | |
| FDistortionV2 | |
| FDjFilter | A filter that cross-fades between a low-pass filter, the dry signal, and a high-pass filter on one "knob". |
| FFFTAnalyzer | |
| FFirFilter | Finite Impulse Response filter, or (FIR) Filter, that can be used to perform filtering and other signal processing operations. |
| FFirFilter32 | A FIR Filter optimized for 32-tap coefficients. |
| FFourBiquads | |
| FFusionSampler | Make Fusion Sampler derive directly from virtual instrument. |
| FFusionVoice | |
| FFusionVoiceFixLayout | Hacky base class to avoid 8 bytes of padding after the vtable. |
| FFusionVoicePool | |
| FGainMatrix | |
| FGainTable | |
| FHarmonixDspModule | |
| FHarmonixMeterData | |
| FModulator | |
| FMorphingLFO | A clock-sync-able LFO with a morphing waveform. |
| FMusicalAudioBus | |
| FOnFusionPatchLoadComplete | Called when a load request for a sound has completed. |
| FRamper | |
| FSingletonFusionVoicePool | SingletonFusionVoicePool - This class allocates a REAL fusion voice when first asked to allocate a voice. |
| FTapeStopStart | |
| FVirtualInstrument | |
| FWaveFileComparison | |
| TAudioBuffer | |
| TConsumableAudioBuffer | |
| TDynamicObjectPool | A generic pool used to dynamically allocate objects Objects are stored as SharedPtrs Objects are returned as SharedPtrs So resetting the pool won't auto-delete items created by the pool |
| TDynamicStridePtr | |
| TFixedStridePtr | |
| TLinearCircularRamper | |
| TLinearRamper | |
| TMultiChannelBiquadFilter | Simple definiton, to save some typing I guess template |
| TMultipassBiquadFilter | |
| TParameter | An atomic config value for something that needs configuring |
| TRamper | |
| TTimeBasedRamper | |
| UFusionPatch | |
| UFusionSamplerConfig | |
| UStretcherAndPitchShifterConfig | Base class for all Stretcher and Pitch Shifter config settings allows configuration to appear in the "Pitch Shifter Settings" along with any other pitch shifter settings |
| UStretcherAndPitchShifterFactoryConfig |
Structs
Interfaces
| Name | Remarks |
|---|---|
| IAudioDataRenderer | |
| IMusicalAudioBusOwner | Virtual interface for owners of musical audio buses |
| IStretcherAndPitchShifter | |
| IStretcherAndPitchShifterFactory |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FBiquadFilter | TBiquadFilter< float > | Declare FBiquadFilter for compatibility reasons. And saves some typing | HarmonixDsp/Effects/BiquadFilter.h |
| FChannelGains | union { VectorRegister4Float simd[Harmonix::Dsp::GainTable::kMaxSpeakers/4]; float f[Harmonix::Dsp::GainTable::kMaxSpeakers]; } | HarmonixDsp/GainTable.h | |
| FFusionPatchDataProxy | Harmonix::TAudioRenderableProxy< FFusionPatchData, Harmonix::TGameThreadToAudioRenderThreadSettingQueue< FFusionPatchData > > | This next macro does a few things. | HarmonixDsp/FusionSampler/FusionPatch.h |
| FInterleaved51FloatChannelPtr | TFixedStridePtr< float, 6 > | HarmonixDsp/StridePointer.h | |
| FInterleaved71FloatChannelPtr | TFixedStridePtr< float, 8 > | HarmonixDsp/StridePointer.h | |
| FInterleavedStereoFloatChannelPtr | TFixedStridePtr< float, 2 > | HarmonixDsp/StridePointer.h | |
| FSharedFusionVoicePoolPtr | TSharedPtr< FFusionVoicePool, ESPMode::ThreadSafe > | HarmonixDsp/FusionSampler/FusionSampler.h | |
| FSharedFusionVoicePoolPtr | TSharedPtr< FFusionVoicePool, ESPMode::ThreadSafe > | HarmonixDsp/FusionSampler/FusionVoicePool.h | |
| IFeatureClient | void | HarmonixDsp/StretcherAndPitchShifterFactory.h |
Enums
Public
| Name | Remarks |
|---|---|
| EAdsrTarget | |
| EAudioBufferChannelLayout | Copyright Epic Games, Inc. All Rights Reserved. |
| EAudioBufferCleanupMode | |
| EBiquadFilterType | Copyright Epic Games, Inc. All Rights Reserved. |
| EDelayFilterType | |
| EDelayStereoType | Copyright Epic Games, Inc. All Rights Reserved. |
| EDistortionTypeV1 | |
| EDistortionTypeV2 | |
| EFusionPatchAudioLoadResult | |
| EKeyzoneSelectMode | |
| ELfoTarget | |
| EModulatorTarget | |
| EPannerMode | |
| EParameterType | Constrain the types allowed for TypedVariant simplify the blueprint customization and ui/ux |
| EPortamentoMode | Copyright Epic Games, Inc. All Rights Reserved. |
| ERamperMode | |
| ESpeakerChannelAssignment | |
| ESpeakerMask::Type | Namespace enum pattern creates scope for the masks while also keeping them loosely typed The benefits: easier to read, easier type (auto complete and search), ESpeakerMask::Type can be used as parameter |
| ETimeSyncOption | Copyright Epic Games, Inc. All Rights Reserved. |
| EVocoderBandConfig | Copyright Epic Games, Inc. All Rights Reserved. |
| EWaveShape | Copyright Epic Games, Inc. All Rights Reserved. |
| Harmonix::Dsp::Modulators::EAdsrMode | Copyright Epic Games, Inc. All Rights Reserved. |
| Harmonix::Dsp::Modulators::EAdsrStage | Copyright Epic Games, Inc. All Rights Reserved. |
| Harmonix::Dsp::Modulators::EDepthMode | Copyright Epic Games, Inc. All Rights Reserved. |
| Harmonix::Dsp::Modulators::ELfoMode | Copyright Epic Games, Inc. All Rights Reserved. |
Constants
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| AudioRendering::kFramesPerRenderBuffer | const int32 | HarmonixDsp/AudioUtility.h | |
| AudioRendering::kMicroFadeMs | const float | HarmonixDsp/AudioUtility.h | |
| AudioRendering::kMicroFadeSec | const float | HarmonixDsp/AudioUtility.h | |
| AudioRendering::kMicroSliceSize | const int32 | HarmonixDsp/AudioUtility.h | |
| Harmonix::Dsp::GainTable::kMaxSpeakers | const int32 | HarmonixDsp/GainTable.h | |
| HarmonixDsp::FAudioBuffer::ChannelAssignmentSpeakerToMappedChannel | const uint8 | HarmonixDsp/AudioBufferConstants.h | |
| HarmonixDsp::FAudioBuffer::ChannelAssignmentSpeakerToMappedMasks | const uint32 | HarmonixDsp/AudioBufferConstants.h | |
| HarmonixDsp::FAudioBuffer::kMaxChannelsInAudioBuffer | const uint32 | HarmonixDsp/AudioBufferConstants.h | |
| HarmonixDsp::kDbMax | const float | Reasonable maximum value for volume in Db | HarmonixDsp/AudioUtility.h |
| HarmonixDsp::kDbMin | const float | Ridiculously small minimum: | HarmonixDsp/AudioUtility.h |
| HarmonixDsp::kDbSilence | const float | Reasonable minimum value for volume in Db | HarmonixDsp/AudioUtility.h |
| LogHarmonixFourBiquads | FLogCategoryLogHarmonixFourBiquads | HarmonixDsp/Effects/FourBiquads.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| kCentsPerOctave | const float | HarmonixDsp/AudioUtility.h | ||
| kDefaultSpeakerAzimuths | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kLayoutHasSpeakerMasks | const uint32 | HarmonixDsp/AudioBufferConstants.h | ||
| kLeftRearSpeakerPos_Five | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kLeftRearSpeakerPos_Quad | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kLeftRearSpeakerPos_Seven | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kLeftRearSpeakerPos_Stereo | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kLeftSpeakerPos_Five | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kLeftSpeakerPos_Quad | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kLeftSpeakerPos_Seven | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kLeftSpeakerPos_Stereo | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kLeftSurroundSpeakerPos_Five | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kLeftSurroundSpeakerPos_Quad | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kLeftSurroundSpeakerPos_Seven | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kLeftSurroundSpeakerPos_Stereo | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kOctavesPerCent | const float | HarmonixDsp/AudioUtility.h | ||
| kRightRearSpeakerPos_Five | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kRightRearSpeakerPos_Quad | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kRightRearSpeakerPos_Seven | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kRightRearSpeakerPos_Stereo | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kRightSpeakerPos_Five | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kRightSpeakerPos_Quad | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kRightSpeakerPos_Seven | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kRightSpeakerPos_Stereo | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kRightSurroundSpeakerPos_Five | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kRightSurroundSpeakerPos_Quad | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kRightSurroundSpeakerPos_Seven | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kRightSurroundSpeakerPos_Stereo | const float | HarmonixDsp/AudioBufferConstants.h | ||
| kTinyGain | const float | TODO? SMALL_NUMBER = 1.e-8f; KINDA_SMALL_NUMBER = 1.e-4f; kTinyGain = 1.e-5f though... | HarmonixDsp/AudioUtility.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
float Harmonix::Dsp::AudioAnalysis::CalculatePSNR
(
const T* InterleavedInA, |
Calculates the signal to noise. 96dB is perfect... no noise, all signal. Big numbers good, small numbers bad. | HarmonixDsp/AudioAnalysis/AnalysisUtilities.h | |
float HarmonixDsp::ClampDB
(
float dB |
HarmonixDsp/AudioUtility.h | ||
float HarmonixDsp::dBFS
(
float Linear |
Decibels relative to full scale | HarmonixDsp/AudioUtility.h | |
float HarmonixDsp::DBToLinear
(
float dB |
HarmonixDsp/AudioUtility.h | ||
int8 HarmonixDsp::DBToMidiLinear
(
float dB |
HarmonixDsp/AudioUtility.h | ||
void HarmonixDsp::FAudioBuffer::Convert
(
const TAudioBuffer< float >& Source, |
HarmonixDsp/AudioBuffer.h | ||
void HarmonixDsp::FAudioBuffer::Convert
(
const TAudioBuffer< int16 >& Source, |
HarmonixDsp/AudioBuffer.h | ||
void HarmonixDsp::FAudioBuffer::DebugLog
(
const int16* InData, |
HarmonixDsp/AudioBuffer.h | ||
void HarmonixDsp::FAudioBuffer::DebugLog
(
const float* InData, |
HarmonixDsp/AudioBuffer.h | ||
ESpeakerMask::Type HarmonixDsp::FAudioBuffer::GetChannelMaskForNumChannels
(
uint32 NumChannels |
HarmonixDsp/AudioBufferConstants.h | ||
EAudioBufferChannelLayout HarmonixDsp::FAudioBuffer::GetDefaultChannelLayoutForChannelCount
(
uint32 ChannelCount |
HarmonixDsp/AudioBufferConstants.h | ||
int32 HarmonixDsp::FAudioBuffer::GetNumChannelsInChannelLayout
(
EAudioBufferChannelLayout ChannelLayout |
HarmonixDsp/AudioBufferConstants.h | ||
float HarmonixDsp::FRandSample() |
HarmonixDsp/AudioUtility.h | ||
void HarmonixDsp::GenerateWhiteNoiseEq
(
T* Output, |
HarmonixDsp/Generate.h | ||
float HarmonixDsp::LinearToDB
(
float Gain |
HarmonixDsp/AudioUtility.h | ||
float HarmonixDsp::Log10
(
float Value |
HarmonixDsp/AudioUtility.h | ||
double HarmonixDsp::Log10
(
double Value |
HarmonixDsp/AudioUtility.h | ||
float HarmonixDsp::Midi14BitLinearToDB
(
int32 Level |
HarmonixDsp/AudioUtility.h | ||
float HarmonixDsp::MidiLinearToDB
(
int8 Level |
HarmonixDsp/AudioUtility.h | ||
void HarmonixDsp::PanToGainsConstantPower
(
float Pan, |
HarmonixDsp/AudioUtility.h |