Références |
SMPTE 377-1-2011 - MXF - File Format Specification Chapitre B.17 - Timecode Component P125 |
Modèle KLV | Local Sets |
Universal Label |
06.0e.2b.34.02.53.01.01.0d.01.01.01.01.01.14.00 (SMPTE)
|
Timecode Component est utilisé pour définir un timecode continu sur la durée de ce composant.
Le Timecode Component est un enfant d'un KLV Sequence, présent dans chaque Package :
Il n'y aura qu'un seul Timecode Component dans Material Package et dans Source Package.
Voici un exemple d'interprétation d'un Timecode Component :
╓────────────────────────────────────────────────────────────────────────────────
║ 3C0A - Instance ID ║ 9ee8a2b8.196f4a56.a52befe8.84bf221d
║ 0201 - Data Definition ║ 060e2b34.04010101.01030201.01000000 (Timecode Track (with inactive user bits))
║ 0202 - Duration ║ 1
║ 1502 - Rounded Timecode Base ║ 24
║ 1501 - Start Timecode ║ 0
║ 1503 - Drop Frame ║ False
╙────────────────────────────────────────────────────────────────────────────────
Data Definition a déjà été étudié dans Sequence. Pour rappel, il est l'identifiant du type de données dans ce Set.
Duration également vu Sequence, c'est la durée en seconde.
Rounded Timecode Base est simplement le nombre d'images par seconde, arrondi au chiffre supérieur. Les seules valeurs seront donc 24, 25, 30, 48, 60, 96, 120.
Start Timecode spécifie à partir de quand la piste (Track) débute. Elle est exprimé en frame à partir du timecode 00:00:00:00.
Drop Frame spécifie si on a le droit à supprimer des frames lors d'une désynchronisation. Elle sera toujours à False.
Voir l'étude du parsing d'un KLV Local Set dans Preface.
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 | uint64 | 8 octets | Fixe | Non | |
1502 | uint16 | 2 octets | Fixe | Oui | |
1501 | int64 (1) | 8 octets | Fixe | Oui | |
1503 | booléen | 1 octet | Fixe | 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 → Timecode Component
UL = 06.0E.2B.34.02.53.01.vv.0D.01.01.01.01.01.14.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 : Timecode Component
^^------------ MXF Set Definition : Timecode Component