#[non_exhaustive]pub enum IsobmffLayout {
Fragmented,
Progressive,
Unknown,
}Expand description
How an ISOBMFF file carries its sample metadata — the discriminator a consumer needs to choose a demuxer.
ISO/IEC 14496-12 allows both shapes and they are demuxed differently: a
fragmented file’s samples are described by moof movie fragments (§8.8,
the CMAF/fMP4 shape), a progressive file’s by moov sample tables (§8.7).
The prober walks the top-level boxes anyway, so it reports what it saw
rather than making every consumer re-walk the chain to find out — the same
reason Detail::Ts carries the stride and phase it measured.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Fragmented
A moof box was seen: fragmented (CMAF / fMP4 / DASH segment).
Progressive
A moov box was seen and no moof: progressive, with sample tables.
Unknown
Neither was seen within the probed region — e.g. a buffer holding only
ftyp and the start of a large mdat. The file is ISOBMFF, but which
shape is undetermined from these bytes; a consumer should read further
rather than assume.
Implementations§
Trait Implementations§
Source§impl Clone for IsobmffLayout
impl Clone for IsobmffLayout
Source§fn clone(&self) -> IsobmffLayout
fn clone(&self) -> IsobmffLayout
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more