diff --git a/gst/camerabin2/gstwrappercamerabinsrc.c b/gst/camerabin2/gstwrappercamerabinsrc.c index a00785f1a9..32fb38ee07 100644 --- a/gst/camerabin2/gstwrappercamerabinsrc.c +++ b/gst/camerabin2/gstwrappercamerabinsrc.c @@ -828,7 +828,6 @@ start_image_capture (GstWrapperCameraBinSrc * self) GstPad *pad, *peer; GST_DEBUG_OBJECT (self, "Starting image capture"); - gst_element_set_state (self->src_vid_src, GST_STATE_READY); /* FIXME - V4L2 source will not close the device until all buffers have came * back. Flushing the pipeline, will ensure it's properly closed, and that @@ -838,6 +837,7 @@ start_image_capture (GstWrapperCameraBinSrc * self) peer = gst_pad_get_peer (pad); gst_object_unref (pad); gst_pad_send_event (peer, gst_event_new_flush_start ()); + gst_element_set_state (self->src_vid_src, GST_STATE_READY); gst_pad_send_event (peer, gst_event_new_flush_stop (TRUE)); gst_object_unref (peer);