pub struct PartSpec {
pub uri: String,
pub duration: f64,
pub independent: bool,
pub byte_range: Option<ByteRange>,
pub gap: bool,
pub extra_attrs: Vec<(String, String)>,
}Expand description
A single partial segment (“part”) of a MediaSegment — RFC 8216bis
§4.4.4.9 (#EXT-X-PART).
A part is an independently addressable CMAF chunk (a moof+mdat fragment)
covering a sub-duration of its parent segment; a client can fetch and play it
before the parent segment is complete. Parts are emitted as #EXT-X-PART
lines immediately before the parent segment’s #EXTINF.
Fields§
§uri: StringThe part URI (e.g. "seg0.1.m4s").
duration: f64The part duration in seconds (e.g. 0.334).
independent: boolIf true, render ,INDEPENDENT=YES — the part begins with an
independently decodable frame (a sync sample). RFC 8216bis §4.4.4.9.
byte_range: Option<ByteRange>BYTERANGE attribute (RFC 8216bis §4.4.4.9) — the part is a
sub-range of the resource named by Self::uri, same <n>[@<o>]
format as MediaSegment::byte_range. None when the part is the
entire resource.
gap: boolGAP attribute (RFC 8216bis §4.4.4.9) — true if this partial
segment is not actually available (a hole in the part list).
extra_attrs: Vec<(String, String)>Unmodeled attributes, retained so REQ- prefixed names can fire
RFC 8216bis §8 row 12. Sorted by name on parse (deterministic).