A single generic ISOBMFF box.
container = data: nilwithchildrenleaf = data: binarywith no childrensize_moderecords how the original size field was encoded so serialization can reproduce exact bytes.
Summary
Functions
True when the box holds child boxes rather than a raw payload.
Return the first box matching the type-path, or nil.
Return every box matching the type-path.
Insert new_box into the children of the container found at path.
at is :start, :end, or a zero-based integer index.
True when the box holds a raw payload rather than children.
Return a leaf box's payload bytes, reading the file if it's a FileSlice.
Returns nil for a container.
Remove every box matching the type-path; returns a new tree.
Replace a box's payload, making it a leaf (drops any children).
Apply fun to every box matching the type-path; returns a new tree.
Types
@type t() :: %ISOMedia.Box{ children: [t()], data: binary() | ISOMedia.FileSlice.t() | [binary() | ISOMedia.FileSlice.t()] | nil, size_mode: :compact | :large | :eof, source_offset: non_neg_integer() | nil, source_size: non_neg_integer() | nil, type: String.t(), uuid: <<_::128>> | nil }
Functions
True when the box holds child boxes rather than a raw payload.
Return the first box matching the type-path, or nil.
Return every box matching the type-path.
Insert new_box into the children of the container found at path.
at is :start, :end, or a zero-based integer index.
True when the box holds a raw payload rather than children.
Return a leaf box's payload bytes, reading the file if it's a FileSlice.
Returns nil for a container.
Remove every box matching the type-path; returns a new tree.
Replace a box's payload, making it a leaf (drops any children).
Apply fun to every box matching the type-path; returns a new tree.