From a03d29420bd0212ed159b1523075e8eb0ff7d61f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Tue, 23 Oct 2018 09:45:36 +0100 Subject: [PATCH] scaletempo: Implement SEGMENT query https://bugzilla.gnome.org/show_bug.cgi?id=797313 --- gst/audiofx/gstscaletempo.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gst/audiofx/gstscaletempo.c b/gst/audiofx/gstscaletempo.c index 0bbbd56de9..3a719719a5 100644 --- a/gst/audiofx/gstscaletempo.c +++ b/gst/audiofx/gstscaletempo.c @@ -748,6 +748,27 @@ gst_scaletempo_query (GstBaseTransform * trans, GstPadDirection direction, if (direction == GST_PAD_SRC) { switch (GST_QUERY_TYPE (query)) { + case GST_QUERY_SEGMENT: + { + GstFormat format; + gint64 start, stop; + + format = scaletempo->out_segment.format; + + start = + gst_segment_to_stream_time (&scaletempo->out_segment, format, + scaletempo->out_segment.start); + if ((stop = scaletempo->out_segment.stop) == -1) + stop = scaletempo->out_segment.duration; + else + stop = + gst_segment_to_stream_time (&scaletempo->out_segment, format, + stop); + + gst_query_set_segment (query, scaletempo->out_segment.rate, format, + start, stop); + return TRUE; + } case GST_QUERY_LATENCY:{ GstPad *peer;