View Source Membrane.MP4.Track (Membrane MP4 plugin v0.31.0)
A module defining a structure that represents an MPEG-4 track.
All new samples of a track must be stored in the structure first in order to build a sample table of a regular MP4 container. Samples that were stored can be flushed later in form of chunks.
Summary
Types
@type t() :: %Membrane.MP4.Track{ chunk_dts_overbound: integer() | nil, chunk_duration: non_neg_integer() | nil, duration: non_neg_integer() | nil, id: pos_integer(), movie_duration: non_neg_integer() | nil, sample_table: Membrane.MP4.Track.SampleTable.t(), stream_format: struct(), timescale: pos_integer() }
Functions
@spec finalize(t(), pos_integer()) :: t()
@spec flush_chunk(t(), non_neg_integer()) :: {binary(), t()}
@spec new(pos_integer(), struct(), non_neg_integer() | nil) :: t()
@spec store_sample(t(), Membrane.Buffer.t()) :: t()