UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
AudioMixerPlatformXAudio2.cpp File Reference
#include "AudioMixerPlatformXAudio2.h"
#include "AudioMixer.h"
#include "AudioDevice.h"
#include "HAL/PlatformAffinity.h"
#include "HAL/PlatformTime.h"
#include "HAL/PlatformProcess.h"
#include "Engine/EngineTypes.h"
#include "CoreGlobals.h"
#include "Misc/ConfigCacheIni.h"
#include "Misc/MessageDialog.h"
#include "Misc/ScopeLock.h"
#include "HAL/Event.h"
#include "CoreMinimal.h"
#include "Logging/LogMacros.h"
#include "ToStringHelpers.h"
#include "ScopedCom.h"
#include <initguid.h>
#include <mmdeviceapi.h>
#include <AudioClient.h>
#include "Misc/CoreDelegates.h"
#include "ProfilingDebugging/ScopedTimers.h"
#include "Async/Async.h"

Namespaces

namespace  Audio
 NO_LOGGING.
 

Macros

#define XAUDIO2_LOG_AND_HANDLE_ON_FAIL(FunctionName, Result, OnError)
 
#define XAUDIO2_CALL_AND_HANDLE_ERROR(CALL, OnError)
 
#define XAUDIO2_DEBUG_ENABLED   0
 

Macro Definition Documentation

◆ XAUDIO2_CALL_AND_HANDLE_ERROR

#define XAUDIO2_CALL_AND_HANDLE_ERROR (   CALL,
  OnError 
)
Value:
{\
const HRESULT Result = CALL;\
}
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127

◆ XAUDIO2_DEBUG_ENABLED

#define XAUDIO2_DEBUG_ENABLED   0

◆ XAUDIO2_LOG_AND_HANDLE_ON_FAIL

#define XAUDIO2_LOG_AND_HANDLE_ON_FAIL (   FunctionName,
  Result,
  OnError 
)
Value:
if (FAILED(Result))\
{\
UE_LOG(LogAudioMixer, Error, TEXT("XAudio2 Error: %s -> 0x%X: '%s', called in '%hs' (%s:%d)"),\
TEXT(FunctionName), (uint32)Result, *Audio::ToErrorFString(Result), __func__, __FILEW__, __LINE__);\
OnError;\
}
#define TEXT(x)
Definition Platform.h:1272
uint32_t uint32
Definition binka_ue_file_header.h:6
FString ToErrorFString(HRESULT InResult)
Definition ToStringHelpers.cpp:8

Concrete implementation of FAudioDevice for XAudio2

See https://msdn.microsoft.com/en-us/library/windows/desktop/hh405049%28v=vs.85%29.aspx