From: Sebastian Dröge Date: Thu, 25 Jul 2013 08:46:04 +0000 (+0200) Subject: videoencoder: Reset internal state and segments on FLUSH_STOP X-Git-Tag: 1.19.3~511^2~5157 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=291b05b40aadd3ba1646184d024a3cdf8f9f6c1f;p=platform%2Fupstream%2Fgstreamer.git videoencoder: Reset internal state and segments on FLUSH_STOP https://bugzilla.gnome.org/show_bug.cgi?id=656007 --- 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; }