From a301c9a22b5c442ec072fa9c2fc298f59a9ab21b Mon Sep 17 00:00:00 2001 From: Olivier Crete Date: Thu, 14 Feb 2008 16:25:51 +0000 Subject: [PATCH] gst/rtpmanager/gstrtpbin.c: Ignore streams that did not receive an SR packet when doing synchronisation. Fixes #516160. Original commit message from CVS: Patch by: Olivier Crete * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_associate): Ignore streams that did not receive an SR packet when doing synchronisation. Fixes #516160. --- gst/rtpmanager/gstrtpbin.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gst/rtpmanager/gstrtpbin.c b/gst/rtpmanager/gstrtpbin.c index 7eb82446a7..526cf9577e 100644 --- a/gst/rtpmanager/gstrtpbin.c +++ b/gst/rtpmanager/gstrtpbin.c @@ -778,7 +778,7 @@ gst_rtp_bin_associate (GstRtpBin * bin, GstRtpBinStream * stream, guint8 len, for (walk = client->streams; walk; walk = g_slist_next (walk)) { GstRtpBinStream *ostream = (GstRtpBinStream *) walk->data; - if (ostream->unix_delta < min) + if (ostream->unix_delta && ostream->unix_delta < min) min = ostream->unix_delta; } @@ -789,6 +789,9 @@ gst_rtp_bin_associate (GstRtpBin * bin, GstRtpBinStream * stream, guint8 len, for (walk = client->streams; walk; walk = g_slist_next (walk)) { GstRtpBinStream *ostream = (GstRtpBinStream *) walk->data; + if (ostream->unix_delta == 0) + continue; + ostream->ts_offset = ostream->unix_delta - min; /* delta changed, see how much */