diff --git a/src/VideoStreaming/VideoReceiver.cc b/src/VideoStreaming/VideoReceiver.cc index 5d6e27f3115995528dd466ae49d6a2b0e93a6931..0a58ff8d02a2743562332c3230dd69a92405f9d3 100644 --- a/src/VideoStreaming/VideoReceiver.cc +++ b/src/VideoStreaming/VideoReceiver.cc @@ -323,7 +323,9 @@ void VideoReceiver::stop() { #if defined(QGC_GST_STREAMING) qCDebug(VideoReceiverLog) << "stop()"; - if (_pipeline != NULL && !_stopping) { + if(!_streaming) { + _shutdownPipeline(); + } else if (_pipeline != NULL && !_stopping) { qCDebug(VideoReceiverLog) << "Stopping _pipeline"; gst_element_send_event(_pipeline, gst_event_new_eos()); _stopping = true;