![]() |
UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
|
#include <SoundFieldRendering.h>
Public Member Functions | |
| SOUNDFIELDRENDERING_API | FSoundFieldDecoder () |
| SOUNDFIELDRENDERING_API void | DecodeAudioDirectlyToDeviceOutputPositions (const FAmbisonicsSoundfieldBuffer &InputData, const FSoundfieldSpeakerPositionalData &OutputPositions, Audio::FAlignedFloatBuffer &OutputData) |
| SOUNDFIELDRENDERING_API void | DecodeAudioToSevenOneAndDownmixToDevice (const FAmbisonicsSoundfieldBuffer &InputData, const FSoundfieldSpeakerPositionalData &OutputPositions, Audio::FAlignedFloatBuffer &OutputData) |
Static Public Member Functions | |
| static SOUNDFIELDRENDERING_API void | RotateFirstOrderAmbisonicsBed (const FAmbisonicsSoundfieldBuffer &InputData, FAmbisonicsSoundfieldBuffer &OutputData, const FQuat &DestinationRotation, const FQuat &PreviousRotation) |
| static SOUNDFIELDRENDERING_API void | FoaRotationInPlace (Audio::FAlignedFloatBuffer &InOutFrames, const float XRotDegrees, const float YRotDegrees, const float ZRotDegrees) |
Friends | |
| class | FSoundFieldEncoder |
| FSoundFieldDecoder::FSoundFieldDecoder | ( | ) |
| void FSoundFieldDecoder::DecodeAudioDirectlyToDeviceOutputPositions | ( | const FAmbisonicsSoundfieldBuffer & | InputData, |
| const FSoundfieldSpeakerPositionalData & | OutputPositions, | ||
| Audio::FAlignedFloatBuffer & | OutputData | ||
| ) |
| void FSoundFieldDecoder::DecodeAudioToSevenOneAndDownmixToDevice | ( | const FAmbisonicsSoundfieldBuffer & | InputData, |
| const FSoundfieldSpeakerPositionalData & | OutputPositions, | ||
| Audio::FAlignedFloatBuffer & | OutputData | ||
| ) |
In the future, this can be used to decode arbitrary orders of ambisonics:
if (NumAmbiChannels == 4)
{
FirstOrderToSevenOneLoop(NumFrames, NumOutputChannels, AmbiInputBufferPtr, NumAmbiChannels, SpeakerGainsPtr, OutputBufferPtr);
}
else if (NumAmbiChannels % 4 == 0)
{
All odd-ordered ambisonics has a channel count divisible by 4, and thus can be fully vectorized. OddOrderToSevenOneLoop(NumFrames, NumOutputChannels, AmbiInputBufferPtr, NumAmbiChannels, SpeakerGainsPtr, OutputBufferPtr); } else { EvenOrderToSevenOneLoop(NumFrames, NumOutputChannels, AmbiInputBufferPtr, NumAmbiChannels, SpeakerGainsPtr, OutputBufferPtr); }
|
static |
|
static |
|
friend |