Table of Contents

Class VAAPIH264EncoderSettings

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

Class representing the H264 Encoder settings.

public class VAAPIH264EncoderSettings : IH264EncoderSettings, IVideoEncoder, IMediaBlockSettings, IEncoderTextInfo

Inheritance

Implements

Inherited Members

Properties

Bitrate

The desired bitrate expressed in kbps (0: auto-calculate).

public uint Bitrate { get; set; }

Property Value

uint

CABAC

Enable CABAC entropy coding mode.

public bool CABAC { get; set; }

Property Value

bool

CPBLength

Length of the CPB buffer in milliseconds.

public TimeSpan CPBLength { get; set; }

Property Value

TimeSpan

ComplianceMode

Tune encode quality/performance by relaxing specification compliance restrictions.

public VAAPIH264EncoderComplianceMode ComplianceMode { get; set; }

Property Value

VAAPIH264EncoderComplianceMode

DCT8x8

Enable adaptive use of 8x8 transforms in I-frames.

public bool DCT8x8 { get; set; }

Property Value

bool

DefaultROIDeltaQp

The default delta-QP to apply to each Region of Interest (lower value means higher quality, higher value means lower quality).

public int DefaultROIDeltaQp { get; set; }

Property Value

int

InitQp

Initial quantizer value.

public uint InitQp { get; set; }

Property Value

uint

KeyFrameDetected

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

public KeyFrameDetectedDelegate KeyFrameDetected { get; set; }

Property Value

KeyFrameDetectedDelegate

KeyframePeriod

Maximal distance between two keyframes (0: auto-calculate).

public uint KeyframePeriod { get; set; }

Property Value

uint

MBBRC

Macroblock level Bitrate Control.

public VAAPIEncoderMacroblockBitrateControl MBBRC { get; set; }

Property Value

VAAPIEncoderMacroblockBitrateControl

MaxBFrames

Number of B-frames between I and P.

public uint MaxBFrames { get; set; }

Property Value

uint

MaxQp

Maximum quantizer value.

public uint MaxQp { get; set; }

Property Value

uint

MinQp

Minimum quantizer value.

public uint MinQp { get; set; }

Property Value

uint

NumSlices

Number of slices per frame.

public uint NumSlices { get; set; }

Property Value

uint

NumViews

Number of Views for MVC encoding.

public uint NumViews { 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

PredictionType

Reference Picture Selection Modes.

public VAAPIH264EncoderPredictionType PredictionType { get; set; }

Property Value

VAAPIH264EncoderPredictionType

Profile

Gets or sets the profile.

public VAAPIH264EncoderProfile Profile { get; set; }

Property Value

VAAPIH264EncoderProfile

QpIb

Difference of QP between I and B frame (available only on CQP).

public int QpIb { get; set; }

Property Value

int

QpIp

Difference of QP between I and P frame (available only on CQP).

public int QpIp { get; set; }

Property Value

int

QualityFactor

Quality factor for ICQ/QVBR bitrate control mode (low value means higher quality, higher value means lower quality).

public uint QualityFactor { get; set; }

Property Value

uint

QualityLevel

Encoding Quality Level (lower value means higher quality/slow encode, higher value means lower quality/fast encode).

public uint QualityLevel { get; set; }

Property Value

uint

RateControl

Rate control mode.

public VAAPIH264RateControl RateControl { get; set; }

Property Value

VAAPIH264RateControl

Refs

Number of reference frames.

public uint Refs { get; set; }

Property Value

uint

TargetPercentage

The desired target percentage of bitrate for variable rate controls.

public uint TargetPercentage { get; set; }

Property Value

uint

TemporalLevels

Number of temporal levels in the encoded stream.

public uint TemporalLevels { get; set; }

Property Value

uint

Trellis

The Trellis Quantization Method of Encoder.

public bool Trellis { get; set; }

Property Value

bool

Tune

Encoder tuning option.

public VAAPIH264EncoderTune Tune { get; set; }

Property Value

VAAPIH264EncoderTune

Methods

CreateBlock()

Creates the block.

public MediaBlock CreateBlock()

Returns

MediaBlock

MediaBlock.

GetCaps()

Gets the caps.

public string GetCaps()

Returns

string

Gst.Caps.

GetEncoderType()

Gets the type of the encoder.

public H264EncoderType GetEncoderType()

Returns

H264EncoderType

H264EncoderType.

GetParameters()

Gets the parameters.

public string GetParameters()

Returns

string

string.