pub struct Preface {
pub interchange: InterchangeObjectFields,
pub last_modified_date: MxfTimestamp,
pub version: u16,
pub object_model_version: Option<u32>,
pub primary_package: Option<UlBytes>,
pub identifications: Vec<UlBytes>,
pub content_storage: UlBytes,
pub operational_pattern: UlBytes,
pub essence_containers: Vec<UlBytes>,
pub dm_schemes: Vec<UlBytes>,
pub dark: Vec<(u16, Vec<u8>)>,
}Expand description
The Preface Set — SMPTE ST 377-1:2019 Annex A.2: the file’s overall
metadata (modification time, Operational Pattern, Essence Container /
Descriptive Metadata scheme inventory) and strong references to the
Identification history and the ContentStorage Set.
Properties marked “dyn” in Annex A.2 (ApplicationSchemes,
IsRIPPresent — no fixed static local tag; a real Primer Pack must be
consulted to learn which tag a given file used) are preserved
byte-for-byte in dark rather than individually typed in this first
pass — see docs/st377-1.md’s Scope section.
Fields§
§interchange: InterchangeObjectFieldsInterchange Object (A.1) base properties.
last_modified_date: MxfTimestampLast Modified Date (0x3B02, Req).
version: u16Version (0x3B05, Req) — major*256 + minor; VERSION_1_3 for
this revision.
object_model_version: Option<u32>Object Model Version (0x3B07, Opt).
primary_package: Option<UlBytes>Primary Package (0x3B08, Opt) — weak reference (Instance UID) to
this file’s primary Material Package, if any.
identifications: Vec<UlBytes>Identifications (0x3B06, E/req — encoder-required, but a
decoder must not fail if it’s absent, per Annex A.2’s “Req?” column)
— strong references to every Identification Set recording a
modification to this file. Empty if the property was absent on
parse.
content_storage: UlBytesContent Storage (0x3B03, Req) — strong reference to the
ContentStorage Set.
operational_pattern: UlBytesOperational Pattern (0x3B09, Req) — copy of the Partition Pack’s
own value.
essence_containers: Vec<UlBytes>EssenceContainers (0x3B0A, Req) — Batch of Essence Container ULs
used in/referenced by this file.
dm_schemes: Vec<UlBytes>DM Schemes (0x3B0B, Req) — Batch of Descriptive Metadata Scheme
ULs used in this file.
dark: Vec<(u16, Vec<u8>)>Every other property found on parse, including any “dyn”-tagged
optional property (ApplicationSchemes/IsRIPPresent) and any
private/dark extension — preserved byte-for-byte, not decoded.
Trait Implementations§
impl Eq for Preface
Source§impl Serialize for Preface
impl Serialize for Preface
Source§type Error = Error
type Error = Error
Parse impl, but need not be).Source§fn serialized_len(&self) -> usize
fn serialized_len(&self) -> usize
serialize_into will write.