mxfmux: Write This Generation UID into the Identification metadata

It's required according to the standard and we forgot to actually write it to
the file although we stored it in the data structures.
This commit is contained in:
Sebastian Dröge 2016-01-28 15:38:45 +01:00
parent 3a72574c59
commit 3df615a503
3 changed files with 15 additions and 0 deletions

View file

@ -1236,6 +1236,17 @@ mxf_metadata_identification_write_tags (MXFMetadataBase * m,
ret = g_list_prepend (ret, t);
}
if (!mxf_uuid_is_zero (&self->this_generation_uid)) {
t = g_slice_new0 (MXFLocalTag);
memcpy (&t->ul, MXF_UL (THIS_GENERATION_UID), 16);
t->size = 16;
t->data = g_slice_alloc (t->size);
t->g_slice = TRUE;
memcpy (t->data, &self->this_generation_uid, 16);
mxf_primer_pack_add_mapping (primer, 0x3c09, &t->ul);
ret = g_list_prepend (ret, t);
}
return ret;
}

View file

@ -130,6 +130,9 @@ const MXFUL _mxf_ul_table[] = {
{{0x06, 0x0E, 0x2B, 0x34, 0x01, 0x01, 0x01, 0x05,
0x01, 0x02, 0x02, 0x10, 0x02, 0x02, 0x00, 0x00}},
/* Identification */
/* THIS_GENERATION_UID */
{{0x06, 0x0E, 0x2B, 0x34, 0x01, 0x01, 0x01, 0x02,
0x05, 0x20, 0x07, 0x01, 0x01, 0x00, 0x00, 0x00}},
/* COMPANY_NAME */
{{0x06, 0x0E, 0x2B, 0x34, 0x01, 0x01, 0x01, 0x02,
0x05, 0x20, 0x07, 0x01, 0x02, 0x01, 0x00, 0x00}},

View file

@ -63,6 +63,7 @@ typedef enum {
MXF_UL_OPERATIONAL_PATTERN,
MXF_UL_ESSENCE_CONTAINERS,
MXF_UL_DM_SCHEMES,
MXF_UL_THIS_GENERATION_UID,
MXF_UL_COMPANY_NAME,
MXF_UL_PRODUCT_NAME,
MXF_UL_PRODUCT_VERSION,