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

#include <RadAudioInfo.h>

+ Inheritance diagram for FRadAudioInfo:

Public Member Functions

RADAUDIODECODER_API FRadAudioInfo ()
 
virtual RADAUDIODECODER_API ~FRadAudioInfo ()
 
virtual bool ParseHeader (const uint8 *InSrcBufferData, uint32 InSrcBufferDataSize, FSoundQualityInfo *QualityInfo) override
 
virtual int32 GetFrameSize () override
 
virtual uint32 GetMaxFrameSizeSamples () const override
 
virtual bool CreateDecoder () override
 
virtual void SeekToTime (const float SeekToTimeSeconds) override
 
virtual void SeekToFrame (const uint32 SeekTimeFrames) override
 
virtual void PrepareToLoop () override
 
virtual FDecodeResult Decode (const uint8 *CompressedData, const int32 CompressedDataSize, uint8 *OutPCMData, const int32 OutputPCMDataSize) override
 
virtual bool HasError () const override
 
- Public Member Functions inherited from IStreamedCompressedInfo
ENGINE_API IStreamedCompressedInfo ()
 
virtual ENGINE_API ~IStreamedCompressedInfo ()
 
virtual ENGINE_API bool ReadCompressedInfo (const uint8 *InSrcBufferData, uint32 InSrcBufferDataSize, FSoundQualityInfo *QualityInfo) override
 
virtual ENGINE_API bool ReadCompressedData (uint8 *Destination, bool bLooping, uint32 BufferSize) override
 
virtual ENGINE_API void ExpandFile (uint8 *DstBuffer, struct FSoundQualityInfo *QualityInfo) override
 
virtual void EnableHalfRate (bool HalfRate) override
 
virtual uint32 GetSourceBufferSize () const override
 
virtual bool UsesVorbisChannelOrdering () const override
 
virtual int GetStreamBufferSize () const override
 
virtual bool SupportsStreaming () const override
 
virtual ENGINE_API bool StreamCompressedInfoInternal (const FSoundWaveProxyPtr &InWaveProxy, FSoundQualityInfo *QualityInfo) override
 
virtual ENGINE_API bool StreamCompressedData (uint8 *Destination, bool bLooping, uint32 BufferSize, int32 &OutNumBytesStreamed) override
 
virtual int32 GetCurrentChunkIndex () const override
 
virtual int32 GetCurrentChunkOffset () const override
 
virtual bool IsStreamedCompressedInfo () const override
 
int32 GetStreamSeekBlockIndex () const
 
int32 GetStreamSeekBlockOffset () const
 
- Public Member Functions inherited from ICompressedAudioInfo
ENGINE_API ICompressedAudioInfo ()
 
virtual ENGINE_API ~ICompressedAudioInfo ()
 
virtual bool ReleaseStreamChunk (bool bBlockUntilReleased)
 
ENGINE_API bool StreamCompressedInfo (USoundWave *Wave, struct FSoundQualityInfo *QualityInfo)
 
ENGINE_API bool StreamCompressedInfo (const FSoundWaveProxyPtr &Wave, struct FSoundQualityInfo *QualityInfo)
 
virtual const FSoundWaveProxyPtrGetStreamingSoundWave () const
 

Protected Types

using Super = IStreamedCompressedInfo
 

Protected Attributes

TArray< uint8OutputReservoir
 
struct RadAudioDecoderDecoder = 0
 
TArray< uint8RawMemory
 
bool bErrorStateLatch = false
 
- Protected Attributes inherited from IStreamedCompressedInfo
bool bIsStreaming
 
const uint8SrcBufferData
 
uint32 SrcBufferDataSize
 
uint32 SrcBufferOffset
 
uint32 AudioDataOffset
 
uint32 AudioDataChunkIndex
 
uint32 TrueSampleCount
 
uint32 CurrentSampleCount
 
uint8 NumChannels
 
uint32 MaxFrameSizeSamples
 
uint32 SampleStride
 
TArray< uint8LastDecodedPCM
 
uint32 LastPCMByteSize
 
uint32 LastPCMOffset
 
bool bStoringEndOfFile
 
int32 CurrentChunkIndex
 
uint32 SrcBufferPadding
 
FAudioChunkHandle CurCompressedChunkHandle
 
FAudioChunkHandle NextPlayingChunkHandle
 
TPimplPtr< FStreamedAudioChunkSeekTableCurrentChunkSeekTable
 
std::atomic< int32StreamSeekBlockIndex
 
int32 StreamSeekBlockOffset
 
uint32 StreamSeekToAudioFrames = INDEX_NONE
 
- Protected Attributes inherited from ICompressedAudioInfo
bool bHasError = false
 
bool bWantsFilteredLogging = false
 
FSoundWaveProxyPtr StreamingSoundWave
 

Additional Inherited Members

- Protected Member Functions inherited from IStreamedCompressedInfo
ENGINE_API uint32 Read (void *Outbuffer, uint32 DataSize)
 
int32 DecompressToPCMBuffer (uint16 FrameSize)
 
uint32 IncrementCurrentSampleCount (uint32 NewSamples)
 
uint32 WriteFromDecodedPCM (uint8 *Destination, uint32 BufferSize)
 
uint32 ZeroBuffer (uint8 *Destination, uint32 BufferSize)
 
ENGINE_API const uint8GetLoadedChunk (const FSoundWaveProxyPtr &InSoundWave, uint32 ChunkIndex, uint32 &OutChunkSize)
 
void RetainNextChunkInSequence (const FSoundWaveProxyPtr &InSoundWave, const uint32 InChunkIndex)
 
const FStreamedAudioChunkSeekTableGetCurrentSeekTable () const
 
FStreamedAudioChunkSeekTableGetCurrentSeekTable ()
 
- Protected Member Functions inherited from ICompressedAudioInfo
bool WantsFilteredLogging () const
 

Detailed Description

Decoder thunk to the RAD Audio libraries. Also manages file parsing for the cooked data.

Member Typedef Documentation

◆ Super

Constructor & Destructor Documentation

◆ FRadAudioInfo()

FRadAudioInfo::FRadAudioInfo ( )

◆ ~FRadAudioInfo()

FRadAudioInfo::~FRadAudioInfo ( )
virtual

Member Function Documentation

◆ CreateDecoder()

bool FRadAudioInfo::CreateDecoder ( )
overridevirtual

Create the compression format dependent decoder object.

Implements IStreamedCompressedInfo.

◆ Decode()

FDecodeResult FRadAudioInfo::Decode ( const uint8 CompressedData,
const int32  CompressedDataSize,
uint8 OutPCMData,
const int32  OutputPCMDataSize 
)
overridevirtual

Decode the input compressed frame data into output PCMData buffer.

Implements IStreamedCompressedInfo.

◆ GetFrameSize()

int32 FRadAudioInfo::GetFrameSize ( )
overridevirtual

Return the size of the current compression frame

Implements IStreamedCompressedInfo.

◆ GetMaxFrameSizeSamples()

uint32 FRadAudioInfo::GetMaxFrameSizeSamples ( ) const
overridevirtual

The size of the decode PCM buffer size.

Implements IStreamedCompressedInfo.

◆ HasError()

bool FRadAudioInfo::HasError ( ) const
overridevirtual

Returns true if a non-recoverable error has occurred.

Reimplemented from ICompressedAudioInfo.

◆ ParseHeader()

bool FRadAudioInfo::ParseHeader ( const uint8 InSrcBufferData,
uint32  InSrcBufferDataSize,
FSoundQualityInfo QualityInfo 
)
overridevirtual

Parse the header information from the input source buffer data. This is dependent on compression format.

Implements IStreamedCompressedInfo.

◆ PrepareToLoop()

void FRadAudioInfo::PrepareToLoop ( )
overridevirtual

Optional method to allow decoder to prepare to loop.

Reimplemented from IStreamedCompressedInfo.

◆ SeekToFrame()

void FRadAudioInfo::SeekToFrame ( const uint32  Frame)
overridevirtual

Seeks to specific frame in the audio (Some formats might not be seekable)

Reimplemented from IStreamedCompressedInfo.

◆ SeekToTime()

void FRadAudioInfo::SeekToTime ( const float  SeekTime)
overridevirtual

Seeks to time (Some formats might not be seekable)

Reimplemented from IStreamedCompressedInfo.

Member Data Documentation

◆ bErrorStateLatch

bool FRadAudioInfo::bErrorStateLatch = false
protected

◆ Decoder

struct RadAudioDecoder* FRadAudioInfo::Decoder = 0
protected

◆ OutputReservoir

TArray<uint8> FRadAudioInfo::OutputReservoir
protected

◆ RawMemory

TArray<uint8> FRadAudioInfo::RawMemory
protected

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