diff options
author | Sebastian Dröge <sebastian@centricular.com> | 2017-06-27 10:47:44 +0300 |
---|---|---|
committer | Sebastian Dröge <sebastian@centricular.com> | 2017-06-27 10:47:44 +0300 |
commit | 830e89b7e9418c7039021ebc4060d5c922e928b0 (patch) | |
tree | bdf7c96123ae2d9a0c3bed2bb112f45e9f97232f /gst/mxf/mxfvc3.c | |
parent | ab9d87f168a20b48a3a7a718e621308d5778e257 (diff) | |
download | gstreamer-plugins-bad-830e89b7e9418c7039021ebc4060d5c922e928b0.tar.gz |
mxfdemux: Take temporal reordering from the index table into account
This is needed to know the PTS, without that we only know the DTS and
using that also for the PTS is wrong unless we have an intra-only codec.
If we can't get the temporal reordering from the index table, don't set
any PTS for non-intra-only codecs and let decoders figure out something.
https://bugzilla.gnome.org/show_bug.cgi?id=784027
Diffstat (limited to 'gst/mxf/mxfvc3.c')
-rw-r--r-- | gst/mxf/mxfvc3.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gst/mxf/mxfvc3.c b/gst/mxf/mxfvc3.c index 2f2e5b074..638cffa3a 100644 --- a/gst/mxf/mxfvc3.c +++ b/gst/mxf/mxfvc3.c @@ -138,7 +138,8 @@ mxf_vc3_get_track_wrapping (const MXFMetadataTimelineTrack * track) static GstCaps * mxf_vc3_create_caps (MXFMetadataTimelineTrack * track, GstTagList ** tags, - MXFEssenceElementHandleFunc * handler, gpointer * mapping_data) + gboolean * intra_only, MXFEssenceElementHandleFunc * handler, + gpointer * mapping_data) { MXFMetadataFileDescriptor *f = NULL; MXFMetadataGenericPictureEssenceDescriptor *p = NULL; @@ -186,6 +187,7 @@ mxf_vc3_create_caps (MXFMetadataTimelineTrack * track, GstTagList ** tags, *tags = gst_tag_list_new_empty (); gst_tag_list_add (*tags, GST_TAG_MERGE_APPEND, GST_TAG_VIDEO_CODEC, "VC-3 Video", NULL); + *intra_only = TRUE; return caps; } |