Class SVTHEVCEncoderSettings
- Assembly
- VisioForge.Core.dll
Configuration settings for SVT-HEVC (Scalable Video Technology for HEVC) encoder.
public class SVTHEVCEncoderSettings : IHEVCEncoderSettings, IVideoEncoder, IMediaBlockSettings, IEncoderTextInfoInheritance
Implements
Inherited Members
Properties
Bitrate
Gets or sets the target bitrate in kilobits per second.
public int Bitrate { get; set; }Property Value
Remarks
Default is 7000 kbps.
ConstantQP
Gets or sets the constant QP mode value.
public int? ConstantQP { get; set; }Property Value
- int?
Remarks
When set, enables constant QP mode. Valid range is 0-51.
EncodingSpeed
Gets or sets the encoding speed preset.
public int EncodingSpeed { get; set; }Property Value
Remarks
Valid range is 0-11. Lower values provide better quality but slower encoding. Default is 7.
HierarchicalLevels
Gets or sets the hierarchical levels for B-frames.
public int HierarchicalLevels { get; set; }Property Value
Remarks
0-3, where 3 is the default value.
LogicalProcessors
Gets or sets the logical processors count.
public int LogicalProcessors { get; set; }Property Value
Remarks
0 for automatic.
OpenGOP
Gets or sets whether to use open GOP structure.
public bool OpenGOP { get; set; }Property Value
Remarks
Default is true.
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
SceneChangeDetection
Gets or sets whether to enable scene change detection.
public bool SceneChangeDetection { get; set; }Property Value
Remarks
Default is true.
TargetSocket
Gets or sets the target socket count for thread allocation.
public int TargetSocket { get; set; }Property Value
Remarks
-1 for automatic.
Threads
Gets or sets the number of threads to use for encoding.
public int Threads { get; set; }Property Value
Remarks
0 for automatic thread count based on CPU cores.
TileColumns
Gets or sets the number of tile columns.
public int TileColumns { get; set; }Property Value
Remarks
0 for automatic.
TileRows
Gets or sets the number of tile rows.
public int TileRows { get; set; }Property Value
Remarks
0 for automatic.
TuneForQuality
Gets or sets the quality tuning mode.
public int TuneForQuality { get; set; }Property Value
Remarks
0 = "vq" (visual quality), 1 = "oq" (PSNR/SSIM optimized). Default is 1.
Methods
CreateBlock()
Creates a new HEVC encoder block with these settings.
public MediaBlock CreateBlock()Returns
- MediaBlock
-
A configured VisioForge.Core.MediaBlocks.MediaBlock instance for HEVC 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
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
IsAvailable()
Checks if the SVT-HEVC encoder is available on the system.
public static bool IsAvailable()Returns
- bool
-
trueif available; otherwise,false.