summaryrefslogtreecommitdiff
path: root/gst/audioresample
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian@centricular.com>2020-05-26 22:49:44 +0300
committerGStreamer Merge Bot <gitlab-merge-bot@gstreamer-foundation.org>2020-05-27 17:06:08 +0000
commitbf0cffc4744b3d7badb9564446aa871d1c0beeed (patch)
treeccc63236eef2c61e7098294b394112476fa9167e /gst/audioresample
parent6d423cbba26d22476675b481afa11c588792ebf7 (diff)
downloadgstreamer-plugins-base-bf0cffc4744b3d7badb9564446aa871d1c0beeed.tar.gz
audioresample: Drain resampler and reset timestamp tracking on stream-start event too
And also reset timestamp tracking on EOS events as more data might come afterwards with a new stream-start event. This keeps the code the same. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/670>
Diffstat (limited to 'gst/audioresample')
-rw-r--r--gst/audioresample/gstaudioresample.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/gst/audioresample/gstaudioresample.c b/gst/audioresample/gstaudioresample.c
index 74e8db93e..b79d5c4b7 100644
--- a/gst/audioresample/gstaudioresample.c
+++ b/gst/audioresample/gstaudioresample.c
@@ -652,7 +652,9 @@ gst_audio_resample_sink_event (GstBaseTransform * base, GstEvent * event)
resample->samples_out = 0;
resample->need_discont = TRUE;
break;
+ case GST_EVENT_STREAM_START:
case GST_EVENT_SEGMENT:
+ case GST_EVENT_EOS:
if (resample->converter) {
gsize latency =
gst_audio_converter_get_max_latency (resample->converter);
@@ -668,14 +670,6 @@ gst_audio_resample_sink_event (GstBaseTransform * base, GstEvent * event)
resample->samples_out = 0;
resample->need_discont = TRUE;
break;
- case GST_EVENT_EOS:
- if (resample->converter) {
- gsize latency =
- gst_audio_converter_get_max_latency (resample->converter);
- gst_audio_resample_push_drain (resample, latency);
- }
- gst_audio_resample_reset_state (resample);
- break;
default:
break;
}