UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
Audio::IConvolutionAlgorithm Class Referenceabstract

#include <ConvolutionAlgorithm.h>

+ Inheritance diagram for Audio::IConvolutionAlgorithm:

Public Member Functions

virtual ~IConvolutionAlgorithm ()
 
virtual int32 GetNumSamplesInBlock () const =0
 
virtual int32 GetNumAudioInputs () const =0
 
virtual int32 GetNumAudioOutputs () const =0
 
virtual void ProcessAudioBlock (const float *const InSamples[], float *const OutSamples[])=0
 
virtual void ResetAudioHistory ()=0
 
virtual int32 GetMaxNumImpulseResponseSamples () const =0
 
virtual int32 GetNumImpulseResponses () const =0
 
virtual int32 GetNumImpulseResponseSamples (int32 InImpulseResponseIndex) const =0
 
virtual void SetImpulseResponse (int32 InImpulseResponseIndex, const float *InSamples, int32 NumSamples)=0
 
virtual void SetMatrixGain (int32 InAudioInputIndex, int32 InImpulseResponseIndex, int32 InAudioOutputIndex, float InGain)=0
 
virtual float GetMatrixGain (int32 InAudioInputIndex, int32 InImpulseResponseIndex, int32 InAudioOutputIndex) const =0
 

Detailed Description

IConvolutionAlgorithm

Interface for Convolution algorithm.

Constructor & Destructor Documentation

◆ ~IConvolutionAlgorithm()

virtual Audio::IConvolutionAlgorithm::~IConvolutionAlgorithm ( )
inlinevirtual

virtual destructor for inheritance.

Member Function Documentation

◆ GetMatrixGain()

virtual float Audio::IConvolutionAlgorithm::GetMatrixGain ( int32  InAudioInputIndex,
int32  InImpulseResponseIndex,
int32  InAudioOutputIndex 
) const
pure virtual

Gets the gain between an audio input, impulse response and audio output.

([audio input] * [impulse response]) x gain = [audio output]

Implemented in Audio::FUniformPartitionConvolution.

◆ GetMaxNumImpulseResponseSamples()

virtual int32 Audio::IConvolutionAlgorithm::GetMaxNumImpulseResponseSamples ( ) const
pure virtual

Maximum supported length of impulse response.

Implemented in Audio::FUniformPartitionConvolution.

◆ GetNumAudioInputs()

virtual int32 Audio::IConvolutionAlgorithm::GetNumAudioInputs ( ) const
pure virtual

Returns number of audio inputs.

Implemented in Audio::FUniformPartitionConvolution.

◆ GetNumAudioOutputs()

virtual int32 Audio::IConvolutionAlgorithm::GetNumAudioOutputs ( ) const
pure virtual

Returns number of audio outputs.

Implemented in Audio::FUniformPartitionConvolution.

◆ GetNumImpulseResponses()

virtual int32 Audio::IConvolutionAlgorithm::GetNumImpulseResponses ( ) const
pure virtual

Return the number of impulse responses.

Implemented in Audio::FUniformPartitionConvolution.

◆ GetNumImpulseResponseSamples()

virtual int32 Audio::IConvolutionAlgorithm::GetNumImpulseResponseSamples ( int32  InImpulseResponseIndex) const
pure virtual

Return the number of samples in an impulse response.

Implemented in Audio::FUniformPartitionConvolution.

◆ GetNumSamplesInBlock()

virtual int32 Audio::IConvolutionAlgorithm::GetNumSamplesInBlock ( ) const
pure virtual

Returns the number of samples in an audio block.

Implemented in Audio::FUniformPartitionConvolution.

◆ ProcessAudioBlock()

virtual void Audio::IConvolutionAlgorithm::ProcessAudioBlock ( const float *const  InSamples[],
float *const  OutSamples[] 
)
pure virtual

Process one block of audio.

InSamples is processed by the impulse responses. The output is placed in OutSamples.

@params InSamples - A 2D array of input deinterleaved audio samples. InSamples[GetNumAudioInputs()][GetNumSamplesInBlock()] @params OutSamples - A 2D array of output deinterleaved audio samples. OutSamples[GetNumAudioOutputs()][GetNumSamplesInBlock()]

Implemented in Audio::FUniformPartitionConvolution.

◆ ResetAudioHistory()

virtual void Audio::IConvolutionAlgorithm::ResetAudioHistory ( )
pure virtual

Reset internal history buffers.

Implemented in Audio::FUniformPartitionConvolution.

◆ SetImpulseResponse()

virtual void Audio::IConvolutionAlgorithm::SetImpulseResponse ( int32  InImpulseResponseIndex,
const float InSamples,
int32  NumSamples 
)
pure virtual

Set impulse response values.

Implemented in Audio::FUniformPartitionConvolution.

◆ SetMatrixGain()

virtual void Audio::IConvolutionAlgorithm::SetMatrixGain ( int32  InAudioInputIndex,
int32  InImpulseResponseIndex,
int32  InAudioOutputIndex,
float  InGain 
)
pure virtual

Sets the gain between an audio input, impulse response and audio output.

([audio input] * [impulse response]) x gain = [audio output]

Implemented in Audio::FUniformPartitionConvolution.


The documentation for this class was generated from the following file: