|
| enum class | EHardwareInputFeature : uint8 { EchoCancellation
, NoiseSuppression
, AutomaticGainControl
} |
| |
| enum class | EPCMAudioEncoding : uint8 {
UNKNOWN
, PCM_8
, PCM_16
, PCM_24
,
PCM_24_IN_32
, PCM_32
, FLOATING_POINT_32
, FLOATING_POINT_64
} |
| |
| enum class | ETransformationPriority : uint8 { None = 0
, Low
, High
} |
| |
| enum class | EMixerSourceInitializationState : uint8 { NotInitialized
, Initializing
, Initialized
} |
| |
| enum class | EBufferReadMode : uint8 { Asynchronous
, AsynchronousSkipFirstFrame
} |
| |
| enum class | EAudioTaskType { Procedural
, Header
, Decode
, Invalid
} |
| |
| enum | EMixerSourceSubmixSendStage { PostDistanceAttenuation
, PreDistanceAttenuation
} |
| |
| enum class | EDeviceEndpointType { Unknown
, Render
, Capture
} |
| |
| enum class | EAudioDeviceRole { Console
, Multimedia
, Communications
, COUNT
} |
| |
| enum class | EAudioDeviceState {
Active
, Disabled
, NotPresent
, Unplugged
,
COUNT
} |
| |
| enum class | EResamplingMethod : uint8 {
BestSinc = 0
, ModerateSinc = 1
, FastSinc = 2
, ZeroOrderHold = 3
,
Linear = 4
} |
| |
| enum class | EWasapiAudioEncoding : uint8 {
UNKNOWN
, PCM_8
, PCM_16
, PCM_24
,
PCM_24_IN_32
, PCM_32
, FLOATING_POINT_32
, FLOATING_POINT_64
} |
| |
| enum | EFormatType { IEEE_FLOAT = 0x3
} |
| |
| enum class | ESoundWavePCMWriterState : uint8 {
Idle
, Generating
, WritingToDisk
, Suceeded
,
Failed
, Cancelled
} |
| |
| enum class | ESoundWavePCMWriteTaskType : uint8 { GenerateSoundWave
, GenerateAndWriteSoundWave
, WriteSoundWave
, WriteWavFile
} |
| |
| enum class | EResult : uint8 { Success = 0
, Failure = 1
, NotImplemented = 2
} |
| |
| enum class | ESpectrumType : uint8 { MagnitudeSpectrum
, PowerSpectrum
} |
| |
| enum class | EWindowType : uint8 { None
, Hamming
, Hann
, Blackman
} |
| |
| enum class | ECheckBufferFlags : uint32 {
None = 0
, Infinity = 1 << 1
, Nan = 1 << 2
, Denormalized = 1 << 3
,
All = Infinity | Nan | Denormalized
} |
| |
| enum class | EBufferCheckBehavior : uint8 { Nothing
, Ensure
, Log
, Break
} |
| |
| enum class | EChannelMapOrder : uint8 { OutputMajorOrder
, InputMajorOrder
} |
| |
| enum class | EChannelMapMonoUpmixMethod : uint8 { Linear
, EqualPower
, FullVolume
} |
| |
| enum class | EPseudoConstantQNormalization : uint8 { EqualAmplitude
, EqualEuclideanNorm
, EqualEnergy
} |
| |
| enum class | EDynamicsProcessorChannelLinkMode : uint8 { Disabled
, Average
, Peak
, Count
} |
| |
| enum | EDynamicFilterType { Bell
, LowShelf
, HighShelf
} |
| |
| enum class | EEventQuantization : uint8 {
None
, Bars8
, Bars4
, Bars2
,
Bar
, HalfNote
, HalfNoteTriplet
, QuarterNote
,
QuarterNoteTriplet
, EighthNote
, EighthNoteTriplet
, SixteenthNote
,
SixteenthNoteTriplet
, ThirtySecondNote
, Count
} |
| |
| enum class | EFFTScaling : uint8 {
None
, MultipliedByFFTSize
, MultipliedBySqrtFFTSize
, DividedByFFTSize
,
DividedBySqrtFFTSize
} |
| |
| enum class | EGranularSynthMode : uint8 { Synthesis
, Granulation
, Count
} |
| |
| enum class | EGrainEnvelopeType {
Rectangular
, Triangle
, DownwardTriangle
, UpwardTriangle
,
ExponentialDecay
, ExponentialIncrease
, Gaussian
, Hanning
,
Lanczos
, Cosine
, CosineSquared
, Welch
,
Blackman
, BlackmanHarris
, Count
} |
| |
| enum class | EMelNormalization : uint8 { EqualAmplitude
, EqualEuclideanNorm
, EqualEnergy
} |
| |
| enum class | EFilterOrder : uint32 { TwoPole = 1
, FourPole
, SixPole
, EightPole
} |
| |
| enum class | EFaderCurve : uint8 {
Linear
, Logarithmic
, SCurve
, Sin
,
Count
} |
| |
| enum class | EWaveShaperType : int32 {
Sin
, ATan
, Tanh
, Cubic
,
HardClip
} |
| |
|
| void AUDIOMIXERAUDIOUNIT_API | IncrementIOSAudioMixerPlatformSuspendCounter () |
| |
| void AUDIOMIXERAUDIOUNIT_API | DecrementIOSAudioMixerPlatformSuspendCounter () |
| |
| IAnalyzerFactory * | GetAnalyzerFactory (FName InFactoryName) |
| |
| IAnalyzerNRTFactory * | GetAnalyzerNRTFactory (FName InFactoryName) |
| |
| class AUDIOCAPTURERTAUDIO_API | UE_DEPRECATED (5.3, "FRtAudioInputWrapper is deprecated, please use FAudioCapture instead.") FRtAudioInputWrapper |
| |
| const TCHAR * | ToString (AudioSessionDisconnectReason InDisconnectReason) |
| |
| const TCHAR * | ToString (ERole InRole) |
| |
| const TCHAR * | ToString (EDataFlow InFlow) |
| |
| FString | ToFString (const PROPERTYKEY InKey) |
| |
| const TCHAR * | ToString (EAudioDeviceRole InRole) |
| |
| const TCHAR * | ToString (EAudioDeviceState InState) |
| |
| FString | ToFString (const TArray< EAudioMixerChannel::Type > &InChannels) |
| |
| FString | AudioClientErrorToFString (HRESULT InResult) |
| |
| FModulatorHandleId | CreateModulatorHandleId () |
| |
| void | RegisterModulationParameter (FName InName, FModulationParameter &&InParameter) |
| |
| bool | UnregisterModulationParameter (FName InName) |
| |
| void | UnregisterAllModulationParameters () |
| |
| bool | IsModulationParameterRegistered (FName InName) |
| |
| const FModulationParameter * | GetModulationParameterPtr (FName InName) |
| |
| const FModulationParameter & | GetDefaultModulationParameter () |
| |
| const FModulationParameter & | GetModulationParameter (FName InName) |
| |
| template<typename UClassToUse > |
| IAudioProxyDataFactory * | CastToProxyDataFactory (UObject *InObject) |
| |
| IAudioTask * | CreateAudioTask (Audio::FDeviceId InDeviceId, const FProceduralAudioTaskData &InJobData) |
| |
| IAudioTask * | CreateAudioTask (Audio::FDeviceId InDeviceId, const FHeaderParseAudioTaskData &InJobData) |
| |
| IAudioTask * | CreateAudioTask (Audio::FDeviceId InDeviceId, const FDecodeAudioTaskData &InJobData) |
| |
| void | CreateSynchronizedAudioTaskQueue (AudioTaskQueueId QueueId) |
| |
| void | DestroySynchronizedAudioTaskQueue (AudioTaskQueueId QueueId, bool RunCurrentQueue) |
| |
| int | KickQueuedTasks (AudioTaskQueueId QueueId) |
| |
| int32 | GetCommandBufferInitialCapacity () |
| |
| bool | IsAudioBufferSilent (const float *AudioBuffer, const int32 NumSamples) |
| |
| bool | SoundFileIOManagerInit () |
| |
| bool | SoundFileIOManagerShutdown () |
| |
| FName | NAME_PLATFORM_SPECIFIC (TEXT("PLATFORM_SPECIFIC")) |
| |
| FName | NAME_PROJECT_DEFINED (TEXT("PROJECT_DEFINED")) |
| |
| FName | NAME_BINKA (TEXT("BINKA")) |
| |
| FName | NAME_ADPCM (TEXT("ADPCM")) |
| |
| FName | NAME_PCM (TEXT("PCM")) |
| |
| FName | NAME_OPUS (TEXT("OPUS")) |
| |
| FName | NAME_RADA (TEXT("RADA")) |
| |
| FName | NAME_OGG (TEXT("OGG")) |
| |
| bool | CheckBufferValidity (const FResamplingParameters &InParameters, FResamplerResults &OutData) |
| |
| int32 | GetOutputBufferSize (const FResamplingParameters &InParameters) |
| |
| bool | Resample (const FResamplingParameters &InParameters, FResamplerResults &OutData) |
| |
| template<class ListenerType > |
| class | UE_DEPRECATED (5.5, "Message") TQuartzShareableCommandQueue |
| |
| FName | ToName (ESoundAssetCompressionType InDecoderType) |
| |
| ESoundAssetCompressionType | ToSoundAssetCompressionType (EDefaultAudioCompressionType InDefaultCompressionType) |
| |
| ICompressedAudioInfo * | CreateSoundAssetDecoder (const FName &InRuntimeFormat) |
| |
| uint64 | GetTransmitterID (uint64 ComponentID, UPTRINT WaveInstanceHash, uint32 PlayOrder) |
| |
| FName | GetCloudStreamingFormatOverride (const FName &InCurrentFormat, const USoundWave *InWave) |
| |
| const TCHAR * | ShortEnumString (const TCHAR *InString) |
| |
| ENGINE_API bool | MatchesLogFilter (const TCHAR *InName) |
| |
| bool | MatchesLogFilter (const FName &InName) |
| |
| void | EncodeMonoAmbisonicMixIn (TArrayView< const float > Src, TArrayView< float * > Dst, TArrayView< const float > AmbisonicGains) |
| |
| void | DecodeMonoAmbisonicMixIn (TArrayView< const float * > Src, TArrayView< float > Dst, TArrayView< const float > AmbisonicGains) |
| |
| void | DistanceAttenuationProcessAudio (TArrayView< int16 > &InOutBuffer, uint32 InNumChannels, float InDistance, const FAudioBufferDistanceAttenuationSettings &InSettings, float &InOutAttenuation) |
| |
| void | DistanceAttenuationProcessAudio (TArrayView< float > &InOutBuffer, uint32 InNumChannels, float InDistance, const FAudioBufferDistanceAttenuationSettings &InSettings, float &InOutAttenuation) |
| |
| void | GenerateRectangularWindow (float *WindowBuffer, int32 NumFrames, int32 NumChannels) |
| |
| void | GenerateHammingWindow (float *WindowBuffer, int32 NumFrames, int32 NumChannels, bool bIsPeriodic) |
| |
| void | GenerateHannWindow (float *WindowBuffer, int32 NumFrames, int32 NumChannels, bool bIsPeriodic) |
| |
| void | GenerateBlackmanWindow (float *WindowBuffer, int32 NumFrames, int32 NumChannels, bool bIsPeriodic) |
| |
| void | GenerateWindow (float *InOutWindowBuffer, EWindowType InType, int32 InNumFrames, int32 InNumChannels, bool bIsPeriodic) |
| |
| uint32 | GetCOLAHopSizeForWindow (EWindowType InType, uint32 WindowLength) |
| |
| int32 | CeilLog2 (int32 InNum) |
| |
| float | GetPowerSpectrumScaling (int32 FFTSize, EFFTScaling InCurrentScaling, EFFTScaling InTargetScaling) |
| |
| void | ScalePowerSpectrumInPlace (int32 FFTSize, EFFTScaling InCurrentScaling, EFFTScaling InTargetScaling, TArrayView< float > InPowerSpectrum) |
| |
| int32 | FindDenormalized (TArrayView< const float > InBuffer) |
| |
| bool | ContainsDenormalized (TArrayView< const float > InBuffer) |
| |
| int32 | FindInfinity (TArrayView< const float > InBuffer) |
| |
| bool | ContainsInfinity (TArrayView< const float > InBuffer) |
| |
| int32 | FindNan (TArrayView< const float > InBuffer) |
| |
| bool | ContainsNan (TArrayView< const float > InBuffer) |
| |
| bool | CheckBuffer (TArrayView< const float > InBuffer, const ECheckBufferFlags InFlags, ECheckBufferFlags &OutFailedFlags) |
| |
| FString | ToDelimitedString (const ECheckBufferFlags InEnum) |
| |
| void | Apply2ChannelGain (FAlignedFloatBuffer &StereoBuffer, const float *RESTRICT Gains) |
| |
| void | Apply2ChannelGain (float *RESTRICT StereoBuffer, int32 NumSamples, const float *RESTRICT Gains) |
| |
| void | Apply2ChannelGain (FAlignedFloatBuffer &StereoBuffer, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | Apply2ChannelGain (float *RESTRICT StereoBuffer, int32 NumSamples, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | MixMonoTo2ChannelsFast (const FAlignedFloatBuffer &MonoBuffer, FAlignedFloatBuffer &DestinationBuffer, const float *RESTRICT Gains) |
| |
| void | MixMonoTo2ChannelsFast (const float *RESTRICT MonoBuffer, float *RESTRICT DestinationBuffer, int32 NumFrames, const float *RESTRICT Gains) |
| |
| void | MixMonoTo2ChannelsFast (const FAlignedFloatBuffer &MonoBuffer, FAlignedFloatBuffer &DestinationBuffer, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | MixMonoTo2ChannelsFast (const float *RESTRICT MonoBuffer, float *RESTRICT DestinationBuffer, int32 NumFrames, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | MixMonoTo2ChannelsFast (const FAlignedFloatBuffer &MonoBuffer, FAlignedFloatBuffer &DestinationBuffer) |
| |
| void | MixMonoTo2ChannelsFast (const float *RESTRICT MonoBuffer, float *RESTRICT DestinationBuffer, int32 InNumFrames) |
| |
| void | Mix2ChannelsTo2ChannelsFast (const FAlignedFloatBuffer &SourceBuffer, FAlignedFloatBuffer &DestinationBuffer, const float *RESTRICT Gains) |
| |
| void | Mix2ChannelsTo2ChannelsFast (const float *RESTRICT SourceBuffer, float *RESTRICT DestinationBuffer, int32 NumFrames, const float *RESTRICT Gains) |
| |
| void | Mix2ChannelsTo2ChannelsFast (const FAlignedFloatBuffer &SourceBuffer, FAlignedFloatBuffer &DestinationBuffer, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | Mix2ChannelsTo2ChannelsFast (const float *RESTRICT SourceBuffer, float *RESTRICT DestinationBuffer, int32 NumFrames, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | Apply4ChannelGain (FAlignedFloatBuffer &InterleavedBuffer, const float *RESTRICT Gains) |
| |
| void | Apply4ChannelGain (float *RESTRICT InterleavedBuffer, int32 NumSamples, const float *RESTRICT Gains) |
| |
| void | Apply4ChannelGain (FAlignedFloatBuffer &InterleavedBuffer, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | Apply4ChannelGain (float *RESTRICT InterleavedBuffer, int32 NumSamples, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | MixMonoTo4ChannelsFast (const FAlignedFloatBuffer &MonoBuffer, FAlignedFloatBuffer &DestinationBuffer, const float *RESTRICT Gains) |
| |
| void | MixMonoTo4ChannelsFast (const float *RESTRICT MonoBuffer, float *RESTRICT DestinationBuffer, int32 NumFrames, const float *RESTRICT Gains) |
| |
| void | MixMonoTo4ChannelsFast (const FAlignedFloatBuffer &MonoBuffer, FAlignedFloatBuffer &DestinationBuffer, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | MixMonoTo4ChannelsFast (const float *RESTRICT MonoBuffer, float *RESTRICT DestinationBuffer, int32 NumFrames, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | Mix2ChannelsTo4ChannelsFast (const FAlignedFloatBuffer &SourceBuffer, FAlignedFloatBuffer &DestinationBuffer, const float *RESTRICT Gains) |
| |
| void | Mix2ChannelsTo4ChannelsFast (const float *RESTRICT SourceBuffer, float *RESTRICT DestinationBuffer, int32 NumFrames, const float *RESTRICT Gains) |
| |
| void | Mix2ChannelsTo4ChannelsFast (const FAlignedFloatBuffer &SourceBuffer, FAlignedFloatBuffer &DestinationBuffer, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | Mix2ChannelsTo4ChannelsFast (const float *RESTRICT SourceBuffer, float *RESTRICT DestinationBuffer, int32 NumFrames, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | Apply6ChannelGain (FAlignedFloatBuffer &InterleavedBuffer, const float *RESTRICT Gains) |
| |
| void | Apply6ChannelGain (float *RESTRICT InterleavedBuffer, int32 NumSamples, const float *RESTRICT Gains) |
| |
| void | Apply6ChannelGain (FAlignedFloatBuffer &InterleavedBuffer, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | Apply6ChannelGain (float *RESTRICT InterleavedBuffer, int32 NumSamples, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | MixMonoTo6ChannelsFast (const FAlignedFloatBuffer &MonoBuffer, FAlignedFloatBuffer &DestinationBuffer, const float *RESTRICT Gains) |
| |
| void | MixMonoTo6ChannelsFast (const float *RESTRICT MonoBuffer, float *RESTRICT DestinationBuffer, int32 NumFrames, const float *RESTRICT Gains) |
| |
| void | MixMonoTo6ChannelsFast (const FAlignedFloatBuffer &MonoBuffer, FAlignedFloatBuffer &DestinationBuffer, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | MixMonoTo6ChannelsFast (const float *RESTRICT MonoBuffer, float *RESTRICT DestinationBuffer, int32 NumFrames, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | Mix2ChannelsTo6ChannelsFast (const FAlignedFloatBuffer &SourceBuffer, FAlignedFloatBuffer &DestinationBuffer, const float *RESTRICT Gains) |
| |
| void | Mix2ChannelsTo6ChannelsFast (const float *RESTRICT SourceBuffer, float *RESTRICT DestinationBuffer, int32 NumFrames, const float *RESTRICT Gains) |
| |
| void | Mix2ChannelsTo6ChannelsFast (const FAlignedFloatBuffer &SourceBuffer, FAlignedFloatBuffer &DestinationBuffer, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | Mix2ChannelsTo6ChannelsFast (const float *RESTRICT SourceBuffer, float *RESTRICT DestinationBuffer, int32 NumFrames, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | Apply8ChannelGain (FAlignedFloatBuffer &InterleavedBuffer, const float *RESTRICT Gains) |
| |
| void | Apply8ChannelGain (float *RESTRICT InterleavedBuffer, int32 NumSamples, const float *RESTRICT Gains) |
| |
| void | Apply8ChannelGain (FAlignedFloatBuffer &InterleavedBuffer, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | Apply8ChannelGain (float *RESTRICT InterleavedBuffer, int32 NumSamples, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | MixMonoTo8ChannelsFast (const FAlignedFloatBuffer &MonoBuffer, FAlignedFloatBuffer &DestinationBuffer, const float *RESTRICT Gains) |
| |
| void | MixMonoTo8ChannelsFast (const float *RESTRICT MonoBuffer, float *RESTRICT DestinationBuffer, int32 NumFrames, const float *RESTRICT Gains) |
| |
| void | MixMonoTo8ChannelsFast (const FAlignedFloatBuffer &MonoBuffer, FAlignedFloatBuffer &DestinationBuffer, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | MixMonoTo8ChannelsFast (const float *RESTRICT MonoBuffer, float *RESTRICT DestinationBuffer, int32 NumFrames, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | Mix2ChannelsTo8ChannelsFast (const FAlignedFloatBuffer &SourceBuffer, FAlignedFloatBuffer &DestinationBuffer, const float *RESTRICT Gains) |
| |
| void | Mix2ChannelsTo8ChannelsFast (const float *RESTRICT SourceBuffer, float *RESTRICT DestinationBuffer, int32 NumFrames, const float *RESTRICT Gains) |
| |
| void | Mix2ChannelsTo8ChannelsFast (const FAlignedFloatBuffer &SourceBuffer, FAlignedFloatBuffer &DestinationBuffer, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | Mix2ChannelsTo8ChannelsFast (const float *RESTRICT SourceBuffer, float *RESTRICT DestinationBuffer, int32 NumFrames, const float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | DownmixBuffer (int32 NumSourceChannels, int32 NumDestinationChannels, const FAlignedFloatBuffer &SourceBuffer, FAlignedFloatBuffer &DestinationBuffer, const float *RESTRICT Gains) |
| |
| void | DownmixBuffer (int32 NumSourceChannels, int32 NumDestinationChannels, const float *RESTRICT SourceBuffer, float *RESTRICT DestinationBuffer, int32 NumFrames, const float *RESTRICT Gains) |
| |
| void | DownmixBuffer (int32 NumSourceChannels, int32 NumDestinationChannels, const FAlignedFloatBuffer &SourceBuffer, FAlignedFloatBuffer &DestinationBuffer, float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | DownmixBuffer (int32 NumSourceChannels, int32 NumDestinationChannels, const float *RESTRICT SourceBuffer, float *RESTRICT DestinationBuffer, int32 NumFrames, float *RESTRICT StartGains, const float *RESTRICT EndGains) |
| |
| void | DownmixAndSumIntoBuffer (int32 NumSourceChannels, int32 NumDestinationChannels, const FAlignedFloatBuffer &SourceBuffer, FAlignedFloatBuffer &BufferToSumTo, const float *RESTRICT Gains) |
| |
| void | DownmixAndSumIntoBuffer (int32 NumSourceChannels, int32 NumDestinationChannels, const float *RESTRICT SourceBuffer, float *RESTRICT BufferToSumTo, int32 NumFrames, const float *RESTRICT Gains) |
| |
| void | BufferInterleave2ChannelFast (const FAlignedFloatBuffer &InBuffer1, const FAlignedFloatBuffer &InBuffer2, FAlignedFloatBuffer &OutBuffer) |
| |
| void | BufferInterleave2ChannelFast (const float *RESTRICT InBuffer1, const float *RESTRICT InBuffer2, float *RESTRICT OutBuffer, const int32 InNum) |
| |
| void | BufferDeinterleave2ChannelFast (const FAlignedFloatBuffer &InBuffer, FAlignedFloatBuffer &OutBuffer1, FAlignedFloatBuffer &OutBuffer2) |
| |
| void | BufferDeinterleave2ChannelFast (const float *RESTRICT InBuffer, float *RESTRICT OutBuffer1, float *RESTRICT OutBuffer2, const int32 InNumFrames) |
| |
| void | BufferSum2ChannelToMonoFast (const FAlignedFloatBuffer &InSamples, FAlignedFloatBuffer &OutSamples) |
| |
| void | BufferSum2ChannelToMonoFast (const float *RESTRICT InSamples, float *RESTRICT OutSamples, const int32 InNumFrames) |
| |
| bool | Create2DChannelMap (const FChannelMapParams &InParams, TArray< float > &OutChannelMap) |
| |
| bool | CreateVorbis2DChannelMap (int32 InNumOutputChannels, EChannelMapOrder InOrder, TArray< float > &OutVorbisChannelMap) |
| |
| TUniquePtr< FContiguousSparse2DKernelTransform > | NewPseudoConstantQKernelTransform (const FPseudoConstantQKernelSettings &InSettings, const int32 InFFTSize, const float InSampleRate) |
| |
| void | EncodeMidSide (const FAlignedFloatBuffer &InLeftChannel, const FAlignedFloatBuffer &InRightChannel, FAlignedFloatBuffer &OutMidChannel, FAlignedFloatBuffer &OutSideChannel) |
| |
| void | DecodeMidSide (const FAlignedFloatBuffer &InMidChannel, const FAlignedFloatBuffer &InSideChannel, FAlignedFloatBuffer &OutLeftChannel, FAlignedFloatBuffer &OutRightChannel) |
| |
| void | ArraySum (TArrayView< const float > InValues, float &OutSum) |
| |
| void | ArraySum (TArrayView< const float > InFloatBuffer1, TArrayView< const float > InFloatBuffer2, TArrayView< float > OutputBuffer) |
| |
| void | ArrayCumulativeSum (TArrayView< const float > InView, TArray< float > &OutData) |
| |
| void | ArrayMean (TArrayView< const float > InView, float &OutMean) |
| |
| void | ArrayMeanSquared (TArrayView< const float > InView, float &OutMean) |
| |
| float | ArrayGetMagnitude (TArrayView< const float > Buffer) |
| |
| float | ArrayGetAverageValue (TArrayView< const float > Buffer) |
| |
| float | ArrayGetAverageAbsValue (TArrayView< const float > Buffer) |
| |
| void | ArrayMeanFilter (TArrayView< const float > InView, int32 WindowSize, int32 WindowOrigin, TArray< float > &OutData) |
| |
| void | ArrayMaxFilter (TArrayView< const float > InView, int32 WindowSize, int32 WindowOrigin, TArray< float > &OutData) |
| |
| void | ArrayGetEuclideanNorm (TArrayView< const float > InView, float &OutEuclideanNorm) |
| |
| void | ArrayAbs (TArrayView< const float > InBuffer, TArrayView< float > OutBuffer) |
| |
| void | ArrayAbsInPlace (TArrayView< float > InView) |
| |
| void | ArrayClampMinInPlace (TArrayView< float > InView, float InMin) |
| |
| void | ArrayClampMaxInPlace (TArrayView< float > InView, float InMax) |
| |
| void | ArrayClampInPlace (TArrayView< float > InView, float InMin, float InMax) |
| |
| void | ArrayMinMaxNormalize (TArrayView< const float > InView, TArray< float > &OutArray) |
| |
| void | ArrayMax (const TArrayView< const float > &InView1, const TArrayView< const float > &InView2, const TArrayView< float > &OutView) |
| |
| float | ArrayMaxAbsValue (const TArrayView< const float > InView) |
| |
| void | ArrayMultiply (TArrayView< const float > InFloatBufferA, TArrayView< const float > InFloatBufferB, TArrayView< float > OutBuffer) |
| |
| void | ArrayMultiplyInPlace (TArrayView< const float > InFloatBuffer, TArrayView< float > BufferToMultiply) |
| |
| void | ArrayComplexMultiplyInPlace (TArrayView< const float > InValues1, TArrayView< float > InValues2) |
| |
| void | ArrayComplexMultiplyAdd (TArrayView< const float > InValues1, TArrayView< const float > InValues2, TArrayView< float > OutArray) |
| |
| void | ArrayMultiplyByConstant (TArrayView< const float > InFloatBuffer, float InValue, TArrayView< float > OutFloatBuffer) |
| |
| void | ArrayMultiplyByConstantInPlace (TArrayView< float > InOutBuffer, float InGain) |
| |
| void | ArrayAddInPlace (TArrayView< const float > InValues, TArrayView< float > InAccumulateValues) |
| |
| void | ArrayAddConstantInplace (TArrayView< float > InOutBuffer, float InConstant) |
| |
| void | ArrayMultiplyAddInPlace (TArrayView< const float > InValues, float InMultiplier, TArrayView< float > InAccumulateValues) |
| |
| void | ArrayLerpAddInPlace (TArrayView< const float > InValues, float InStartMultiplier, float InEndMultiplier, TArrayView< float > InAccumulateValues) |
| |
| void | ArraySubtract (TArrayView< const float > InMinuend, TArrayView< const float > InSubtrahend, TArrayView< float > OutBuffer) |
| |
| void | ArraySubtractInPlace1 (TArrayView< const float > InMinuend, TArrayView< float > InOutSubtrahend) |
| |
| void | ArraySubtractInPlace2 (TArrayView< float > InOutMinuend, TArrayView< const float > InSubtrahend) |
| |
| void | ArraySubtractByConstantInPlace (TArrayView< float > InValues, float InSubtrahend) |
| |
| void | ArraySquare (TArrayView< const float > InValues, TArrayView< float > OutValues) |
| |
| void | ArraySquareInPlace (TArrayView< float > InValues) |
| |
| void | ArraySqrtInPlace (TArrayView< float > InValues) |
| |
| void | ArrayComplexConjugate (TArrayView< const float > InValues, TArrayView< float > OutValues) |
| |
| void | ArrayComplexConjugateInPlace (TArrayView< float > InValues) |
| |
| void | ArrayMagnitudeToDecibelInPlace (TArrayView< float > InValues, float InMinimumDb) |
| |
| void | ArrayPowerToDecibelInPlace (TArrayView< float > InValues, float InMinimumDb) |
| |
| void | ArrayComplexToPower (TArrayView< const float > InComplexValues, TArrayView< float > OutPowerValues) |
| |
| void | ArrayComplexToPower (TArrayView< const float > InRealSamples, TArrayView< const float > InImaginarySamples, TArrayView< float > OutPowerSamples) |
| |
| void | ArrayUnderflowClamp (TArrayView< float > InOutValues) |
| |
| void | ArrayRangeClamp (TArrayView< float > InOutBuffer, float InMinValue, float InMaxValue) |
| |
| void | ArraySetToConstantInplace (TArrayView< float > InOutBuffer, float InConstant) |
| |
| void | ArrayWeightedSum (TArrayView< const float > InBuffer1, float InGain1, TArrayView< const float > InBuffer2, float InGain2, TArrayView< float > OutBuffer) |
| |
| void | ArrayWeightedSum (TArrayView< const float > InBuffer1, float InGain1, TArrayView< const float > InBuffer2, TArrayView< float > OutBuffer) |
| |
| void | ArrayFade (TArrayView< float > InOutBuffer, const float StartValue, const float EndValue) |
| |
| void | ArrayFade (TArrayView< const float > InBuffer, const float InStartValue, const float InEndValue, TArrayView< float > OutBuffer) |
| |
| void | ArrayMixIn (TArrayView< const float > InFloatBuffer, TArrayView< float > BufferToSumTo, const float Gain) |
| |
| void | ArrayMixIn (TArrayView< const float > InFloatBuffer, TArrayView< float > BufferToSumTo) |
| |
| void | ArrayMixIn (TArrayView< const float > InFloatBuffer, TArrayView< float > BufferToSumTo, const float StartGain, const float EndGain) |
| |
| void | ArrayMixIn (TArrayView< const int16 > InPcm16Buffer, TArrayView< float > BufferToSumTo, const float Gain) |
| |
| void | ArrayFloatToPcm16 (TArrayView< const float > InView, TArrayView< int16 > OutView) |
| |
| void | ArrayPcm16ToFloat (TArrayView< const int16 > InView, TArrayView< float > OutView) |
| |
| constexpr int | CreateByteMask (uint32 A, uint32 B, uint32 C, uint32 D) |
| |
| void | ArrayFloatToPcm24 (TArrayView< const float > InView, TArrayView< int8 > OutView) |
| |
| void | ArrayFloatToPcm32 (TArrayView< const float > InView, TArrayView< int32 > OutView) |
| |
| void | ArrayFloatToPcmDouble (TArrayView< const float > InView, TArrayView< double > OutView) |
| |
| void | ArrayInterleave (const TArray< FAlignedFloatBuffer > &InBuffers, FAlignedFloatBuffer &OutBuffer) |
| |
| void | ArrayInterleave (const float *const *RESTRICT InBuffers, float *RESTRICT OutBuffer, const int32 InFrames, const int32 InChannels) |
| |
| void | ArrayDeinterleave (const FAlignedFloatBuffer &InBuffer, TArray< FAlignedFloatBuffer > &OutBuffers, const int32 InChannels) |
| |
| void | ArrayDeinterleave (const TArrayView< const float > InView, TArray< FAlignedFloatBuffer > &OutBuffers, const int32 InChannels) |
| |
| void | ArrayDeinterleave (const float *RESTRICT InBuffer, float *const *RESTRICT OutBuffers, const int32 InFrames, const int32 InChannels) |
| |
| void | ArrayInterpolate (const float *InBuffer, float *OutBuffer, const int32 NumInSamples, const int32 NumOutSamples) |
| |
| void | ArrayInt16SwapBytes (TArrayView< int16 > InView) |
| |
| void | ArrayInt24SwapBytes (TArrayView< int8 > InView) |
| |
| void | ArrayInt32SwapBytes (TArrayView< int32 > InView) |
| |
| void | ArrayFloatSwapBytes (TArrayView< float > InView) |
| |
| void | ArrayDoubleSwapBytes (TArrayView< double > InView) |
| |
| void | ArrayAPFLongDelayProcess (const float *InSamples, const float *InDelaySamples, const int32 InNum, float *OutSamples, float *OutDelaySamples, const float Gain) |
| |
| void | ArrayLerpFractionalDelay (const float *InSamples, const float *InDelays, const float *DelayData, const int *IntegerDelays, int *UpperDelayPos, int *LowerDelayPos, const int32 InNum, float *OutSamples, const float MaxDelay) |
| |
| void | ArrayScaledComplexConjugate (const float *RESTRICT InValues, const int32 Num, float *RESTRICT OutValues, const float Scale) |
| |
| float | MelToHz (float InMel) |
| |
| float | HzToMel (float InHz) |
| |
| TUniquePtr< FContiguousSparse2DKernelTransform > | NewMelSpectrumKernelTransform (const FMelSpectrumKernelSettings &InSettings, const int32 InFFTSize, const float InSampleRate) |
| |
| void | SetMultichannelBufferSize (int32 InNumChannels, int32 InNumFrames, FMultichannelBuffer &OutBuffer) |
| |
| void | SetMultichannelCircularBufferCapacity (int32 InNumChannels, int32 InNumFrames, FMultichannelCircularBuffer &OutBuffer) |
| |
| int32 | GetMultichannelBufferNumFrames (const FMultichannelBuffer &InBuffer) |
| |
| int32 | GetMultichannelBufferNumFrames (const FMultichannelCircularBuffer &InBuffer) |
| |
| int32 | GetMultichannelBufferNumFrames (const FMultichannelBufferView &InBuffer) |
| |
| FMultichannelBufferView | MakeMultichannelBufferView (FMultichannelBuffer &InBuffer) |
| |
| FMultichannelBufferView | MakeMultichannelBufferView (FMultichannelBuffer &InBuffer, int32 InStartFrameIndex, int32 InNumFrames) |
| |
| FMultichannelBufferView | SliceMultichannelBufferView (const FMultichannelBufferView &View, int32 InStartFrameIndex, int32 InNumFrames) |
| |
| void | ShiftMultichannelBufferView (int32 InNumFrames, FMultichannelBufferView &View) |
| |
| void | MultiMonoMixUpOrDown (TArrayView< const float > InSrc, const TArrayView< float > InDst, const int32 NumFrames, TArrayView< const float > MixGains, const int32 NumSrcChannels, const int32 NumDstChannels) |
| |
| void | MultiMonoMixUpOrDown (TArrayView< const float * > InSrc, TArrayView< float * > InDst, const int32 NumFrames, TArrayView< const float > MixGains) |
| |
| float | PerlinValueNoise1D (const float InX, const int32 InNumOctaves) |
| |
| void | PerlinValueNoise1DBuffer (TArrayView< const float > InXBuffer, const float InOffset, const int32 InNumOctaves, TArrayView< float > OutNoiseBuffer) |
| |
| class | UE_DEPRECATED (5.5, "Audio::FBiquad is deprecated in favor of Audio::FBiquadFilter due to performance issues") FBiquad |
| |
| ECheckBufferFlags | operator| (const ECheckBufferFlags A, const ECheckBufferFlags B) |
| |
| ECheckBufferFlags & | operator|= (ECheckBufferFlags &Out, const ECheckBufferFlags Other) |
| |
| ECheckBufferFlags | operator& (const ECheckBufferFlags A, const ECheckBufferFlags B) |
| |
| struct | UE_DEPRECATED (5.5, "This has moved to the UE::MathCore::Graph namespace") FStronglyConnectedComponent |
| |
| void | CheckSample (float InSample, float Threshold=0.001f) |
| |
| float | UnderflowClamp (const float InValue) |
| |
| float | ConvertToDecibels (const float InLinear, const float InFloor=UE_SMALL_NUMBER) |
| |
| float | ConvertToLinear (const float InDecibels) |
| |
| float | GetGainFromVelocity (const float InVelocity) |
| |
| float | FastSin (const float X) |
| |
| float | FastSin2 (const float X) |
| |
| float | FastSin3 (const float X) |
| |
| float | FastTanh (float X) |
| |
| float | FastTan (float X) |
| |
| float | GetBipolar (const float X) |
| |
| float | GetUnipolar (const float X) |
| |
| void | ConvertBipolarBufferToUnipolar (float *InAlignedBuffer, int32 NumSamples) |
| |
| float | GetFrequencyFromMidi (const float InMidiNote) |
| |
| float | GetLogFrequencyClamped (const float InValue, const FVector2D &Domain, const FVector2D &Range) |
| |
| float | GetLinearFrequencyClamped (const float InFrequencyValue, const FVector2D &Domain, const FVector2D &Range) |
| |
| float | GetMidiFromFrequency (const float InFrequency) |
| |
| float | GetPitchScaleFromMIDINote (int32 BaseMidiNote, int32 TargetMidiNote) |
| |
| float | GetFrequencyMultiplier (const float InPitchSemitones) |
| |
| float | GetSemitones (const float InMultiplier) |
| |
| void | GetStereoPan (const float InLinearPan, float &OutLeft, float &OutRight) |
| |
| void | EncodeMidSide (float &LeftChannel, float &RightChannel) |
| |
| void | DecodeMidSide (float &MidChannel, float &SideChannel) |
| |
| float | GetBandwidthFromQ (const float InQ) |
| |
| float | GetQFromBandwidth (const float InBandwidth) |
| |
| bool | QuadraticPeakInterpolation (const float InValues[3], float &OutPeakLoc, float &OutPeakValue) |
| |
| float | LagrangianInterpolation (const TArray< FVector2D > Points, const float Alpha) |
| |
| SIGNALPROCESSING_API void | AssignPcm24Value (int8 *OutPtr, const int32 InValue, const bool bIsOutputLittleEndian) |
| |
| SIGNALPROCESSING_API void | ArrayInterpolate (const float *RESTRICT InBuffer, float *RESTRICT OutBuffer, const int32 NumInSamples, const int32 NumOutSamples) |
| |
| SIGNALPROCESSING_API constexpr bool | IsHostLittleEndian () |
| |
| SIGNALPROCESSING_API void | SetMultichannelBufferSize (int32 InNumFrames, FMultichannelBuffer &OutBuffer) |
| |
| template<typename T > |
| TStackArrayOfPointers< T > | MakeMultiMonoPointersFromView (TArrayView< T > InMultiMono, const int32 InNumFrames, const int32 InNumChannels) |
| |
| FString | ToErrorFString (HRESULT InResult) |
| |
NO_LOGGING.
Plugin interface for Non Real-Time (NRT) Audio Analyzers.
Interfaces for Soundfield Encoding and Decoding
This set of interfaces can be implemented to add support for encoding to and decoding from a soundfield format. There are four classes that are required to implement a soundfield format:
ISoundfieldPacket: Container for a single audio callback's resulting data for the soundfield format. For example, for first order ambisonics, this would contain an interleaved buffer of floats. For a proprietary spatial audio format, this would contain a bitstream.
USoundfieldEncodingSettingsBase: These are game thread-local, inspectable settings to define how a soundfield is getting encoded. For example, this may contain the order of an ambisonics sound field.
ISoundfieldEncodingSettingsProxy: This should contain all data from USoundfieldEncodingSettingsBase that needs to be read by an encoder or transcoder stream to apply the settings from an implementation of USoundfieldEncodingSettingsBase.
ISoundfieldEncoderStream: Class that encodes interleaved audio from a set of arbitrary locations to an ISoundfieldPacket. ISoundfieldDecoderStream: Class that decodes audio from an ISoundfieldPacket to interleaved audio at a set of arbitrary locations. ISoundfieldTranscodeStream: Class that translates a soundfield stream from one type to another. ISoundfieldMixerStream: Class that sums together multiple incoming ISoundfieldPackets into one ISoundfieldPacket.
ISoundfieldFactory: Factory class that declares the name of your format and creates new encoder, decoders, transcoders and mixers as requested.
Common Audio namespace Type Definitions/Identifiers
Sliding Window implementation which enables ranged for loop iteration over sequential input buffers of varying length.
Concrete implementation of FAudioDevice for XAudio2
See https://msdn.microsoft.com/en-us/library/windows/desktop/hh405049%28v=vs.85%29.aspx
CHANNEL MIXING OPERATIONS: To understand these functions, it's best that you have prior experience reading SIMD code. These functions are all variations on component-wise matrix multiplies. There are two types of functions below:
Apply[N]ChannelGain: These are all in-place multiplies of an N-length gain vector and an N-length frame. There are two flavors of every variant of this function: The non-interpolating form (which takes a single gain matrix) And the interpolating form (which takes a start gain matrix and interpolates to the end gain matrix over the given number of frames). All non-interpolating forms of these functions use the following steps:
- Create a const GainVector, or series of GainVectors, that maps to the multiplies required for each iteration.
- In a loop: i. load a frame or number of frames into a vector register or series of vector registers (these are named Result). ii. perform a vector multiply on result with the corresponding gain vector. iii. store the result vector in the same position in the buffer we loaded from.
The interpolating forms of these functions use the following steps:
- Initialize a non-const GainVector, or series of GainVectors, from StartGains, that maps to the multiplies required for each iteration.
- Compute the amount we add to GainVector for each iteration to reach Destination Gains and store it in the const GainDeltasVector.
- In a loop: i. load a frame or number of frames into a vector register or series of vector registers (these are named Result). ii. perform a vector multiply on result with the corresponding gain vector. iii. store the result vector in the same position in the buffer we loaded from. iv. increment each GainVector by it's corresponding GainDeltasVector.
MixMonoTo[N]ChannelsFast and Mix2ChannelsTo[N]ChannelsFast: These, like Apply[N]ChannelGain, all have non-interpolating and interpolating forms. All non-interpolating forms of these functions use the following steps:
- Create a const GainVector, or series of GainVectors, that maps to the multiplies required for each input channel for each iteration.
- In a loop: i. load a frame or number of frames into a const vector register or series of const vector registers (these are named Input). ii. perform a vector multiply on input with the corresponding gain vector and store the result in a new vector or series of vectors named Result. iii. if there is a second input channel, store the results of the following MultiplyAdd operation to Results: (Gain Vectors for second channel) * (Input vectors for second channel) + (Result vectors from step ii).
Interpolating forms of these functions use the following steps:
- Initialize a non-const GainVector, or series of GainVectors, from StartGains, that maps to the multiplies required for each input channel for each iteration.
- Compute the amount we add to each GainVector for each iteration to reach the vector's corresponding DestinationGains and store it in a corresponding GainDeltaVector.
- In a loop: i. load a frame or number of frames into a const vector register or series of const vector registers (these are named Input). ii. perform a vector multiply on input with the corresponding gain vector and store the result in a new vector or series of vectors named Result. iii. if there is a second input channel, store the results of the following MultiplyAdd operation to Results: (Gain Vectors for second channel) * (Input vectors for second channel) + (Result vectors from step ii). iv. increment each GainVector by it's corresponding GainDeltasVector.
DETERMINING THE VECTOR LAYOUT FOR EACH FUNCTION: For every variant of Mix[N]ChannelsTo[N]ChannelsFast, we use the least common multiple of the number of output channels and the SIMD vector length (4) to calulate the length of our matrix. For example, MixMonoTo4ChannelsFast can use a single VectorRegister4Float for each variable. GainVector's values are [g0, g1, g2, g3], input channels are mapped to [i0, i0, i0, i0], and output channels are mapped to [o0, o1, o2, o3]. MixMonoTo8ChannelsFast has an LCM of 8, so we use two VectorRegister4Float for each variable. This results in the following layout: GainVector1: [g0, g1, g2, g3] GainVector2: [g4, g5, g6, g7] InputVector1: [i0, i0, i0, i0] InputVector2: [i0, i0, i0, i0] ResultVector1: [o0, o1, o2, o3] ResultVector2: [o4, o5, o6, o7]
The general naming convention for vector variables is [Name]Vector[VectorIndex] for MixMonoTo[N]ChannelsFast functions. For Mix2ChannelsTo[N]ChannelsFast functions, the naming convention for vector variables is [Name]Vector[VectorIndex][InputChannelIndex].
For clarity, the layout of vectors for each function variant is given in a block comment above that function.
CHANNEL-SPECIFIC OPERATIONS Takes a 2 channel interleaved buffer and applies Gains to it. Gains is expected to point to a 2 float long buffer. StereoBuffer must have an even number of frames. If StartGains and EndGains are provided, this function will interpolate between the two across the buffer.