diff options
author | Vivia Nikolaidou <vivia@ahiru.eu> | 2017-05-16 12:56:15 +0300 |
---|---|---|
committer | Sebastian Dröge <sebastian@centricular.com> | 2017-05-29 11:03:27 +0300 |
commit | 674d1a2441da9b2c39afd5125017775ad8119d9c (patch) | |
tree | bbd5b6b0d81a85d1e11a80669a2af1870329a002 | |
parent | 396f0f2c54ac8c769a4e872b86bfc31ec185bc57 (diff) | |
download | gstreamer-plugins-good-674d1a2441da9b2c39afd5125017775ad8119d9c.tar.gz |
qtmux: Do not check timecode data for mp4 container
Timecode trak is only supported for mov right now, not for mp4. That
code would otherwise create an invalid trak if the muxed video contained
timecode metadata.
https://bugzilla.gnome.org/show_bug.cgi?id=782684
-rw-r--r-- | gst/isomp4/gstqtmux.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/gst/isomp4/gstqtmux.c b/gst/isomp4/gstqtmux.c index db26296b5..f675b5da2 100644 --- a/gst/isomp4/gstqtmux.c +++ b/gst/isomp4/gstqtmux.c @@ -2523,6 +2523,10 @@ gst_qt_mux_update_timecode (GstQTMux * qtmux) GstBuffer *buf; GstMapInfo map; guint64 offset = qtmux->tc_pos; + GstQTMuxClass *qtmux_klass = (GstQTMuxClass *) (G_OBJECT_GET_CLASS (qtmux)); + + if (qtmux_klass->format != GST_QT_MUX_FORMAT_QT) + return GST_FLOW_OK; g_assert (qtmux->tc_pos != -1); @@ -3025,6 +3029,11 @@ static GstFlowReturn gst_qt_mux_check_and_update_timecode (GstQTMux * qtmux, GstQTPad * pad, GstBuffer * buf, GstFlowReturn ret) { + GstQTMuxClass *qtmux_klass = (GstQTMuxClass *) (G_OBJECT_GET_CLASS (qtmux)); + + if (qtmux_klass->format != GST_QT_MUX_FORMAT_QT) + return ret; + if (buf != NULL && (pad->tc_trak == NULL || qtmux->tc_pos != -1)) { GstVideoTimeCodeMeta *tc_meta = gst_buffer_get_video_time_code_meta (buf); if (tc_meta) { |