From 44f0814855209092381f0f35d3684a57d5a40070 Mon Sep 17 00:00:00 2001 From: Mathieu Duponchelle Date: Sat, 16 Jun 2018 18:23:41 +0200 Subject: [PATCH] pitch: preserve seek event seqnums This was wreaking havoc when used with a downstream audiomixer. https://bugzilla.gnome.org/show_bug.cgi?id=796603 --- ext/soundtouch/gstpitch.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ext/soundtouch/gstpitch.cc b/ext/soundtouch/gstpitch.cc index 41b6621380..c529bd7c2c 100644 --- a/ext/soundtouch/gstpitch.cc +++ b/ext/soundtouch/gstpitch.cc @@ -424,6 +424,7 @@ gst_pitch_src_event (GstPad * pad, GstObject * parent, GstEvent * event) GstSeekType cur_type, stop_type; gint64 cur, stop; gfloat stream_time_ratio; + guint32 seqnum; GST_OBJECT_LOCK (pitch); stream_time_ratio = pitch->priv->stream_time_ratio; @@ -432,6 +433,8 @@ gst_pitch_src_event (GstPad * pad, GstObject * parent, GstEvent * event) gst_event_parse_seek (event, &rate, &format, &flags, &cur_type, &cur, &stop_type, &stop); + seqnum = gst_event_get_seqnum (event); + gst_event_unref (event); if (format == GST_FORMAT_TIME || format == GST_FORMAT_DEFAULT) { @@ -441,6 +444,7 @@ gst_pitch_src_event (GstPad * pad, GstObject * parent, GstEvent * event) event = gst_event_new_seek (rate, format, flags, cur_type, cur, stop_type, stop); + gst_event_set_seqnum (event, seqnum); res = gst_pad_event_default (pad, parent, event); } else { GST_WARNING_OBJECT (pitch,