Table of Contents

Class VideoMixerSourceSettings

Namespace
VisioForge.Core.Types.X.Sources
Assembly
VisioForge.Core.dll

Video mixer source settings.

public class VideoMixerSourceSettings : IVideoCaptureBaseVideoSourceSettings, IMediaPlayerBaseSourceSettings, IVideoSourceSettings, IMediaBlockSettings

Inheritance

Implements

Inherited Members

Constructors

VideoMixerSourceSettings(int, int, VideoFrameRate)

Initializes a new instance of the VisioForge.Core.Types.X.Sources.VideoMixerSourceSettings class.

public VideoMixerSourceSettings(int width, int height, VideoFrameRate frameRate)

Parameters

width int

The width.

height int

The height.

frameRate VideoFrameRate

The frame rate.

VideoMixerSourceSettings()

Initializes a new instance of the VisioForge.Core.Types.X.Sources.VideoMixerSourceSettings class.

public VideoMixerSourceSettings()

Properties

Count

Gets the count.

public int Count { get; }

Property Value

int

FrameRate

Gets or sets the frame rate.

public VideoFrameRate FrameRate { get; set; }

Property Value

VideoFrameRate

Height

Gets or sets the height.

public int Height { get; set; }

Property Value

int

MixerType

Gets or sets the type of video mixer to be used for processing video streams.

public VideoMixerType MixerType { get; set; }

Property Value

VideoMixerType

Sources

Gets or sets the sources feeding the mixer. One input pad is created per entry when the block is constructed, so a pipeline document must carry this list for the mixer to have inputs.

public List<VideoMixerSourceStream> Sources { get; set; }

Property Value

List<VideoMixerSourceStream>

Width

Gets or sets the width.

public int Width { get; set; }

Property Value

int

Methods

Add(IVideoMixerSource, Rect, ChromaKeySettingsX)

Adds the specified source.

public void Add(IVideoMixerSource source, Rect rect, ChromaKeySettingsX chromaKeySettings = null)

Parameters

source IVideoMixerSource

The source.

rect Rect

The rectangle.

chromaKeySettings ChromaKeySettingsX

The chroma key settings.

Add(IVideoMixerSource, int, int, int, int, ChromaKeySettingsX)

Adds the specified source at the given edges of the output canvas.

public void Add(IVideoMixerSource source, int left, int top, int right, int bottom, ChromaKeySettingsX chromaKeySettings = null)

Parameters

source IVideoMixerSource

The source.

left int

The x coordinate of the left edge.

top int

The y coordinate of the top edge.

right int

The x coordinate of the right edge.

bottom int

The y coordinate of the bottom edge.

chromaKeySettings ChromaKeySettingsX

The chroma key settings.

Remarks

The last two arguments are the right and bottom edges, not a width and a height: they go straight into the VisioForge.Core.Types.Rect constructor, which is (left, top, right, bottom). They were named width and height while behaving this way, so Add(src, 960, 0, 960, 1080) - a 960-wide input by the old names - is a zero-width one. The names are corrected and the behaviour is unchanged, so positional calls keep working and a call written to the old names was already producing this rectangle.

Clear()

Clears this instance.

public void Clear()

CreateBlock()

Creates the block.

public MediaBlock CreateBlock()

Returns

MediaBlock

MediaBlock.

Get(int)

Gets the specified source.

public Tuple<IVideoMixerSource, Rect, ChromaKeySettingsX> Get(int id)

Parameters

id int

The identifier.

Returns

Tuple<IVideoMixerSource, Rect, ChromaKeySettingsX>

Tuple<IVideoMixerSource, Rect>.

ReadInfoAsync()

Reads the information asynchronous.

public Task<MediaFileInfo> ReadInfoAsync()

Returns

Task<MediaFileInfo>

Task<MediaFileInfo>.

Remove(IVideoMixerSource)

Removes the specified source.

public void Remove(IVideoMixerSource source)

Parameters

source IVideoMixerSource

The source.

RemoveAt(int)

Removes the specified source.

public void RemoveAt(int id)

Parameters

id int

The identifier.