diff options
Diffstat (limited to 'gst')
-rw-r--r-- | gst/rtpmanager/gstrtpjitterbuffer.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/gst/rtpmanager/gstrtpjitterbuffer.c b/gst/rtpmanager/gstrtpjitterbuffer.c index d48bc40f..2e52a70b 100644 --- a/gst/rtpmanager/gstrtpjitterbuffer.c +++ b/gst/rtpmanager/gstrtpjitterbuffer.c @@ -482,11 +482,13 @@ gst_jitter_buffer_sink_parse_caps (GstRtpJitterBuffer * jitterbuffer, GST_DEBUG_OBJECT (jitterbuffer, "got clock-base %" G_GINT64_FORMAT, priv->clock_base); - /* first expected seqnum */ - if (gst_structure_get_uint (caps_struct, "seqnum-base", &val)) - priv->next_seqnum = val; - else - priv->next_seqnum = -1; + /* first expected seqnum, only update when we didn't have a previous base. */ + if (priv->next_seqnum == -1) { + if (gst_structure_get_uint (caps_struct, "seqnum-base", &val)) + priv->next_seqnum = val; + else + priv->next_seqnum = -1; + } GST_DEBUG_OBJECT (jitterbuffer, "got seqnum-base %d", priv->next_seqnum); |