Class MPEG2EncoderBlock
- Assembly
- VisioForge.Core.dll
MPEG-2 video encoder block for broadcast-quality video compression with widespread compatibility. This block provides professional MPEG-2 encoding capabilities designed for broadcast television, DVD authoring, and legacy video systems. Features comprehensive profile and level support, advanced rate control algorithms, and field/frame encoding modes. Essential for broadcast delivery, DVD production, digital television, and professional video workflows requiring MPEG-2 compatibility and broadcast-standard quality. Implements the VisioForge.Core.MediaBlocks.MediaBlock. Implements the VisioForge.Core.MediaBlocks.IMediaBlockInternals. Implements the IDisposable.
public class MPEG2EncoderBlock : MediaBlock, IMediaBlock, IDisposable, IMediaBlockInternalsInheritance
Implements
Inherited Members
Extension Methods
Constructors
MPEG2EncoderBlock(MPEG2VideoEncoderSettings)
Initializes a new instance of the VisioForge.Core.MediaBlocks.VideoEncoders.MPEG2EncoderBlock class with specified MPEG-2 encoder settings.
public MPEG2EncoderBlock(MPEG2VideoEncoderSettings settings)Parameters
settingsMPEG2VideoEncoderSettings-
The MPEG-2 encoder configuration settings.
Properties
Input
Gets the input.
public override MediaBlockPad Input { get; }Property Value
Inputs
Gets the inputs.
public override MediaBlockPad[] Inputs { get; }Property Value
Output
Gets the output.
public override MediaBlockPad Output { get; }Property Value
Outputs
Gets the outputs.
public override MediaBlockPad[] Outputs { get; }Property Value
Settings
Gets or sets the MPEG-2 encoder settings. Contains comprehensive configuration parameters for MPEG-2 encoding including profile/level selection, bitrate control, GOP structure, and broadcast-specific options.
public MPEG2VideoEncoderSettings Settings { get; set; }Property Value
Type
Gets the type.
public override MediaBlockType Type { get; }Property Value
Methods
Build()
Constructs and initializes the MPEG-2 encoder and its associated GStreamer elements. This method creates the encoder with the specified settings, establishes input and output pads, and prepares the block for broadcast-quality video compression for DVD and television applications.
public override bool Build()Returns
- bool
-
trueif the encoder was successfully built and configured;falseif initialization failed.
CleanUp()
Releases all resources and performs cleanup operations for this MPEG-2 encoder block. This method disposes of the GStreamer elements and resets the build state.
public void CleanUp()Dispose(bool)
Releases unmanaged and - optionally - managed resources.
protected override void Dispose(bool disposing)Parameters
disposingbool-
trueto release both managed and unmanaged resources;falseto release only unmanaged resources.
GetCore()
Gets the core BaseElement wrapper that provides additional functionality around the GStreamer MPEG-2 encoder element.
public BaseElement GetCore()Returns
- BaseElement
-
The BaseElement wrapper instance that encapsulates the GStreamer MPEG-2 encoder.
GetElement()
Gets the underlying GStreamer element that performs the MPEG-2 video encoding.
public Element GetElement()Returns
- Element
-
The GStreamer Element instance representing the MPEG-2 encoder.
IsAvailable()
Determines whether this media block is available. Correct NuGet SDK redist should be included into your project.
public static bool IsAvailable()Returns
- bool
-
trueif this media block is available; otherwise,false.
IMediaBlockInternals.SetContext(MediaBlocksPipeline)
Associates this MPEG-2 encoder block with a pipeline and initializes its internal context. This method is called internally when the block is added to a pipeline.
void IMediaBlockInternals.SetContext(MediaBlocksPipeline pipeline)Parameters
pipelineMediaBlocksPipeline-
The MediaBlocksPipeline instance that will manage this block.