VisioForge (c) 2025

Search Results for

    Class MP4SinkSettings

    MP4 sink settings.

    Inheritance
    object
    MP4SinkSettings
    MOVSinkSettings
    MP4SplitSinkSettings
    Implements
    IMediaBlockSettings
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: VisioForge.Core.Types.X.Sinks
    Assembly: VisioForge.Core.dll
    Syntax
    public class MP4SinkSettings : IMediaBlockSettings

    Constructors

    MP4SinkSettings()

    Initializes a new instance of the MP4SinkSettings class.

    Declaration
    public MP4SinkSettings()

    MP4SinkSettings(int)

    Initializes a new instance of the MP4SinkSettings class.

    Declaration
    public MP4SinkSettings(int fileDescriptor)
    Parameters
    Type Name Description
    int fileDescriptor

    The file descriptor.

    MP4SinkSettings(string)

    Initializes a new instance of the MP4SinkSettings class.

    Declaration
    public MP4SinkSettings(string filename)
    Parameters
    Type Name Description
    string filename

    The filename.

    Properties

    FastStart

    Gets or sets a value indicating whether fast start enabled.

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

    FileDescriptor

    Gets or sets the file descriptor. If set, the file will be written to this descriptor instead of a file.

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

    The file descriptor.

    Filename

    Gets or sets the filename (or pattern like "file%02d.mp4" if the split mode used).

    Declaration
    public string Filename { get; set; }
    Property Value
    Type Description
    string

    ForceChunks

    Gets or sets a value indicating whether force multiple chunks to be created even for single-stream files.

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

    ForceCreateTimecodeTrak

    Gets or sets a value indicating whether create a timecode trak even in unsupported flavors.

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

    FragmentDuration

    Gets or sets the fragment durations (produce a fragmented file if > 0).

    Declaration
    public TimeSpan FragmentDuration { get; set; }
    Property Value
    Type Description
    TimeSpan

    FragmentMode

    Gets or sets the influence how fragmented files are produces. Only has any affect when the the 'FragmentDuration' property is set to a value greater than '0'.

    Declaration
    public MP4FragmentMode FragmentMode { get; set; }
    Property Value
    Type Description
    MP4FragmentMode
    Remarks

    Currently, two options exist:
    "dash-or-mss": for the original fragmented mode that supports dash or mocrosoft smoothstreaming with a single input stream "first-moov-then-finalise" is a fragmented mode that will start with a self-contained 'moov' atom fo the first fragment, then produce fragments.When the file is finalised, the initial 'moov' is invalidated and a new 'moov' is written covering the entire file.

    InterleaveBytes

    Gets or sets the interleave between streams in bytes.

    Declaration
    public ulong InterleaveBytes { get; set; }
    Property Value
    Type Description
    ulong

    InterleaveTime

    Gets or sets the interleave between streams in nanoseconds.

    Declaration
    public ulong InterleaveTime { get; set; }
    Property Value
    Type Description
    ulong

    MOOVRecoveryFile

    Gets or sets the file to be used to store data for moov atom making movie file recovery possible in case of a crash during muxing. Null for disabled. (Experimental).

    Declaration
    public string MOOVRecoveryFile { get; set; }
    Property Value
    Type Description
    string

    MaxRAWAudioDrift

    Gets or sets the maximum allowed drift of raw audio samples vs.timestamps in nanoseconds.

    Declaration
    public ulong MaxRAWAudioDrift { get; set; }
    Property Value
    Type Description
    ulong

    MovieTimescale

    Gets or sets the timescale to use in the movie (units per second, 0 == default).

    Declaration
    public uint MovieTimescale { get; set; }
    Property Value
    Type Description
    uint

    MuxOnly

    Gets or sets a value indicating whether to mux only and send data to an output pad instead of a file.

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

    true if mux only; otherwise, false.

    PresentationTime

    Gets or sets a value indicating whether calculate and include presentation/composition time (in addition to decoding time).

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

    ReservedBytesPerSec

    Gets or sets the multiplier for converting reserved-max-duration into bytes of header to reserve, per second, per track.

    Declaration
    public uint ReservedBytesPerSec { get; set; }
    Property Value
    Type Description
    uint

    ReservedMOOVUpdatePeriod

    Gets or sets the when used with reserved-max-duration, periodically updates the index tables with information muxed so far.

    Declaration
    public ulong ReservedMOOVUpdatePeriod { get; set; }
    Property Value
    Type Description
    ulong

    ReservedMaxDuration

    Gets or sets the when set to a value > 0, reserves space for index tables at the beginning of the file..

    Declaration
    public ulong ReservedMaxDuration { get; set; }
    Property Value
    Type Description
    ulong

    ReservedPrefill

    Gets or sets a value indicating whether prefill samples table of reserved duration.

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

    StartGapThreshold

    Gets or sets the threshold for creating an edit list for gaps at the start in nanoseconds.

    Declaration
    public ulong StartGapThreshold { get; set; }
    Property Value
    Type Description
    ulong

    TrakTimescale

    Gets or sets the timescale to use for the tracks (units per second, 0 is automatic).

    Declaration
    public uint TrakTimescale { get; set; }
    Property Value
    Type Description
    uint

    Methods

    CreateBlock()

    Creates the block.

    Declaration
    public MediaBlock CreateBlock()
    Returns
    Type Description
    MediaBlock

    MediaBlock.

    Implements

    IMediaBlockSettings