Expand description
Module for parsing ISO Base Media Format aka video/mp4 streams.
Structs§
- ALAC
Specific Box - Represent an ALACSpecificBox ‘alac’
- AV1Config
Box - See AV1-ISOBMFF § 2.3.3
- Audio
Sample Entry - Auxiliary
Type Property - See HEIF (ISO 23008-12:2017) § 6.5.8
- Avif
Context - Chunk
Offset Box - Composition
Offset Box - ES_
Descriptor - An Elementary Stream Descriptor See MPEG-4 Systems (ISO 14496-1:2010) § 7.2.6.5
- FLAC
Metadata Block - FLAC
Specific Box - Represents a FLACSpecificBox ‘dfLa’
- IccColour
Information - The raw bytes of the ICC profile
- Image
Spatial Extents Property - Item
Properties Box - See ISOBMFF (ISO 14496-12:2020) § 8.11.14.1
- Matrix
- Media
Context - Internal data structures.
- Media
Scaled Time - A time to be scaled by the media’s global (mvhd) timescale.
- Media
Time Scale - The media’s global (mvhd) timescale in units per second.
- Metadata
Box - Represents the contents of ‘ilst’ atoms within a metadata box ‘meta’, parsed as iTunes metadata using the conventional tags.
- Movie
Extends Box - Nclx
Colour Information - Despite Rec. ITU-T H.273 (12/2016) defining the CICP fields as having a
range of 0-255, and only a small fraction of those values being used,
ISOBMFF (ISO 14496-12:2020) § 12.1.5 defines them as 16-bit values in the
colr
box. Since we have no use for the additional range, and it would complicate matters later, we fallibly convert before storing the input. - Opus
Specific Box - Represent an OpusSpecificBox ‘dOps’
- Pixel
Aspect Ratio - Pixel
Information - Protection
Scheme Info Box - Protection
System Specific Header Box - Sample
- Sample
Description Box - Sample
Size Box - Sample
ToChunk - Sample
ToChunk Box - Scheme
Type Box - Sync
Sample Box - Time
Offset - Time
ToSample Box - Track
- Track
Encryption Box - Track
Header Box - Track header box ‘tkhd’
- Track
Reference - Track
Reference Box - Track
Scaled Time - A time to be scaled by the track’s local (mdhd) timescale. Members are time in scale units and the track id.
- Track
Time Scale - The track’s local (mdhd) timescale. Members are timescale units per second and the track id.
- Unsupported
Features - A collection to indicate unsupported features that were encountered during parsing. Since the default behavior for many such features is to ignore them, this often not fatal and there may be several to report.
- Userdata
Box - Represents a userdata box ‘udta’. Currently, only the metadata atom ‘meta’ is parsed.
- VPxConfig
Box - Represent a Video Partition Codec Configuration ‘vpcC’ box (aka vp9). The meaning of each field is covered in detail in “VP Codec ISO Media File Format Binding”.
- Video
Sample Entry
Enums§
- Advisory
Rating - Represents the parental advisory rating on the track, stored within the ‘rtng’ atom.
- Audio
Codec Specific - Codec
Type - Colour
Information - Error
- Describes parser failures.
- Feature
- Genre
- Represents possible contents of the ©gen or gnre atoms within a metadata box. ‘udta.meta.ilst’ may only have either a standard genre box ‘gnre’ or a custom genre box ‘©gen’, but never both at once.
- Image
Mirror - The axis about which the image is mirrored (opposite of flip) Visualized in terms of starting with (⥠) UPWARDS HARPOON WITH BARB LEFT FROM BAR similar to a DIGIT ONE (1)
- Image
Rotation - Rotation in the positive (that is, anticlockwise) direction Visualized in terms of starting with (⥠) UPWARDS HARPOON WITH BARB LEFT FROM BAR similar to a DIGIT ONE (1)
- Item
Property - See ISOBMFF (ISO 14496-12:2020) § 8.11.14.1
Variants with no associated data are recognized but not necessarily supported.
See
Feature
to determine support. - Media
Type - Represents the contents of a ‘stik’ atom that indicates content types within iTunes.
- Parse
Strictness - Sample
Entry - Status
- The return value to the C API
Any detail that needs to be communicated to the caller must be encoded here
since the
Error
type’s associated data is part of the FFI. - Time
Offset Version - Track
Reference Entry - Track
Type - Video
Codec Specific
Constants§
- AVIF_
BRAND - The brand to identify AV1 image items The ‘avif’ brand indicates structural requirements on files See https://aomediacodec.github.io/av1-avif/#image-and-image-collection-brand
- AVIS_
BRAND - The brand to identify AVIF image sequences The ‘avis’ brand indicates structural requirements on files See https://aomediacodec.github.io/av1-avif/#image-and-image-collection-brand
- MIF1_
BRAND - The HEIF image and image collection brand The ‘mif1’ brand indicates structural requirements on files See HEIF (ISO 23008-12:2017) § 10.2.1
- MSF1_
BRAND - The HEIF image sequence brand The ‘msf1’ brand indicates structural requirements on files See HEIF (ISO 23008-12:2017) § 10.3.1
Traits§
- ToUsize
- A trait to indicate a type can be infallibly converted to
usize
. This should only be implemented for infallible conversions, so only unsigned types are valid.
Functions§
- read_
avif - Read the contents of an AVIF file
- read_
mp4 - Read the contents of a box, including sub boxes.
- serialize_
opus_ header - Re-serialize the Opus codec-specific config data as an
OpusHead
packet.