Table of Contents

Class OpenH264EncoderSettings

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

OpenH264 encoder settings.

public class OpenH264EncoderSettings : IH264EncoderSettings, IVideoEncoder, IMediaBlockSettings, IEncoderTextInfo

Inheritance

Implements

Inherited Members

Constructors

OpenH264EncoderSettings()

Initializes a new instance of the VisioForge.Core.Types.X.VideoEncoders.OpenH264EncoderSettings class.

public OpenH264EncoderSettings()

OpenH264EncoderSettings(VideoQuality)

Initializes a new instance of the VisioForge.Core.Types.X.VideoEncoders.OpenH264EncoderSettings class.

public OpenH264EncoderSettings(VideoQuality quality)

Parameters

quality VideoQuality

The quality.

Fields

Name

The name.

public static string Name

Field Value

string

Properties

AdaptiveQuantization

Gets or sets a value indicating whether adaptive quantization is enabled.

public bool AdaptiveQuantization { get; set; }

Property Value

bool

BackgroundDetection

Gets or sets a value indicating whether background detection is enabled.

public bool BackgroundDetection { get; set; }

Property Value

bool

Bitrate

Gets or sets the bitrate (Kbit/s).

public uint Bitrate { get; set; }

Property Value

uint

Complexity

Gets or sets the complexity.

public OpenH264Complexity Complexity { get; set; }

Property Value

OpenH264Complexity

DeblockingMode

Gets or sets the deblocking mode.

public OpenH264DeblockingMode DeblockingMode { get; set; }

Property Value

OpenH264DeblockingMode

EnableDenoise

Gets or sets a value indicating whether denoise is enabled.

public bool EnableDenoise { get; set; }

Property Value

bool

EnableFrameSkip

Gets or sets a value indicating whether an encoder can skip frames to reach the target bitrate.

public bool EnableFrameSkip { get; set; }

Property Value

bool

GOPSize

Gets or sets the number of frames between intra frames.

public uint GOPSize { get; set; }

Property Value

uint

KeyFrameDetected

Occurs when on key frame detected. Timestamp is in nanoseconds.

public KeyFrameDetectedDelegate KeyFrameDetected { get; set; }

Property Value

KeyFrameDetectedDelegate

Level

Gets or sets the level.

public OpenH264Level Level { get; set; }

Property Value

OpenH264Level

MaxBitrate

Gets or sets the maximum bitrate (Kbit/s).

public uint MaxBitrate { get; set; }

Property Value

uint

MaxSliceSize

Gets or sets the maximum size of the slice (in bytes).

public uint MaxSliceSize { get; set; }

Property Value

uint

NumSlices

Gets or sets the number of slices (needs SliceMode set to NSlices).

public uint NumSlices { get; set; }

Property Value

uint

NumThreads

Gets or sets the number of threads.

public uint NumThreads { get; set; }

Property Value

uint

ParseStream

Gets or sets a value indicating whether to parse the video stream. True by default. Disable it for SRT streaming.

public bool ParseStream { get; set; }

Property Value

bool

Profile

Gets or sets the profile.

public OpenH264Profile Profile { get; set; }

Property Value

OpenH264Profile

QPMax

Gets or sets the maximum quantizer. [1..51], 1 - best quality, 51 - worst quality.

public uint QPMax { get; set; }

Property Value

uint

QPMin

Gets or sets the minimum quantizer. [1..51], 1 - best quality, 51 - worst quality.

public uint QPMin { get; set; }

Property Value

uint

RateControl

Gets or sets the rate control.

public OpenH264RCMode RateControl { get; set; }

Property Value

OpenH264RCMode

SceneChangeDetection

Gets or sets a value indicating whether the scene change detection is enabled.

public bool SceneChangeDetection { get; set; }

Property Value

bool

SliceMode

Gets or sets the slice mode.

public OpenH264SliceMode SliceMode { get; set; }

Property Value

OpenH264SliceMode

UsageType

Gets or sets the type of the usage.

public OpenH264UsageType UsageType { get; set; }

Property Value

OpenH264UsageType

Methods

CreateBlock()

Creates the block.

public MediaBlock CreateBlock()

Returns

MediaBlock

MediaBlock.

GetCaps()

Gets the caps.

public string GetCaps()

Returns

string

System.String.

GetEncoderType()

Gets the type of the encoder.

public H264EncoderType GetEncoderType()

Returns

H264EncoderType

H264EncoderType.

GetLevelList()

Gets the level list.

public static IEnumerable<string> GetLevelList()

Returns

IEnumerable<string>

IEnumerable<System.String>.

GetParameters()

Gets the parameters string.

public string GetParameters()

Returns

string

System.String.

GetProfileList()

Gets the profile list.

public static IEnumerable<string> GetProfileList()

Returns

IEnumerable<string>

IEnumerable<System.String>.

IsAvailable()

Determines whether this encoder is available.

public static bool IsAvailable()

Returns

bool

true if this encoder is available; otherwise, false.

ToString()

Returns a String that represents this instance.

public override string ToString()

Returns

string

A String that represents this instance.