diff options
author | Edward Hervey <edward@centricular.com> | 2021-06-23 09:08:33 +0200 |
---|---|---|
committer | Edward Hervey <bilboed@bilboed.com> | 2021-07-21 14:33:19 +0000 |
commit | 11d9abd2d5fdecff3f531e451cdac52f9e68e729 (patch) | |
tree | 59f02d33e9aa14c314e529c942d767de6c3d5b05 /gst | |
parent | dfee771afd10d62c4570580d785cfa09362570ee (diff) | |
download | gstreamer-plugins-bad-11d9abd2d5fdecff3f531e451cdac52f9e68e729.tar.gz |
mxf: Demote error message when resolving valid empty reference
A Source Clip can have zero'd SourcePackageID and SourceTrackID, this indicates
it terminates the source reference chain
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2371>
Diffstat (limited to 'gst')
-rw-r--r-- | gst/mxf/mxfmetadata.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/gst/mxf/mxfmetadata.c b/gst/mxf/mxfmetadata.c index ca9ed7567..ac147d541 100644 --- a/gst/mxf/mxfmetadata.c +++ b/gst/mxf/mxfmetadata.c @@ -3402,6 +3402,16 @@ mxf_metadata_source_clip_resolve (MXFMetadataBase * m, GHashTable * metadata) gchar str[96]; #endif + if (mxf_umid_is_zero (&self->source_package_id)) { + /* S377-1:2019 B.10 Source Clip. + * + * SourcePackageID: The value shall be 32 zero valued bytes to terminate the + * source reference chain. */ + GST_LOG ("Skipping termination source package for source clip %s", + mxf_uuid_to_string (&MXF_METADATA_BASE (self)->instance_uid, str)); + goto chain_up; + } + g_hash_table_iter_init (&iter, metadata); while (g_hash_table_iter_next (&iter, NULL, (gpointer) & current)) { @@ -3420,6 +3430,7 @@ mxf_metadata_source_clip_resolve (MXFMetadataBase * m, GHashTable * metadata) mxf_umid_to_string (&self->source_package_id, str)); } +chain_up: return MXF_METADATA_BASE_CLASS (mxf_metadata_source_clip_parent_class)->resolve (m, metadata); |