VisioForge (c) 2025

Search Results for

    Class FLACOutput

    FLAC output settings.

    Inheritance
    object
    FLACOutput
    Implements
    IVideoEditBaseOutput
    IVideoCaptureBaseOutput
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: VisioForge.Core.Types.Output
    Assembly: VisioForge.Core.dll
    Syntax
    public sealed class FLACOutput : IVideoEditBaseOutput, IVideoCaptureBaseOutput

    Constructors

    FLACOutput()

    Initializes a new instance of the FLACOutput class.

    Declaration
    public FLACOutput()

    Properties

    AdaptiveMidSideCoding

    Gets or sets a value indicating whether adaptive mid-side coding will be used. False by default.

    Declaration
    public bool AdaptiveMidSideCoding { get; set; }
    Property Value
    Type Description
    bool
    Remarks

    Enable adaptive mid-side coding (only for stereo streams). Like mid-side coding but the encoder adaptively switches between independent and mid-side coding, which is faster but yields less compression than mid-side coding (which does an exhaustive search).

    BlockSize

    Gets or sets block size. Default is 4608.

    Declaration
    public int BlockSize { get; set; }
    Property Value
    Type Description
    int
    Remarks

    Specify the block size in samples. Subset streams must use one of 192/576/1152/2304/4608/256/512/1024/2048/4096 (and 8192/16384 if the sample rate is > 48kHz). The reference encoder uses the same block size for the entire stream.

    ExhaustiveModelSearch

    Gets or sets a value indicating whether exhaustive model search will be used.

    Declaration
    public bool ExhaustiveModelSearch { get; set; }
    Property Value
    Type Description
    bool
    Remarks

    Exhaustive model search (expensive!). Normally the encoder estimates the best model to use and encodes once based on the estimate. With an exhaustive model search, the encoder will generate subframes for every order and use the smallest. If the max LPC order is high this can significantly increase the encode time but can shave off another 0.5%.

    LPCOrder

    Gets or sets LPC order. Default value is 8.

    Declaration
    public int LPCOrder { get; set; }
    Property Value
    Type Description
    int
    Remarks

    Specifies the maximum LPC order. This number must be smaller or = 32. For Subset streams, it must be smaller or = 12 if the sample rate is smaller or = 48kHz. If 0, the encoder will not attempt generic linear prediction, and use only fixed predictors. Using fixed predictors is faster but usually results in files being 5-10% larger.

    Level

    Gets or sets level. Range is 0 - 8. 0 is fastest compression, 8 is highest compression. Default value is 5.

    Declaration
    public int Level { get; set; }
    Property Value
    Type Description
    int

    MidSideCoding

    Gets or sets a value indicating whether mid-side coding will be used. False by default.

    Declaration
    public bool MidSideCoding { get; set; }
    Property Value
    Type Description
    bool
    Remarks

    Enable mid-side coding (only for stereo streams). Tends to increase compression by a few percent on average. For each block both the stereo pair and mid-side versions of the block will be encoded, and smallest resulting frame will be stored.

    RiceMax

    Gets or sets rice max. Default value is 3.

    Declaration
    public int RiceMax { get; set; }
    Property Value
    Type Description
    int
    Remarks

    Set the [min,]max residual partition order. The min value defaults to 0 if unspecified. By default the encoder uses a single Rice parameter for the subframe's entire residual. With this option, the residual is iteratively partitioned into 2^min# .. 2^max# pieces, each with its own Rice parameter. Higher values of max# yield diminishing returns. The most ang for the buck is usually with -r 2,2 (more for higher block sizes). This usually shaves off about 1.5%. The technique tends to peak out about when blocksize/(2^n)=128. Use -r 0,15 to force the highest degree of optimization.

    RiceMin

    Gets or sets rice min. Default value is 3.

    Declaration
    public int RiceMin { get; set; }
    Property Value
    Type Description
    int
    Remarks

    Set the [min,]max residual partition order. The min value defaults to 0 if unspecified. By default the encoder uses a single Rice parameter for the subframe's entire residual. With this option, the residual is iteratively partitioned into 2^min# .. 2^max# pieces, each with its own Rice parameter. Higher values of max# yield diminishing returns. The most ang for the buck is usually with -r 2,2 (more for higher block sizes). This usually shaves off about 1.5%. The technique tends to peak out about when blocksize/(2^n)=128. Use -r 0,15 to force the highest degree of optimization.

    Methods

    GetInternalTypeVC()

    Gets internal output format.

    Declaration
    public VideoCaptureOutputFormat GetInternalTypeVC()
    Returns
    Type Description
    VideoCaptureOutputFormat

    Returns VideoCaptureOutputFormat.

    GetInternalTypeVE()

    Gets internal output format.

    Declaration
    public VideoEditOutputFormat GetInternalTypeVE()
    Returns
    Type Description
    VideoEditOutputFormat

    Returns VideoEditOutputFormat.

    Load(string)

    Loads from JSON.

    Declaration
    public static FLACOutput Load(string json)
    Parameters
    Type Name Description
    string json

    JSON string.

    Returns
    Type Description
    FLACOutput

    The string.

    Save()

    Saves to JSON.

    Declaration
    public string Save()
    Returns
    Type Description
    string

    The string.

    Implements

    IVideoEditBaseOutput
    IVideoCaptureBaseOutput