Table of Contents

Class UDPRAWMPEGTSSourceBlock

Namespace
VisioForge.Core.MediaBlocks.Sources
Assembly
VisioForge.Core.dll

Raw MPEG-TS-over-UDP source block. Receives a live UDP unicast or multicast transport stream and exposes the untouched MPEG-TS byte stream on its output pad without demuxing — suitable for feeding TSAnalyzerBlock or for passthrough remuxing/recording. The advertised packet size (188 or 192) is set via UDPRAWMPEGTSSourceSettings.PacketSize.

Implements the VisioForge.Core.MediaBlocks.Sources.SourceMediaBlock. Implements the VisioForge.Core.MediaBlocks.IMediaBlockInternals.

public class UDPRAWMPEGTSSourceBlock : SourceMediaBlock, IMediaBlock, IDisposable, IMediaBlockInternals

Inheritance

Implements

Inherited Members

Extension Methods

Constructors

UDPRAWMPEGTSSourceBlock(UDPRAWMPEGTSSourceSettings)

Initializes a new instance of the VisioForge.Core.MediaBlocks.Sources.UDPRAWMPEGTSSourceBlock class.

public UDPRAWMPEGTSSourceBlock(UDPRAWMPEGTSSourceSettings settings)

Parameters

settings UDPRAWMPEGTSSourceSettings

The source settings.

Properties

Input

Gets the input pad. Always null for source blocks.

public override MediaBlockPad Input { get; }

Property Value

MediaBlockPad

Inputs

Gets the input pads. Always empty for source blocks.

public override MediaBlockPad[] Inputs { get; }

Property Value

MediaBlockPad[]

Output

Gets the output pad carrying the raw MPEG-TS byte stream.

public override MediaBlockPad Output { get; }

Property Value

MediaBlockPad

Outputs

Gets the output pads (a single raw MPEG-TS output).

public override MediaBlockPad[] Outputs { get; }

Property Value

MediaBlockPad[]

Settings

Gets or sets the source settings.

public UDPRAWMPEGTSSourceSettings Settings { get; set; }

Property Value

UDPRAWMPEGTSSourceSettings

Type

Gets the media block type identifier.

public override MediaBlockType Type { get; }

Property Value

MediaBlockType

Methods

Build()

Builds the block within the pipeline.

public override bool Build()

Returns

bool

true on success.

CleanUp()

Cleans up resources.

public void CleanUp()

Dispose(bool)

Releases unmanaged and - optionally - managed resources.

protected override void Dispose(bool disposing)

Parameters

disposing bool

true to release managed resources.

GetCore()

Gets the core wrapper. Always null for this composite source.

public BaseElement GetCore()

Returns

BaseElement

null.

GetElement()

Gets the native udpsrc element.

public Element GetElement()

Returns

Element

The element.

IsAvailable()

Determines whether the UDP source is available (requires the GStreamer udpsrc element).

public static bool IsAvailable()

Returns

bool

true if available.

IMediaBlockInternals.SetContext(MediaBlocksPipeline)

Associates this MediaBlock with a pipeline and initializes its internal context. This method is called automatically when the block is added to a pipeline, providing access to shared resources and pipeline-wide configuration.

void IMediaBlockInternals.SetContext(MediaBlocksPipeline pipeline)

Parameters

pipeline MediaBlocksPipeline

The MediaBlocksPipeline instance that will manage this block.

See Also