Class VLCEXEOutput
- Namespace
- VisioForge.Core.Types.Output
- Assembly
- VisioForge.Core.dll
VLC EXE output settings.
public sealed class VLCEXEOutput : IVideoCaptureBaseOutput, INetworkStreamingOutputInheritance
Implements
Inherited Members
Constructors
VLCEXEOutput()
Initializes a new instance of the VisioForge.Core.Types.Output.VLCEXEOutput class.
public VLCEXEOutput()Properties
Audio_Bitrate
Gets or sets FFMPEG EXE audio bitrate.
public int Audio_Bitrate { get; set; }Property Value
Audio_Channels
Gets or sets FFMPEG EXE audio channels.
public int Audio_Channels { get; set; }Property Value
Audio_Encoder
Gets or sets FFMPEG EXE audio encoder.
public AudioEncoder Audio_Encoder { get; set; }Property Value
Audio_Mode
Gets or sets FFMPEG EXE audio mode.
public AudioMode Audio_Mode { get; set; }Property Value
Audio_Quality
Gets or sets FFMPEG EXE audio quality.
public int Audio_Quality { get; set; }Property Value
Audio_SampleRate
Gets or sets FFMPEG EXE audio sample rate.
public int Audio_SampleRate { get; set; }Property Value
Custom_AdditionalAudioArgs
Gets or sets additional args for FFMPEG EXE audio encoder. You can specify custom FFMPEG parameters not available by our SDK.
public string Custom_AdditionalAudioArgs { get; set; }Property Value
Custom_AdditionalCommonArgs
Gets or sets additional args for FFMPEG EXE. You can specify custom FFMPEG parameters not available by our SDK.
public string Custom_AdditionalCommonArgs { get; set; }Property Value
Custom_AdditionalVideoArgs
Gets or sets additional args for FFMPEG EXE video encoder. You can specify custom FFMPEG parameters not available by our SDK.
public string Custom_AdditionalVideoArgs { get; set; }Property Value
Custom_AllFFMPEGArgs
Gets or sets custom FFMPEG args for FFMPEG EXE. Using this property you are ignoring all FFMPEG output settings. You can specify custom FFMPEG parameters not available by our SDK.
public string Custom_AllFFMPEGArgs { get; set; }Property Value
ExecutableFilename
Gets or sets custom FFMPEG file name (including path).
public string ExecutableFilename { get; set; }Property Value
OutputMuxer
Gets or sets FFMPEG EXE output format.
public OutputMuxer OutputMuxer { get; set; }Property Value
RtBufferSize
Gets or sets rtbufsize parameter for FFMPEG source. 50M by default.
public string RtBufferSize { get; set; }Property Value
ThreadsCount
Gets or sets FFMPEG EXE threads count.
public int ThreadsCount { get; set; }Property Value
UsePipe
Gets or sets a value indicating whether pipe will be used instead virtual devices.
public bool UsePipe { get; set; }Property Value
Video_AspectRatioH
Gets or sets FFMPEG EXE aspect ratio H. 0 to use default value.
public int Video_AspectRatioH { get; set; }Property Value
Video_AspectRatioW
Gets or sets FFMPEG EXE aspect ratio W. 0 to use default value.
public int Video_AspectRatioW { get; set; }Property Value
Video_BFrames
Gets or sets FFMPEG EXE video B-Frames count.
public int Video_BFrames { get; set; }Property Value
Video_Bitrate
Gets or sets FFMPEG EXE video bitrate.
public int Video_Bitrate { get; set; }Property Value
Video_BufferSize
Gets or sets FFMPEGEXE video buffer size. 0 to use default value.
public int Video_BufferSize { get; set; }Property Value
Video_Encoder
Gets or sets FFMPEG EXE output video encoder.
public VideoEncoder Video_Encoder { get; set; }Property Value
Video_GOPSize
Gets or sets FFMPEG EXE video GOP size.
public int Video_GOPSize { get; set; }Property Value
Video_H264_Level
Gets or sets H264 level.
public H264Level Video_H264_Level { get; set; }Property Value
Video_H264_Mode
Gets or sets H264 mode.
public X264Mode Video_H264_Mode { get; set; }Property Value
Video_H264_Preset
Gets or sets H264 preset. Medium by default.
public X264Preset Video_H264_Preset { get; set; }Property Value
Video_H264_PresetCustom
Gets or sets H264 custom preset. Set Video_H264_Preset to Custom first.
public string Video_H264_PresetCustom { get; set; }Property Value
Video_H264_Profile
Gets or sets H264 profile.
public H264Profile Video_H264_Profile { get; set; }Property Value
Video_H264_Quantizer
Gets or sets H264 quantizer.
public uint Video_H264_Quantizer { get; set; }Property Value
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).
Video_H264_QuickTime_Compatibility
Gets or sets a value indicating whether Apple QuickTime compatibility enabled.
public bool Video_H264_QuickTime_Compatibility { get; set; }Property Value
Remarks
Apple QuickTime only supports YUV planar color space with 4:2:0 chroma subsampling for H.264 video (from FFMPEG docs).
Video_H264_WebFastStart
Gets or sets a value indicating whether fast start mode enabled. Use this mode if you are require file played in browser.
public bool Video_H264_WebFastStart { get; set; }Property Value
Video_H264_ZeroTolerance
Gets or sets a value indicating whether FFMPEG EXE H264 encoder ZeroTolerance option will be set.
public bool Video_H264_ZeroTolerance { get; set; }Property Value
Remarks
Must be set to true for better network streaming.
Video_Height
Gets or sets FFMPEG EXE video height.
public int Video_Height { get; set; }Property Value
Video_Interlace
Gets or sets a value indicating whether FFMPEG EXE video will be interlaced.
public bool Video_Interlace { get; set; }Property Value
Video_Letterbox
Gets or sets a value indicating whether FFMPEG EXE video will be letterboxed during resize.
public bool Video_Letterbox { get; set; }Property Value
Video_MaxBitrate
Gets or sets FFMPEG EXE video maximal bitrate.
public int Video_MaxBitrate { get; set; }Property Value
Video_MinBitrate
Gets or sets FFMPEGEXE video minimal bitrate.
public int Video_MinBitrate { get; set; }Property Value
Video_Mode
Gets or sets FFMPEG EXE video mode.
public VideoMode Video_Mode { get; set; }Property Value
Video_Quality
Gets or sets FFMPEG EXE video quality.
public int Video_Quality { get; set; }Property Value
Video_TVSystem
Gets or sets FFMPEG EXE TV system.
public TVSystem Video_TVSystem { get; set; }Property Value
Video_Width
Gets or sets FFMPEG EXE video width.
public int Video_Width { get; set; }Property Value
Methods
FillDefaults(DefaultsProfile, bool)
Fills FFMPEG_EXE properties by defaults profile.
public void FillDefaults(DefaultsProfile profile, bool networkStreaming)Parameters
profileDefaultsProfile-
Profile.
networkStreamingbool-
Set true if settings used for network streaming.
GetInternalTypeVC()
Gets internal output format.
public VideoCaptureOutputFormat GetInternalTypeVC()Returns
- VideoCaptureOutputFormat
-
Returns VisioForge.Core.Types.VideoCapture.VideoCaptureOutputFormat.
Load(string)
Loads from JSON.
public static VLCEXEOutput Load(string json)Parameters
jsonstring-
JSON string.
Returns
- VLCEXEOutput
-
The String.
Save()
Saves to JSON.
public string Save()