From 291b05b40aadd3ba1646184d024a3cdf8f9f6c1f Mon Sep 17 00:00:00 2001 From: =?utf8?q?Sebastian=20Dr=C3=B6ge?= Date: Thu, 25 Jul 2013 10:46:04 +0200 Subject: [PATCH] videoencoder: Reset internal state and segments on FLUSH_STOP https://bugzilla.gnome.org/show_bug.cgi?id=656007 --- gst-libs/gst/video/gstvideoencoder.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gst-libs/gst/video/gstvideoencoder.c b/gst-libs/gst/video/gstvideoencoder.c index 97e0ba1..006175d 100644 --- a/gst-libs/gst/video/gstvideoencoder.c +++ b/gst-libs/gst/video/gstvideoencoder.c @@ -1018,6 +1018,14 @@ gst_video_encoder_sink_event_default (GstVideoEncoder * encoder, } break; } + case GST_EVENT_FLUSH_STOP:{ + GST_VIDEO_ENCODER_STREAM_LOCK (encoder); + gst_segment_init (&encoder->input_segment, GST_FORMAT_TIME); + gst_segment_init (&encoder->output_segment, GST_FORMAT_TIME); + gst_video_encoder_reset (encoder, FALSE); + GST_VIDEO_ENCODER_STREAM_UNLOCK (encoder); + break; + } default: break; } -- 2.7.4