Files
UnrealEngineUWP/Engine/Source/Runtime/AudioCodecEngine/Private/DecoderInputBackCompat.h
maxwell hayes fdbecb4db6 Follow-up refactor to address fallout from FSoundWaveProxy
#jira UE-108764, UE-109386, UE-108969, UEAU-691
#rb Phill.Popp

#ROBOMERGE-SOURCE: CL 15538813 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668)

[CL 15538828 by maxwell hayes in ue5-main branch]
2021-02-26 02:30:51 -04:00

44 lines
1000 B
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "IAudioCodec.h"
#include "UObject/NameTypes.h"
#include "AudioDecompress.h"
class ICompressedAudioInfo; // Forward declares.
namespace Audio
{
struct FBackCompatInput : public IDecoderInput
{
FName OldFormatName;
FSoundWaveProxyPtr Wave;
mutable FFormatDescriptorSection Desc;
mutable TUniquePtr<ICompressedAudioInfo> OldInfoObject;
FBackCompatInput(
FName InOldFormatName,
const FSoundWaveProxyPtr& InWave)
: OldFormatName(InOldFormatName)
, Wave(InWave)
{
}
bool HasError() const override;
bool IsEndOfStream() const override;
ICompressedAudioInfo* GetInfo(
FFormatDescriptorSection* OutDescriptor = nullptr) const;
bool FindSection(FEncodedSectionBase& OutSection) override;
int64 Tell() const override;
TArrayView<const uint8> PeekNextPacket(
int32 InMaxPacketLength) const override;
TArrayView<const uint8> PopNextPacket(
int32 InPacketSize) override;
};
}