diff options
author | Olivier Crete <tester@tester.ca> | 2008-02-14 16:25:51 +0000 |
---|---|---|
committer | Wim Taymans <wim.taymans@gmail.com> | 2008-02-14 16:25:51 +0000 |
commit | c5b175a6890115ba3f30520f844e10b841a92258 (patch) | |
tree | 6ace6b722e20d232721064fb80ea582518e2e36b | |
parent | 4219829c50fcc2cf885553df6ee69ce5aee5965b (diff) | |
download | gst-plugins-bad-c5b175a6890115ba3f30520f844e10b841a92258.tar.gz gst-plugins-bad-c5b175a6890115ba3f30520f844e10b841a92258.tar.bz2 gst-plugins-bad-c5b175a6890115ba3f30520f844e10b841a92258.zip |
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 <tester@tester.ca>
* gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_associate):
Ignore streams that did not receive an SR packet when doing
synchronisation. Fixes #516160.
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | gst/rtpmanager/gstrtpbin.c | 5 |
2 files changed, 12 insertions, 1 deletions
@@ -1,3 +1,11 @@ +2008-02-14 Wim Taymans <wim.taymans@collabora.co.uk> + + Patch by: Olivier Crete <tester@tester.ca> + + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_associate): + Ignore streams that did not receive an SR packet when doing + synchronisation. Fixes #516160. + 2008-02-14 Sebastian Dröge <slomo@circular-chaos.org> * gst/dvdspu/gstdvdspu.c: (gst_dvd_spu_handle_new_spu_buf): diff --git a/gst/rtpmanager/gstrtpbin.c b/gst/rtpmanager/gstrtpbin.c index 7eb82446..526cf957 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 */ |