Navigation
API > API/Plugins > API/Plugins/PixelCapture
Inheritance Hierarchy
- FPixelCaptureCapturer
- FPixelCaptureCapturerI420
- FPixelCaptureCapturerI420ToRHI
- FPixelCaptureCapturerNV12ToRHI
- FPixelCaptureCapturerRHI
- FPixelCaptureCapturerRHINoCopy
- FPixelCaptureCapturerRHIRDG
- FPixelCaptureCapturerRHIToI420Compute
- FPixelCaptureCapturerRHIToI420CPU
References
| Module | PixelCapture |
| Header | /Engine/Plugins/Media/PixelCapture/Source/PixelCapture/Public/PixelCaptureCapturer.h |
| Include | #include "PixelCaptureCapturer.h" |
Syntax
class FPixelCaptureCapturer
Remarks
The base class for all Capturers in the system. Incoming frames will be user types implementing IPixelCaptureInputFrame. Outgoing frames should be user types implementing IPixelCaptureOutputFrame. Each capturer system should expect one known input user type. Implement CreateOutputBuffer to create your custom IPixelCaptureOutputFrame implementation to hold the result of the capture process. Implement BeginProcess to start the capture work which ideally should be an async task of some sort. The capture work should fill the given IPixelCaptureOutputFrame and then call EndProcess to indicate the work is done. While the capture should be async it should only expect to work on one frame at a time.
Variables
| Type | Name | Description | |
|---|---|---|---|
| FOnComplete | OnComplete |
Constructors
| Type | Name | Description | |
|---|---|---|---|
Destructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | BeginProcess
(
const IPixelCaptureInputFrame& InputFrame, |
Implement this with your specific process to capture the incoming frame. | |
| void | Capture
(
const IPixelCaptureInputFrame& InputFrame |
Called when an input frame needs capturing. | |
| IPixelCaptureOutputFrame * | CreateOutputBuffer
(
int32 InputWidth, |
Implement this to create a buffer for the output. | |
| void | EndProcess () |
Call this to mark the end of processing. Will commit the current write buffer into the read buffer. | |
| FString | Gets the human readable name for this capture process. | ||
| bool | HasOutput () |
Returns true if this process has a frame in the output buffer ready to be read. | |
| void | Initialize
(
int32 InputWidth, |
Initializes the process to be ready for work. Called once at startup. | |
| bool | IsBusy () |
Returns true when this process is actively working on capturing frame data. | |
| bool | Returns true if Initialize() has been called. | ||
| void | Metadata info (optional). Marks the end of some CPU work. | ||
| void | Metadata info (optional). Marks the start of some CPU work. Multiple work sections are valid. | ||
| void | Metadata info (optional). Marks the end of some GPU work. | ||
| void | Metadata info (optional). Marks the start of some GPU work. Multiple work sections are valid. | ||
| TSharedPtr< IPixelCaptureOutputFrame > | ReadOutput () |
Gets the output frame from the output buffer. |
Typedefs
| Name | Description |
|---|---|
| FOnComplete | Listen on this to be notified when the capture process completes for each input. |