Navigation
API > API/Plugins > API/Plugins/Synthesis
FConvolutionReverb applies an impulse response to audio.
The audio pipeline within an FConvolutionReverb is described in ascii art here.
+-----------+
| Input Audio |
+-----------+
|v +------------+
| Deinterleave |
+------------+
|v +----------------------------+
| Mix Input Audio to IR Format |
+----------------------------+
|v +-----------------+
| Convolve with IRs |
+-----------------+
|v +------------------------------+ |Mix Reverb Audio to Output Format| +------------------------------+ | v +-------+ |Interleave| +-------+ | v +---------+ |Output Audio| +---------+
| Name | FConvolutionReverb |
| Type | class |
| Header File | /Engine/Plugins/Runtime/Synthesis/Source/Synthesis/Public/ConvolutionReverb.h |
| Include Path | #include "ConvolutionReverb.h" |
Syntax
class FConvolutionReverb
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FConvolutionReverb
(
TUniquePtr< IConvolutionAlgorithm > InAlgorithm, |
ConvolutionReverb.h | ||
FConvolutionReverb
(
const FConvolutionReverb&& |
ConvolutionReverb.h | ||
FConvolutionReverb
(
const FConvolutionReverb& |
ConvolutionReverb.h | ||
| ConvolutionReverb.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
~FConvolutionReverb() |
ConvolutionReverb.h |
Classes
| Name | Remarks |
|---|---|
| FChannelFormatConverterWrapper |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FInputFormat | IChannelFormatConverter::FInputFormat | ConvolutionReverb.h | |
| FOutputFormat | IChannelFormatConverter::FOutputFormat | ConvolutionReverb.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bIsConvertingInputChannelFormat | bool | ConvolutionReverb.h | ||
| bIsConvertingOutputChannelFormat | bool | ConvolutionReverb.h | ||
| ConvolutionAlgorithm | TUniquePtr< IConvolutionAlgorithm > | ConvolutionReverb.h | ||
| ExpectedNumFramesPerCallback | int32 | ConvolutionReverb.h | ||
| InputBlockBuffer | TUniquePtr< FAlignedBlockBuffer > | ConvolutionReverb.h | ||
| InputBufferPtrs | TArray< float * > | ConvolutionReverb.h | ||
| InputChannelConverterBuffers | TArray< FAlignedFloatBuffer > | ConvolutionReverb.h | ||
| InputChannelFormatConverter | TUniquePtr< IChannelFormatConverter > | ConvolutionReverb.h | ||
| InputDeinterleaveBuffers | TArray< FAlignedFloatBuffer > | Data is passed to the convolution algorithm as 2D arrays | ConvolutionReverb.h | |
| InterleavedOutputBlock | FAlignedFloatBuffer | ConvolutionReverb.h | ||
| NumInputSamplesPerBlock | int32 | ConvolutionReverb.h | ||
| NumOutputSamplesPerBlock | int32 | ConvolutionReverb.h | ||
| OutputBlockBuffer | TUniquePtr< FAlignedBlockBuffer > | ConvolutionReverb.h | ||
| OutputBufferPtrs | TArray< float * > | ConvolutionReverb.h | ||
| OutputChannelConverterBuffers | TArray< FAlignedFloatBuffer > | ConvolutionReverb.h | ||
| OutputChannelFormatConverter | FChannelFormatConverterWrapper | ConvolutionReverb.h | ||
| OutputDeinterleaveBuffers | TArray< FAlignedFloatBuffer > | Data is recieved from the convolution algorithm as 2D arrays | ConvolutionReverb.h | |
| OutputGain | float | ConvolutionReverb.h | ||
| Settings | FConvolutionReverbSettings | ConvolutionReverb.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
int32 GetNumInputChannels() |
ConvolutionReverb.h | ||
int32 GetNumOutputChannels() |
ConvolutionReverb.h | ||
const FConvolutionReverbSettings & GetSettings() |
ConvolutionReverb.h | ||
void ProcessAudio
(
int32 InNumInputChannels, |
ConvolutionReverb.h | ||
void ProcessAudio
(
int32 InNumInputChannels, |
If the number of input frames changes between callbacks, the output may contain discontinuities. | ConvolutionReverb.h | |
void SetSettings
(
const FConvolutionReverbSettings& InSettings |
ConvolutionReverb.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static TUniquePtr< FConvolutionReverb > CreateConvolutionReverb
(
const FConvolutionReverbInitData& InInitData, |
Create a convolution reverb object. | ConvolutionReverb.h | |
static void DeinterleaveBuffer
(
TArray< FAlignedFloatBuffer >& OutputBuffers, |
ConvolutionReverb.h | ||
static void InterleaveBuffer
(
FAlignedFloatBuffer& OutBuffer, |
ConvolutionReverb.h |
Operators
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FConvolutionReverb & operator=
(
const FConvolutionReverb& |
ConvolutionReverb.h |