Navigation
API > API/Plugins > API/Plugins/TmvMedia
Fluent builder for UTmvMediaTranscodeJob.
Assembles the standard pipeline stages (frame producer, frame converter, frame encoder, muxer) from a transcode list item. Each stage class can be overridden independently; omitted overrides pick sensible defaults based on the item's settings:
- Frame producer : UTmvMediaPlayerFrameProducer or UTmvMediaFileSequenceFrameProducer based on Settings.bUseMediaPlayer.
- Frame converter: UTmvMediaFrameConverter.
- Frame encoder : UTmvMediaTmvFrameEncoder. Receives the item's EncoderOptions.
- Muxer : UTmvMediaContainerTranscodeMuxer when Settings.OutputFormat == Container, UTmvMediaFileSequenceTranscodeMuxer otherwise.
A post-build hook can be registered to run additional configuration after every stage has been created and the encoder options applied (e.g. setting track info on the producer, adding editor-only extension tasks).
The builder captures the provided job item by reference; callers must keep it alive until Build() returns. Binding to a temporary is rejected at compile time (see the deleted rvalue constructor overload below). The returned job is NOT started.
Example: UTmvMediaTranscodeJob*Job=FTmvMediaTranscodeJobBuilder(Item).WithFrameProducerClass(UTmvMediaFrameProducer::StaticClass()).OnPostBuild(FOnTranscodeJobBuilt::CreateLambda(Rate{if(UTmvMediaFrameProducer*P=Job->GetStage<UTmvMediaFrameProducer>()){FTmvMediaFrameProducerTrackInfoInfo;Info.FrameRate=Rate;P->SetVideoTrackInfo(Info);}})).Build();
| Name | FTmvMediaTranscodeJobBuilder |
| Type | class |
| Header File | /Engine/Plugins/Media/TmvMedia/Source/TmvMedia/Public/Transcoder/TmvMediaTranscodeJobBuilder.h |
| Include Path | #include "Transcoder/TmvMediaTranscodeJobBuilder.h" |
Syntax
class FTmvMediaTranscodeJobBuilder
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FTmvMediaTranscodeJobBuilder
(
const FTmvMediaTranscodeListItem& InJobItem |
Construct a builder for the given job item. | Transcoder/TmvMediaTranscodeJobBuilder.h | |
| The builder stores InJobItem by reference, so a temporary would dangle immediately. | Transcoder/TmvMediaTranscodeJobBuilder.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| FrameConverterClass | TSubclassOf< UTmvMediaFrameConverter > | Caller override for the frame converter stage class. | Transcoder/TmvMediaTranscodeJobBuilder.h | |
| FrameEncoderClass | TSubclassOf< UTmvMediaFrameEncoder > | Caller override for the frame encoder stage class. When null, Build uses UTmvMediaTmvFrameEncoder. | Transcoder/TmvMediaTranscodeJobBuilder.h | |
| FrameProducerClass | TSubclassOf< UTmvMediaFrameProducer > | Caller override for the frame producer stage class. | Transcoder/TmvMediaTranscodeJobBuilder.h | |
| JobItem | const FTmvMediaTranscodeListItem & | Transcoder/TmvMediaTranscodeJobBuilder.h | ||
| MuxerClass | TSubclassOf< UTmvMediaTranscodeMuxer > | Caller override for the muxer stage class. | Transcoder/TmvMediaTranscodeJobBuilder.h | |
| Outer | TObjectPtr< UObject > | Transcoder/TmvMediaTranscodeJobBuilder.h | ||
| PostBuildDelegate | FOnTranscodeJobBuilt | Delegate fired on the assembled job just before Build returns. | Transcoder/TmvMediaTranscodeJobBuilder.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
UTmvMediaTranscodeJob * Build
(
FTmvMediaMessageContext* OutMessageContext |
Instantiate the job and return it. Does not call Start. | Transcoder/TmvMediaTranscodeJobBuilder.h | |
FTmvMediaTranscodeJobBuilder & OnPostBuild
(
FOnTranscodeJobBuilt InDelegate |
Register a hook invoked on the assembled job before Build returns. | Transcoder/TmvMediaTranscodeJobBuilder.h | |
FTmvMediaTranscodeJobBuilder & WithFrameConverterClass
(
TSubclassOf< UTmvMediaFrameConverter > InClass |
Override the frame converter class. | Transcoder/TmvMediaTranscodeJobBuilder.h | |
FTmvMediaTranscodeJobBuilder & WithFrameEncoderClass
(
TSubclassOf< UTmvMediaFrameEncoder > InClass |
Override the frame encoder class. | Transcoder/TmvMediaTranscodeJobBuilder.h | |
FTmvMediaTranscodeJobBuilder & WithFrameProducerClass
(
TSubclassOf< UTmvMediaFrameProducer > InClass |
Override the frame producer class. | Transcoder/TmvMediaTranscodeJobBuilder.h | |
FTmvMediaTranscodeJobBuilder & WithMuxerClass
(
TSubclassOf< UTmvMediaTranscodeMuxer > InClass |
Override the muxer class. | Transcoder/TmvMediaTranscodeJobBuilder.h | |
FTmvMediaTranscodeJobBuilder & WithOuter
(
UObject* InOuter |
Outer for the created job. Defaults to the transient package when not set. | Transcoder/TmvMediaTranscodeJobBuilder.h |