From: Olivier CrĂȘte Date: Sun, 15 May 2016 10:16:23 +0000 (+0200) Subject: rtpmp4gpay: Don't produce timestamps based on byte count X-Git-Tag: 1.10.4~397 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e21cf3bc1c85ff7ad235c36a99ee169784040008;p=platform%2Fupstream%2Fgst-plugins-good.git rtpmp4gpay: Don't produce timestamps based on byte count The GST_BUFFER_OFFSET of output buffers returned to GstRtpBasePayload should reflect the number of "samples" in the unit of the RTP clock in this buffer. If this is not true, then it shouldn't be set. https://bugzilla.gnome.org/show_bug.cgi?id=761943 --- diff --git a/gst/rtp/gstrtpmp4gpay.c b/gst/rtp/gstrtpmp4gpay.c index 44c6cf2..7333b49 100644 --- a/gst/rtp/gstrtpmp4gpay.c +++ b/gst/rtp/gstrtpmp4gpay.c @@ -134,7 +134,6 @@ gst_rtp_mp4g_pay_reset (GstRtpMP4GPay * rtpmp4gpay) GST_DEBUG_OBJECT (rtpmp4gpay, "reset"); gst_adapter_clear (rtpmp4gpay->adapter); - rtpmp4gpay->offset = 0; } static void @@ -540,10 +539,7 @@ gst_rtp_mp4g_pay_flush (GstRtpMP4GPay * rtpmp4gpay) GST_BUFFER_PTS (outbuf) = rtpmp4gpay->first_timestamp; GST_BUFFER_DURATION (outbuf) = rtpmp4gpay->first_duration; - if (rtpmp4gpay->frame_len) { - GST_BUFFER_OFFSET (outbuf) = rtpmp4gpay->offset; - rtpmp4gpay->offset += rtpmp4gpay->frame_len; - } + GST_BUFFER_OFFSET (outbuf) = GST_BUFFER_OFFSET_NONE; if (rtpmp4gpay->discont) { GST_BUFFER_FLAG_SET (outbuf, GST_BUFFER_FLAG_DISCONT); diff --git a/gst/rtp/gstrtpmp4gpay.h b/gst/rtp/gstrtpmp4gpay.h index 7506fad..14fd68a 100644 --- a/gst/rtp/gstrtpmp4gpay.h +++ b/gst/rtp/gstrtpmp4gpay.h @@ -48,8 +48,6 @@ struct _GstRtpMP4GPay GstClockTime first_timestamp; GstClockTime first_duration; gboolean discont; - GstClockTime duration; - guint64 offset; gint rate; gchar *params;