Table of Contents

Class AMFH264EncoderSettings

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

Configuration settings for AMD AMF H264 encoder.

public class AMFH264EncoderSettings : IH264EncoderSettings, IVideoEncoder, IMediaBlockSettings, IEncoderTextInfo

Inheritance

Implements

Inherited Members

Constructors

AMFH264EncoderSettings(VideoQuality)

Initializes a new instance of the VisioForge.Core.Types.X.VideoEncoders.AMFH264EncoderSettings class with a specified quality level.

public AMFH264EncoderSettings(VideoQuality quality)

Parameters

quality VideoQuality

The video quality level that determines bitrate settings.

AMFH264EncoderSettings()

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

public AMFH264EncoderSettings()

Fields

Name

Gets the display name of this encoder.

public static string Name

Field Value

string

Properties

AUD

Gets or sets a value indicating whether to use Access Unit delimiter.

public bool AUD { get; set; }

Property Value

bool

Bitrate

Gets or sets the target bitrate in Kbps.

public uint Bitrate { get; set; }

Property Value

uint

CABAC

Gets or sets a value indicating whether CABAC entropy coding enabled.

public bool CABAC { get; set; }

Property Value

bool

GOPSize

Gets or sets the number of pictures within a GOP. -1 to use default value.

public int GOPSize { get; set; }

Property Value

int

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 AMFH264EncoderLevel Level { get; set; }

Property Value

AMFH264EncoderLevel

MaxBitrate

Gets or sets the maximum bitrate in kbit/sec.

public uint MaxBitrate { get; set; }

Property Value

uint

MaxQP

Gets or sets the maximum allowed QP value. -1 to use default value.

public int MaxQP { get; set; }

Property Value

int

MinQP

Gets or sets the minimum allowed QP value. -1 to use default value.

public int MinQP { get; set; }

Property Value

int

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

Preset

Gets or sets the preset.

public AMFH264EncoderPreset Preset { get; set; }

Property Value

AMFH264EncoderPreset

Profile

Gets or sets the profile.

public AMFH264EncoderProfile Profile { get; set; }

Property Value

AMFH264EncoderProfile

QP_I

Gets or sets the constant QP for I frames.

public uint QP_I { get; set; }

Property Value

uint

QP_P

Gets or sets the constant QP for P frames.

public uint QP_P { get; set; }

Property Value

uint

RateControl

Gets or sets the rate control.

public AMFH264EncoderRateControl RateControl { get; set; }

Property Value

AMFH264EncoderRateControl

RefFrames

Gets or sets the number of reference frames.

public uint RefFrames { get; set; }

Property Value

uint

Usage

Gets or sets the target usage.

public AMFH264EncoderUsage Usage { get; set; }

Property Value

AMFH264EncoderUsage

Methods

CreateBlock()

Creates a new H264 encoder block with these settings.

public MediaBlock CreateBlock()

Returns

MediaBlock

A configured VisioForge.Core.MediaBlocks.MediaBlock instance for H264 encoding.

GetCaps()

Gets the GStreamer capabilities string for this encoder configuration.

public string GetCaps()

Returns

string

A capabilities string specifying profile and level.

GetEncoderType()

Gets the type of the encoder.

public H264EncoderType GetEncoderType()

Returns

H264EncoderType

The VisioForge.Core.Types.X.VideoEncoders.H264EncoderType indicating this is an AMD GPU H264 encoder.

GetLevelList()

Gets a list of available H.264 level names.

public static IEnumerable<string> GetLevelList()

Returns

IEnumerable<string>

An enumerable collection of level names formatted as strings (e.g., "4.2").

GetParameters()

Gets the GStreamer pipeline parameters string for this encoder configuration.

public string GetParameters()

Returns

string

A formatted string containing all encoder parameters.

GetPresetList()

Gets a list of available preset names.

public static IEnumerable<string> GetPresetList()

Returns

IEnumerable<string>

An enumerable collection of preset names as strings.

GetProfileList()

Gets a list of available H.264 profile names.

public static IEnumerable<string> GetProfileList()

Returns

IEnumerable<string>

An enumerable collection of profile names as strings.

GetRateControlList()

Gets a list of available rate control mode names.

public static IEnumerable<string> GetRateControlList()

Returns

IEnumerable<string>

An enumerable collection of rate control mode names as strings.

GetUsageList()

Gets a list of available usage scenario names.

public static IEnumerable<string> GetUsageList()

Returns

IEnumerable<string>

An enumerable collection of usage scenario names as strings.

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.