View Source Membrane.HTTPAdaptiveStream.Manifest.Segment (Membrane HTTP Adaptive Stream plugin v0.12.0)
Structure representing a single manifest segment.
It stores the following fields:
name
- the segment's nameduration
- the segment's total durationbyte_size
- the byte_size of the segment payloadattributes
- the meta attributes associated with the segmenttype
- decides if the structure is a full segment that can exist on its ownor if it hosts and awaits more partial segments
parts
- the partial segments making up the full segment
Link to this section Summary
Types
Structure of partial segment.
Determines if segment is full and independent or partial and consists of several partial segments.
Link to this section Types
@type partial_segment_t() :: %{ independent?: boolean(), duration: segment_duration_t(), byte_size: non_neg_integer() }
Structure of partial segment.
Attributes representing a partial segment:
independent?
- decides if a segment can be played on its own e.g. starts with a keyframe or is an audio sampleduration
- the duration of the partial segmentattributes
- the attributes for the particular partial segment
@type segment_duration_t() :: Membrane.Time.t() | Ratio.t()
@type t() :: %Membrane.HTTPAdaptiveStream.Manifest.Segment{ attributes: [Membrane.HTTPAdaptiveStream.Manifest.SegmentAttribute.t()], byte_size: non_neg_integer(), duration: segment_duration_t(), name: String.t(), parts: [partial_segment_t()], type: type_t() }
@type type_t() :: :full | :partial
Determines if segment is full and independent or partial and consists of several partial segments.