Table of Contents

Class PreEventSeparateOutputBlock

Namespace
VisioForge.Core.MediaBlocks.Sinks
Assembly
VisioForge.Core.dll

Separate output block that routes encoded video/audio from bridge sources through encoders into a VisioForge.Core.MediaBlocks.Sinks.PreEventRecordingBlock instead of a muxer+filesink.

public class PreEventSeparateOutputBlock : MediaBlock, IMediaBlock, IDisposable, IMediaBlockInternals

Inheritance

Implements

Inherited Members

Extension Methods

Constructors

PreEventSeparateOutputBlock(MediaBlocksPipeline, SeparateOutput, BridgeVideoSourceSettings, BridgeAudioSourceSettings, PreEventRecordingBlock)

Initializes a new instance of the VisioForge.Core.MediaBlocks.Sinks.PreEventSeparateOutputBlock class. Wires bridge sources through optional processors and encoders into the pre-event recording block.

public PreEventSeparateOutputBlock(MediaBlocksPipeline pipeline, SeparateOutput settings, BridgeVideoSourceSettings bridgeVideoSourceSettings, BridgeAudioSourceSettings bridgeAudioSourceSettings, PreEventRecordingBlock preEventBlock)

Parameters

pipeline MediaBlocksPipeline

The parent MediaBlocks pipeline.

settings SeparateOutput

The separate output configuration with encoders and processors.

bridgeVideoSourceSettings BridgeVideoSourceSettings

Bridge video source settings.

bridgeAudioSourceSettings BridgeAudioSourceSettings

Bridge audio source settings.

preEventBlock PreEventRecordingBlock

The pre-event recording block to route encoded output into.

Properties

Input

Gets the primary input pad (none for separate output blocks that use bridge sources).

public override MediaBlockPad Input { get; }

Property Value

MediaBlockPad

Inputs

Gets all input pads (none for separate output blocks).

public override MediaBlockPad[] Inputs { get; }

Property Value

MediaBlockPad[]

Output

Gets the primary output pad (none - this is a sink).

public override MediaBlockPad Output { get; }

Property Value

MediaBlockPad

Outputs

Gets all output pads (none - this is a sink).

public override MediaBlockPad[] Outputs { get; }

Property Value

MediaBlockPad[]

Type

Gets the media block type identifier.

public override MediaBlockType Type { get; }

Property Value

MediaBlockType

Methods

Build()

Builds and initializes the block within the pipeline context.

public override bool Build()

Returns

bool

true if built successfully; otherwise, false.

CleanUp()

Cleans up bridge sources.

public void CleanUp()

Dispose(bool)

Releases resources.

protected override void Dispose(bool disposing)

Parameters

disposing bool

GetCore()

Gets the core element.

public BaseElement GetCore()

Returns

BaseElement

GetElement()

Gets the GStreamer element.

public Element GetElement()

Returns

Element

GetFilenameOrURL()

Gets the current output filename.

public string GetFilenameOrURL()

Returns

string

SetFilenameOrURL(string)

Updates the output filename (not used for pre-event recording; filename is set on trigger).

public void SetFilenameOrURL(string filename)

Parameters

filename string

IMediaBlockInternals.SetContext(MediaBlocksPipeline)

Sets the pipeline context.

void IMediaBlockInternals.SetContext(MediaBlocksPipeline pipeline)

Parameters

pipeline MediaBlocksPipeline