Table of Contents

Class SVTAV1EncoderSettings

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

Configuration settings for SVT-AV1 (Scalable Video Technology for AV1) encoder.

public class SVTAV1EncoderSettings : IAV1EncoderSettings, IVideoEncoder, IMediaBlockSettings, IEncoderTextInfo

Inheritance

Implements

Inherited Members

Properties

Bitrate

public int Bitrate { get; set; }

Property Value

int

CQP

Gets or sets the Constant Quantization Parameter mode value.

public int? CQP { get; set; }

Property Value

int?

Remarks

When set, enables CQP mode. Valid range is 1-63.

CRF

Gets or sets the Constant Rate Factor mode value.

public int CRF { get; set; }

Property Value

int

Remarks

Default is 35. Valid range is 1-63. Lower values result in higher quality.

IntraPeriodLength

Gets or sets the intra period length (GOP size).

public int IntraPeriodLength { get; set; }

Property Value

int

Remarks

Controls how often intra frames are inserted. -1 for automatic, 0 for intra-only.

MaxBitrate

Gets or sets the maximum bitrate in bits per second.

public int? MaxBitrate { get; set; }

Property Value

int?

Remarks

Used for VBR mode when combined with TargetBitrate.

Preset

Gets or sets the encoding preset for quality/speed tradeoff.

public int Preset { get; set; }

Property Value

int

Remarks

Valid range is 0-13. Lower values provide better quality but slower encoding. Default is 10.

TargetBitrate

Gets or sets the target bitrate in bits per second.

public int? TargetBitrate { get; set; }

Property Value

int?

Remarks

When set, enables CBR or VBR encoding modes.

Threads

Gets or sets the number of threads to use for encoding.

public int Threads { get; set; }

Property Value

int

Remarks

0 for automatic thread count based on CPU cores.

Tier

Gets or sets the tier level for the encoded stream.

public int Tier { get; set; }

Property Value

int

Remarks

0 for main tier, 1 for high tier.

TileColumns

Gets or sets the number of tile columns to use.

public int TileColumns { get; set; }

Property Value

int

Remarks

0 for automatic.

TileRows

Gets or sets the number of tile rows to use.

public int TileRows { get; set; }

Property Value

int

Remarks

0 for automatic.

Methods

CreateBlock()

Creates a new AV1 encoder block with these settings.

public MediaBlock CreateBlock()

Returns

MediaBlock

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

GetCaps()

Retrieves a string representation of the encoder's capabilities (GStreamer caps). This string describes the media formats and properties that the encoder can handle.

public string GetCaps()

Returns

string

A String containing the encoder's capabilities.

GetEncoderType()

Gets the type of the encoder.

public AV1EncoderType GetEncoderType()

Returns

AV1EncoderType

AV1EncoderType.

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.

IsAvailable()

Checks if the SVT-AV1 encoder is available on the system.

public static bool IsAvailable()

Returns

bool

true if available; otherwise, false.