typedef struct MXFContext {
UID *packages_refs;
int packages_count;
- UID *essence_container_data_sets_refs;
- int essence_container_data_sets_count;
MXFMetadataSet **metadata_sets;
int metadata_sets_count;
const uint8_t *sync_key;
url_fskip(pb, 4); /* useless size of objects, always 16 according to specs */
get_buffer(pb, (uint8_t *)mxf->packages_refs, mxf->packages_count * sizeof(UID));
break;
- case 0x1902:
- mxf->essence_container_data_sets_count = get_be32(pb);
- if (mxf->essence_container_data_sets_count >= UINT_MAX / sizeof(UID))
- return -1;
- mxf->essence_container_data_sets_refs = av_malloc(mxf->essence_container_data_sets_count * sizeof(UID));
- url_fskip(pb, 4); /* useless size of objects, always 16 according to specs */
- get_buffer(pb, (uint8_t *)mxf->essence_container_data_sets_refs, mxf->essence_container_data_sets_count * sizeof(UID));
- break;
}
return 0;
}
int i;
av_freep(&mxf->packages_refs);
- av_freep(&mxf->essence_container_data_sets_refs);
for (i = 0; i < mxf->metadata_sets_count; i++) {
switch (mxf->metadata_sets[i]->type) {
case MultipleDescriptor: