diff options
author | Yoann Lopes <yoann.lopes@theqtcompany.com> | 2015-08-24 14:31:24 +0200 |
---|---|---|
committer | Yoann Lopes <yoann.lopes@theqtcompany.com> | 2015-08-24 14:36:13 +0200 |
commit | a2244c9b7aa11e386c3331cbbc36336fb8fea3b9 (patch) | |
tree | a77ac99aa38c40e98aa483795e3cb8061f404203 /src/plugins/gstreamer/mediacapture | |
parent | 31fce88b3fcdbb4d4b2b9a889d24e25c3a5c9507 (diff) | |
parent | 008d20e0ece4c6dac148915b998a0005657d73a1 (diff) |
Merge remote-tracking branch 'origin/5.5' into 5.6
Conflicts:
src/imports/multimedia/qdeclarativeaudio.cpp
Change-Id: I57c6252b084e4ed796f6f308b2e0c717d0f59b13
Diffstat (limited to 'src/plugins/gstreamer/mediacapture')
-rw-r--r-- | src/plugins/gstreamer/mediacapture/qgstreamercaptureservice.cpp | 9 | ||||
-rw-r--r-- | src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp | 4 |
2 files changed, 6 insertions, 7 deletions
diff --git a/src/plugins/gstreamer/mediacapture/qgstreamercaptureservice.cpp b/src/plugins/gstreamer/mediacapture/qgstreamercaptureservice.cpp index bf9b474d6..a29c1d26f 100644 --- a/src/plugins/gstreamer/mediacapture/qgstreamercaptureservice.cpp +++ b/src/plugins/gstreamer/mediacapture/qgstreamercaptureservice.cpp @@ -102,8 +102,8 @@ QGstreamerCaptureService::QGstreamerCaptureService(const QString &service, QObje m_videoRenderer = new QGstreamerVideoRenderer(this); m_videoWindow = new QGstreamerVideoWindow(this); - // If the GStreamer sink element is not available (xvimagesink), don't provide - // the video window control since it won't work anyway. + // If the GStreamer video sink is not available, don't provide the video window control since + // it won't work anyway. if (!m_videoWindow->videoSink()) { delete m_videoWindow; m_videoWindow = 0; @@ -112,9 +112,8 @@ QGstreamerCaptureService::QGstreamerCaptureService(const QString &service, QObje #if defined(HAVE_WIDGETS) m_videoWidgetControl = new QGstreamerVideoWidgetControl(this); - // If the GStreamer sink element is not available (xvimagesink or ximagesink), don't provide - // the video widget control since it won't work anyway. - // QVideoWidget will fall back to QVideoRendererControl in that case. + // If the GStreamer video sink is not available, don't provide the video widget control since + // it won't work anyway. QVideoWidget will fall back to QVideoRendererControl in that case. if (!m_videoWidgetControl->videoSink()) { delete m_videoWidgetControl; m_videoWidgetControl = 0; diff --git a/src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp b/src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp index 3238e5c21..77d8987f9 100644 --- a/src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp +++ b/src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp @@ -776,11 +776,11 @@ void QGstreamerCaptureSession::setState(QGstreamerCaptureSession::State newState if (!m_waitingForEos) { m_waitingForEos = true; //qDebug() << "Waiting for EOS"; + // Unless gstreamer is in GST_STATE_PLAYING our EOS message will not be received. + gst_element_set_state(m_pipeline, GST_STATE_PLAYING); //with live sources it's necessary to send EOS even to pipeline //before going to STOPPED state gst_element_send_event(m_pipeline, gst_event_new_eos()); - // Unless gstreamer is in GST_STATE_PLAYING our EOS message will not be received. - gst_element_set_state(m_pipeline, GST_STATE_PLAYING); return; } else { |