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

#include <MultithreadedPatching.h>

Public Member Functions

SIGNALPROCESSING_API FPatchOutputStrongPtr AddNewOutput (int32 MaxLatencyInSamples, float InGain)
 
SIGNALPROCESSING_API void AddNewOutput (const FPatchOutputStrongPtr &InPatchOutputStrongPtr)
 
SIGNALPROCESSING_API FPatchInput AddNewInput (int32 MaxLatencyInSamples, float InGain)
 
SIGNALPROCESSING_API void AddNewInput (FPatchInput &InInput)
 
SIGNALPROCESSING_API void RemovePatch (const FPatchInput &InInput)
 
SIGNALPROCESSING_API void ProcessAudio ()
 

Detailed Description

This class is used to mix multiple inputs from disparate threads to a single mixdown and deliver that mixdown to multiple outputs. This class is MPMC, but only one thread can and should call ProcessAudio().

Member Function Documentation

◆ AddNewInput() [1/2]

void Audio::FPatchMixerSplitter::AddNewInput ( FPatchInput InInput)

Adds a new a patch input from an existing patch input object.

◆ AddNewInput() [2/2]

FPatchInput Audio::FPatchMixerSplitter::AddNewInput ( int32  MaxLatencyInSamples,
float  InGain 
)

Adds a new input to the tap collector. Calling this is thread safe, but individual instances of FPatchInput are only safe to be used from one thread.

◆ AddNewOutput() [1/2]

void Audio::FPatchMixerSplitter::AddNewOutput ( const FPatchOutputStrongPtr InPatchOutputStrongPtr)

Adds a new a patch from an existing patch output.

◆ AddNewOutput() [2/2]

FPatchOutputStrongPtr Audio::FPatchMixerSplitter::AddNewOutput ( int32  MaxLatencyInSamples,
float  InGain 
)

Adds a new output. Calling this is thread safe, but individual instances of FPatchOutput are only safe to be used from one thread. the returned FPatchOutputPtr can be safely destroyed at any point.

◆ ProcessAudio()

void Audio::FPatchMixerSplitter::ProcessAudio ( )

Mixes audio from all inputs and pushes it to all outputs. Should be called regularly.

◆ RemovePatch()

void Audio::FPatchMixerSplitter::RemovePatch ( const FPatchInput InInput)

Removes a tap from the tap collector. Calling this is thread safe, though FPatchOutput will likely not be deleted until the next call of PopAudio.


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