diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp | 2 | ||||
-rw-r--r-- | src/plugins/gstreamer/mediacapture/qgstreamerrecordercontrol.cpp | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp b/src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp index b268592c6..c83e467a6 100644 --- a/src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp +++ b/src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp @@ -107,8 +107,6 @@ QGstreamerCaptureSession::QGstreamerCaptureSession(QGstreamerCaptureSession::Cap qWarning() << QMediaRecorder::Error(e) << ":" << str.toLatin1().constData(); }); m_mediaContainerControl = new QGstreamerMediaContainerControl(this); - - setState(StoppedState); } QGstreamerCaptureSession::~QGstreamerCaptureSession() diff --git a/src/plugins/gstreamer/mediacapture/qgstreamerrecordercontrol.cpp b/src/plugins/gstreamer/mediacapture/qgstreamerrecordercontrol.cpp index 958204803..ba26d8df8 100644 --- a/src/plugins/gstreamer/mediacapture/qgstreamerrecordercontrol.cpp +++ b/src/plugins/gstreamer/mediacapture/qgstreamerrecordercontrol.cpp @@ -115,6 +115,9 @@ void QGstreamerRecorderControl::updateStatus() if (m_status != newStatus) { m_status = newStatus; emit statusChanged(m_status); + // If stop has been called and session state became stopped. + if (m_status == QMediaRecorder::LoadedStatus) + emit stateChanged(m_state); } } @@ -204,7 +207,6 @@ void QGstreamerRecorderControl::stop() m_session->setState(QGstreamerCaptureSession::PreviewState); } - emit stateChanged(m_state); updateStatus(); } |