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

#include <PcmAudioInfoHybrid.h>

+ Inheritance diagram for FPcmAudioInfoHybrid:

Classes

class  FHybridImpl
 

Public Member Functions

 FPcmAudioInfoHybrid ()=default
 
virtual ~FPcmAudioInfoHybrid () override=default
 
bool IsStreaming () const
 
void SeekToAbs (const uint64 InAbsPosition, const uint64 InSeekFrame)
 
void SetErrorFlag () const
 
uint32 GetAudioDataOffset () const
 
uint32 GetSrcBufferOffset () const
 
uint32 GetSrcBufferDataSize () const
 
- 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 ENGINE_API bool HasError () const
 
virtual const FSoundWaveProxyPtrGetStreamingSoundWave () const
 

Protected Member Functions

virtual bool ParseHeader (const uint8 *InSrcBufferData, uint32 InSrcBufferDataSize, FSoundQualityInfo *QualityInfo) override
 
virtual bool CreateDecoder () override
 
virtual void PrepareToLoop () override
 
virtual int32 GetFrameSize () override
 
virtual uint32 GetMaxFrameSizeSamples () const override
 
virtual void SeekToFrame (const uint32 InSeekFrame) override
 
virtual void SeekToTime (const float InSeekTime) override
 
virtual FDecodeResult Decode (const uint8 *CompressedData, const int32 CompressedDataSize, uint8 *OutPCMData, const int32 OutputPCMDataSize) override
 
- 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
 

Friends

class FHybridImpl
 

Additional Inherited Members

- 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
 

Constructor & Destructor Documentation

◆ FPcmAudioInfoHybrid()

FPcmAudioInfoHybrid::FPcmAudioInfoHybrid ( )
default

◆ ~FPcmAudioInfoHybrid()

virtual FPcmAudioInfoHybrid::~FPcmAudioInfoHybrid ( )
overridevirtualdefault

Member Function Documentation

◆ CreateDecoder()

virtual bool FPcmAudioInfoHybrid::CreateDecoder ( )
inlineoverrideprotectedvirtual

Create the compression format dependent decoder object.

Implements IStreamedCompressedInfo.

◆ Decode()

virtual FDecodeResult FPcmAudioInfoHybrid::Decode ( const uint8 CompressedData,
const int32  CompressedDataSize,
uint8 OutPCMData,
const int32  OutputPCMDataSize 
)
inlineoverrideprotectedvirtual

Decode the input compressed frame data into output PCMData buffer.

Implements IStreamedCompressedInfo.

◆ GetAudioDataOffset()

uint32 FPcmAudioInfoHybrid::GetAudioDataOffset ( ) const
inline

◆ GetFrameSize()

virtual int32 FPcmAudioInfoHybrid::GetFrameSize ( )
inlineoverrideprotectedvirtual

Return the size of the current compression frame

Implements IStreamedCompressedInfo.

◆ GetMaxFrameSizeSamples()

virtual uint32 FPcmAudioInfoHybrid::GetMaxFrameSizeSamples ( ) const
inlineoverrideprotectedvirtual

The size of the decode PCM buffer size.

Implements IStreamedCompressedInfo.

◆ GetSrcBufferDataSize()

uint32 FPcmAudioInfoHybrid::GetSrcBufferDataSize ( ) const
inline

◆ GetSrcBufferOffset()

uint32 FPcmAudioInfoHybrid::GetSrcBufferOffset ( ) const
inline

◆ IsStreaming()

bool FPcmAudioInfoHybrid::IsStreaming ( ) const
inline

◆ ParseHeader()

bool FPcmAudioInfoHybrid::ParseHeader ( const uint8 InSrcBufferData,
uint32  InSrcBufferDataSize,
FSoundQualityInfo QualityInfo 
)
overrideprotectedvirtual

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

Implements IStreamedCompressedInfo.

◆ PrepareToLoop()

virtual void FPcmAudioInfoHybrid::PrepareToLoop ( )
inlineoverrideprotectedvirtual

Optional method to allow decoder to prepare to loop.

Reimplemented from IStreamedCompressedInfo.

◆ SeekToAbs()

void FPcmAudioInfoHybrid::SeekToAbs ( const uint64  InAbsPosition,
const uint64  InSeekFrame 
)

◆ SeekToFrame()

virtual void FPcmAudioInfoHybrid::SeekToFrame ( const uint32  Frame)
inlineoverrideprotectedvirtual

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

Reimplemented from IStreamedCompressedInfo.

◆ SeekToTime()

virtual void FPcmAudioInfoHybrid::SeekToTime ( const float  SeekTime)
inlineoverrideprotectedvirtual

Seeks to time (Some formats might not be seekable)

Reimplemented from IStreamedCompressedInfo.

◆ SetErrorFlag()

void FPcmAudioInfoHybrid::SetErrorFlag ( ) const
inline

Friends And Related Symbol Documentation

◆ FHybridImpl

friend class FHybridImpl
friend

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