Files
henrik karlsson 562dc45ab9 [Engine]
* Moved dllexport from type to methods/staticvar in all Engine runtime code. This improves compile times, memory and performance in dll builds

[CL 26082288 by henrik karlsson in 5.3 branch]
2023-06-17 18:14:12 -04:00

39 lines
818 B
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "HAL/Platform.h"
#include "Misc/Timespan.h"
#include "Templates/SharedPointer.h"
namespace AVEncoder
{
class FCodecPacket
{
public:
virtual ~FCodecPacket() = default;
static AVENCODER_API FCodecPacket Create(const uint8* InData, uint32 InDataSize);
/**
* Encoding/Decoding latency
*/
struct FTimings
{
FTimespan StartTs;
FTimespan FinishTs;
};
TSharedPtr<uint8> Data; // pointer to encoded data
uint32 DataSize = 0; // number of bytes of encoded data
bool IsKeyFrame = false; // whether or not packet represents a key frame
uint32 VideoQP = 0;
uint32 Framerate;
FTimings Timings;
private:
FCodecPacket() = default;
};
} /* namespace AVEncoder */