UUserDefinedCaptureProtocol

A blueprintable capture protocol that defines how to capture frames from the engine

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

MovieSceneCapture

Header

/Engine/Source/Runtime/MovieSceneCapture/Public/Protocols/UserDefinedCaptureProtocol.h

Include

#include "Protocols/UserDefinedCaptureProtocol.h"

Syntax

class UUserDefinedCaptureProtocol : public UMovieSceneImageCaptureProtocolBase

Remarks

A blueprintable capture protocol that defines how to capture frames from the engine

Variables

Name Description

Protected variable

FFrameMetrics

 

CachedFrameMetrics

Frame metrics cached for the current frame

Protected variable

const FCaptured...

 

CurrentStreamID

Transient stream ID used only during filename generation

Protected variable

TUniquePtr< FFr...

 

FinalPixelsFrameGrabber

A frame grabber responsible for capturing LDR final pixels from the viewport when requested

Protected variable

FCapturedPixels...

 

FinalPixelsID

The ID of the final pixel stream cached from StartCapturingFinalPixels

Protected variable

TAtomic< int32 ...

 

NumOutstandingOperations

A running count of the number of currently pending async operations

Protected variable

UWorld *

 

World

~ End UObject implementation World pointer assigned on Setup

Constructors

Name Description

Public function

UUserDefinedCaptureProtocol

(
    const FObjectInitializer& ObjInit
)

Functions

Name Description

Public function Virtual Const

FString

 

GenerateFilename

(
    const FFrameMetrics& InFrameMetric...
)

Generate a filename for the current frame

Public function Const

FFrameMetric...

 

GetCurrentFrameMetrics()

Access this protocol's current frame metrics

Protected function

void

 

OnBeginFinalize()

Called when this protocol is going to be shut down - should not capture any more frames

Protected function Const

bool

 

OnCanFinalize()

Called to check whether this protocol has finished any pending tasks, and can now be shut down

Protected function Virtual Const

bool

 

OnCanFinalize_Implementation()

Protected function

void

 

OnCaptureFrame()

Called when this protocol should capture the current frame

Protected function

void

 

OnFinalize()

Called to complete finalization of this protocol

Protected function

void

 

OnPauseCapture()

Called when this protocol should temporarily stop capturing frames

Protected function

void

 

OnPixelsReceived

(
    const FCapturedPixels& Pixels,
    const FCapturedPixelsID& ID,
    FFrameMetrics FrameMetrics
)

Called when pixels have been received for the specified stream name

Public function

void

 

OnPixelsReceivedImpl

(
    const FCapturedPixels& Pixels,
    const FCapturedPixelsID& StreamID,
    FFrameMetrics FrameMetrics
)

Called when image pixel data is ready to be processed

Protected function

void

 

OnPreTick()

Called before the capture process itself is ticked, before each frame is set up for capture Useful for any pre-frame set up or resetting the previous frame's state

Protected function

bool

 

OnSetup()

Called once at the start of the capture process, but before any warmup frames

Protected function Virtual

bool

 

OnSetup_Implementation()

Protected function

void

 

OnStartCapture()

Called when this protocol should start capturing frames

Protected function

void

 

OnTick()

Called after the capture process itself is ticked, after the frame is set up for capture, but before most actors have ticked

Protected function

void

 

OnWarmUp()

Called when the capture process is warming up.

Public function

void

 

ReportOutstandingWork

(
    int32 NumNewOperations
)

INTERNAL: Report that the protocol is dispatching the specified number of asynchronous tasks that need to be completed before this protocol can be finalized

Public function

void

 

ResolveBuffer

(
    UTexture* Buffer,
    const FCapturedPixelsID& BufferID
)

Resolve the specified buffer and pass it directly to the specified handler when done (does not pass to any bound streams)

Public function

void

 

StartCapturingFinalPixels

(
    const FCapturedPixelsID& StreamID
)

Instruct this protocol to start capturing LDR final pixels (including slate widgets and burn-ins)

Public function

void

 

StopCapturingFinalPixels()

Instruct this protocol to stop capturing LDR final pixels

Overridden from UMovieSceneCaptureProtocolBase

Name Description

Protected function Virtual Const

void

 

AddFormatMappingsImpl

(
    TMap< FString, FStringFormatArg >&...
)

Called when generating formatting filename to add any additional format mappings

Protected function Virtual

void

 

BeginFinalizeImpl()

Called when we have finished capturing and we should start finalizing the capture

Protected function Virtual

void

 

CaptureFrameImpl

(
    const FFrameMetrics& FrameMetrics
)

Instruct this protocol to capture a frame relating to the specified metrics

Protected function Virtual

void

 

FinalizeImpl()

Called when we have finished capturing

Protected function Virtual Const

UWorld *

 

GetWorld()

~ End UMovieSceneCaptureProtocolBase implementation ~ Begin UObject implementation

Protected function Virtual Const

bool

 

HasFinishedProcessingImpl()

Check whether this protocol has any processing left to do, or whether it should be finalized.

Protected function Virtual

void

 

PreTickImpl()

~ Begin UMovieSceneCaptureProtocolBase implementation

Protected function Virtual

bool

 

SetupImpl()

Called once at the start of the capture process (before any warmup) to set up anything required for the capture.

Protected function Virtual

bool

 

StartCaptureImpl()

Start capturing

Protected function Virtual

void

 

TickImpl()

Called on the main thread to do any additional processing

Protected function Virtual

void

 

WarmUpImpl()

Start warming up this capture protocol

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss