Table of Contents

Class VAAPIHEVCEncoderSettings

Namespace
VisioForge.Core.Types.X.VideoEncoders
Assembly
VisioForge.Core.dll
public class VAAPIHEVCEncoderSettings : IHEVCEncoderSettings, 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

CPBLength

Length of the CPB buffer in milliseconds.

public uint CPBLength { get; set; }

Property Value

uint

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

KeyframePeriod

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

public uint KeyframePeriod { get; set; }

Property Value

uint

LowDelayB

Transforms P frames into predictive B frames. Enable it when P frames are not supported.

public bool LowDelayB { get; set; }

Property Value

bool

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

NumTileCols

The number of columns for tile encoding.

public uint NumTileCols { get; set; }

Property Value

uint

NumTileRows

The number of rows for tile encoding.

public uint NumTileRows { 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 VAAPIHEVCEncoderProfile Profile { get; set; }

Property Value

VAAPIHEVCEncoderProfile

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/QBVR bitrate control mode (lower 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 VAAPIHEVCRateControl RateControl { get; set; }

Property Value

VAAPIHEVCRateControl

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

Trellis

The Trellis Quantization Method of Encoder.

public bool Trellis { get; set; }

Property Value

bool

Tune

Encoder tuning option.

public VAAPIHEVCEncoderTune Tune { get; set; }

Property Value

VAAPIHEVCEncoderTune

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 HEVCEncoderType GetEncoderType()

Returns

HEVCEncoderType

HEVCEncoderType.

GetParameters()

Retrieves a string representation of the encoder's current parameters. This string typically includes settings like bitrate, resolution, frame rate, and other configured options.

public string GetParameters()

Returns

string

A String containing the encoder parameters.