diff options
Diffstat (limited to 'gst/mxf/mxfdemux.c')
-rw-r--r-- | gst/mxf/mxfdemux.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/gst/mxf/mxfdemux.c b/gst/mxf/mxfdemux.c index 33be4378..1bc0e7bf 100644 --- a/gst/mxf/mxfdemux.c +++ b/gst/mxf/mxfdemux.c @@ -1305,9 +1305,8 @@ gst_mxf_demux_handle_header_metadata_resolve_references (GstMXFDemux * demux) MXFMetadataEssenceContainerData, i); for (j = 0; j < demux->content_storage.n_essence_container_data; j++) { - if (mxf_ul_is_equal (&demux-> - content_storage.essence_container_data_uids[j], - &data->instance_uid)) { + if (mxf_ul_is_equal (&demux->content_storage. + essence_container_data_uids[j], &data->instance_uid)) { demux->content_storage.essence_container_data[j] = data; break; } @@ -1677,6 +1676,12 @@ gst_mxf_demux_choose_package (GstMXFDemux * demux) GST_WARNING_OBJECT (demux, "Current package not found, choosing the first best"); + if (demux->preface.primary_package) + ret = demux->preface.primary_package; + if (ret && (ret->type == MXF_METADATA_GENERIC_PACKAGE_TOP_LEVEL_SOURCE + || ret->type == MXF_METADATA_GENERIC_PACKAGE_MATERIAL)) + return ret; + if (!demux->material_package) { GST_ERROR_OBJECT (demux, "No material package"); return NULL; |