Références |
SMPTE 377-1-2011 - MXF - File Format Specification Chapitre B.16 - Sequence - Timecode P125 Chapitre B.19 - Sequence - Picture P126 Chapitre B.22 - Sequence - Sound P127 Chapitre B.25 - Sequence - Data P128 Chapitre B.28 - Sequence - Descriptive Metadata (DM) P129 |
Modèle KLV | Local Sets |
Universal Label |
06.0e.2b.34.02.53.01.01.0d.01.01.01.01.01.0f.00 (SMPTE)
|
Chaque KLV Timeline Track et Static Track possède un KLV Sequence, quelques exemples de suite logique :
Si Timeline Track définie une piste, considérez Sequence comme la partie de la piste qu'on doit traiter. Dans notre cas, Sequence va gérer l'entièreté de la piste en question.
Si vous voulez une version imagée, voyez cela comme un tableau : chaque ligne va représenter une piste (Track) et chaque colonne, une séquence (Sequence); sauf qu'ici, nous aurons qu'une colonne très longue :)
Dans nos exemples, notre durée de séquence sera de seulement "1" : normal, notre MXF d'exemple est de seulement 1 seconde ;-)
Voici les cinq exemples de Sequence.
L'une venant du bloc Material Package (lié au MXF et à la timeline) :
Timeline Track (1):
╓──── Sequence #1 ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
║ 3C0A - Instance UID ║ d329b223.05f444f3.b53d99a4.3736bc4f
║ 0201 - Data Definition ║ 060e2b34.04010101.01030201.01000000 (Timecode track with inactive user bits)
║ 0202 - Duration ║ 1
║ 1001 - Structural Components UID ║ 1 item(s): 9ee8a2b8.196f4a56.a52befe8.84bf221d
╙────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Timeline Track (2) :
╓──── Sequence #2 ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
║ 3C0A - Instance UID ║ 26be6965.2e49401a.9403760e.698fbb80
║ 0201 - Data Definition ║ 060e2b34.04010101.01030202.01000000 (Picture Essence Track)
║ 0202 - Duration ║ 1
║ 1001 - Structural Components UID ║ 1 item(s): 904cc9e3.ad1f47ef.87d5d409.0104e8e1
╙────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Et l'autre venant du bloc Source Package (lié aux essences) :
Timeline Track (1) :
╓──── Sequence #1 ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
║ 3C0A - Instance UID ║ d5e6616d.fbcc42eb.bbbda96f.9d356068
║ 0201 - Data Definition ║ 060e2b34.04010101.01030201.01000000 (Timecode track with inactive user bits)
║ 0202 - Duration ║ 1
║ 1001 - Structural Components UID ║ 1 item(s): 67b4b283.bb5a4df3.ba966abc.613f4490
╙────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Timeline Track (2) :
╓──── Sequence #2 ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
║ 3C0A - Instance UID ║ d424bd75.6f84499e.8728eee5.daa65edf
║ 0201 - Data Definition ║ 060e2b34.04010101.01030202.01000000 (Picture Essence Track)
║ 0202 - Duration ║ 1
║ 1001 - Structural Components UID ║ 1 item(s): cca28361.82d049f0.a685a683.46bba614
╙────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Static Track (3) :
╓──── Sequence #3 ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
║ 3C0A - Instance UID ║ 416f1c91.f8174e8b.a453cddc.f013865c
║ 0201 - Data Definition ║ 060e2b34.04010101.01030201.10000000 (Descriptive Metadata Track)
║ 1001 - Structural Components UID ║ 1 item(s): 65cb069c.ff594985.bf9651cd.7e6f200d
╙────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Data Definition est un identifiant (Universal Label) pour définir le type de données dans le Set. Voici les différents Universal Label que vous pourrez rencontrer :
Universal Label | Description |
---|---|
060e2b34.04010101.01030201.01000000 |
Timecode Track |
060e2b34.04010101.01030202.01000000 |
Picture Essence Track |
060e2b34.04010101.01030202.02000000 |
Sound Essence Track |
060e2b34.04010101.01030202.03000000 |
Data Essence Track |
060e2b34.04010101.01030201.10000000 |
Descriptive Metadata Track |
L'Universal Label Descriptive Metadata Track sera utilisé si l'enfant sera Metadata Descriptive Segment :
Duration disparait quand son père Track est de type Static Track : Static Track définit qu'il utilisera toute la piste, il est donc inutile de préciser une durée dans Sequence.
Structural Components UID va faire lien avec une structure de données additionnelles via son Instance ID. Selon l'endroit, on aura comme enfant un Timecode Component, un Source Clip ou bien un Descriptive Metadata (DM) Segment.
Voir l'étude du parsing d'un KLV Local Set dans Preface, avec en supplément :
Nous n'avons rien de nouveau qui n'a pas déjà été étudié dans les autres chapitres.
Voici un exemple de données brutes (1er Sequence) au format hexadécimal avec un code couleur pour les différentes parties :
Local Tag | Nom de l'attribut | Type | Taille (*) | Fixe/Variable SMPTE | Obligatoire |
---|---|---|---|---|---|
3C0A | UUID | 16 octets | Fixe | Oui | |
0201 | UUID (UL) | 16 octets | Fixe | Oui | |
0202 | int64 (1) | 8 octets | Fixe | Non | |
1001 | Batch-UL | 8+16n = 24 octets | Variable | Oui |
(*) N'oubliez pas que les tailles sont purement indicatives car elles sont dynamiques et non fixes et dépendent des
(1) Ce n'est pas uint64 car le nombre peut-être négatif dans certaines occasions (mais jamais pour indiquer une taille ou une durée)
Interchange Object → Structural Component → Sequence
UL = 06.0E.2B.34.02.53.01.vv.0D.01.01.01.01.01.0F.00
^^------------------------------ Item Designator : Organizationally registered
^^--------------------------- Organization : AAF
^^------------------------ Application : MXF / AAF Association Structural Metadata Sets
^^--------------------- Structure Version : Structure Version 1
^^------------------ Structure Kind : MXF / AAF Association compatible sets and packs
^^--------------- MXF Set Definition : Sequence
^^------------ MXF Set Definition : Sequence