Class X264Settings
x264 settings. FFMPEG provided with SDK do not have x264 encoder.
Inherited Members
Namespace: VisioForge.Core.Types.FFMPEGEXE
Assembly: VisioForge.Core.dll
Syntax
public class X264Settings : BasicVideoSettings
Constructors
X264Settings()
Initializes a new instance of the X264Settings class.
Declaration
public X264Settings()
Properties
BFrames
Gets or sets FFMPEG EXE video B-Frames count.
Declaration
public int BFrames { get; set; }
Property Value
Type | Description |
---|---|
int |
GOPSize
Gets or sets FFMPEG EXE video GOP size.
Declaration
public int GOPSize { get; set; }
Property Value
Type | Description |
---|---|
int |
Level
Gets or sets H264 level.
Declaration
public H264Level Level { get; set; }
Property Value
Type | Description |
---|---|
H264Level |
Mode
Gets or sets X264 mode.
Declaration
public X264Mode Mode { get; set; }
Property Value
Type | Description |
---|---|
X264Mode |
Preset
Gets or sets H264 preset. Medium by default.
Declaration
public X264Preset Preset { get; set; }
Property Value
Type | Description |
---|---|
X264Preset |
PresetCustom
Gets or sets H264 custom preset. Set Video_H264_Preset to Custom first.
Declaration
public string PresetCustom { get; set; }
Property Value
Type | Description |
---|---|
string |
Profile
Gets or sets H264 profile.
Declaration
public H264Profile Profile { get; set; }
Property Value
Type | Description |
---|---|
H264Profile |
Quantizer
Gets or sets H264 quantizer.
Declaration
public int Quantizer { get; set; }
Property Value
Type | Description |
---|---|
int |
Remarks
The range of the quantizer scale is 0-51: where 0 is lossless, 23 is default, and 51 is worst possible. A lower value is a higher quality and a subjectively sane range is 18-28. Consider 18 to be visually lossless or nearly so: it should look the same or nearly the same as the input but it isn't technically lossless. The range is exponential, so increasing the CRF value +6 is roughly half the bitrate while -6 is roughly twice the bitrate. General usage is to choose the highest CRF value that still provides an acceptable quality. If the output looks good, then try a higher value and if it looks bad then choose a lower value. (FFMPEG docs).
QuickTimeCompatibility
Gets or sets a value indicating whether Apple QuickTime compatibility enabled.
Declaration
public bool QuickTimeCompatibility { get; set; }
Property Value
Type | Description |
---|---|
bool |
Remarks
Apple QuickTime only supports YUV planar color space with 4:2:0 chroma subsampling for H.264 video (from FFMPEG docs).
WebFastStart
Gets or sets a value indicating whether fast start mode enabled. Use this mode if you are require file played in browser.
Declaration
public bool WebFastStart { get; set; }
Property Value
Type | Description |
---|---|
bool |
ZeroTolerance
Gets or sets a value indicating whether FFMPEG EXE H264 encoder ZeroTolerance option will be set.
Declaration
public bool ZeroTolerance { get; set; }
Property Value
Type | Description |
---|---|
bool |
Remarks
Must be set to true for better network streaming.