summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gsttools/qgstreamerplayersession.cpp8
-rw-r--r--src/gsttools/qgstreamervideorenderer.cpp1
-rw-r--r--src/multimedia/doc/src/qtmultimedia-index.qdoc6
-rw-r--r--src/multimedia/doc/src/qtmultimedia5.qdoc2
4 files changed, 11 insertions, 6 deletions
diff --git a/src/gsttools/qgstreamerplayersession.cpp b/src/gsttools/qgstreamerplayersession.cpp
index bd402fb3c..f21c94c5c 100644
--- a/src/gsttools/qgstreamerplayersession.cpp
+++ b/src/gsttools/qgstreamerplayersession.cpp
@@ -47,7 +47,7 @@
#include <private/gstvideoconnector_p.h>
#endif
#include <private/qgstutils_p.h>
-#include <private/qgstutils_p.h>
+#include <private/qvideosurfacegstsink_p.h>
#include <gst/gstvalue.h>
#include <gst/base/gstbasesrc.h>
@@ -60,6 +60,7 @@
#include <QtCore/qdebug.h>
#include <QtCore/qdir.h>
#include <QtCore/qstandardpaths.h>
+#include <qvideorenderercontrol.h>
//#define DEBUG_PLAYBIN
//#define DEBUG_VO_BIN_DUMP
@@ -338,6 +339,11 @@ void QGstreamerPlayerSession::loadFromUri(const QNetworkRequest &request)
#endif
if (m_request.url().scheme() == QLatin1String("gst-pipeline")) {
+ // Set current surface to video sink before creating a pipeline.
+ auto renderer = qobject_cast<QVideoRendererControl*>(m_videoOutput);
+ if (renderer)
+ QVideoSurfaceGstSink::setSurface(renderer->surface());
+
QString url = m_request.url().toString(QUrl::RemoveScheme);
QString pipeline = QUrl::fromPercentEncoding(url.toLatin1().constData());
GError *err = nullptr;
diff --git a/src/gsttools/qgstreamervideorenderer.cpp b/src/gsttools/qgstreamervideorenderer.cpp
index 25fc33cb3..c2226d658 100644
--- a/src/gsttools/qgstreamervideorenderer.cpp
+++ b/src/gsttools/qgstreamervideorenderer.cpp
@@ -113,7 +113,6 @@ void QGstreamerVideoRenderer::setSurface(QAbstractVideoSurface *surface)
if (m_surface) {
connect(m_surface.data(), SIGNAL(supportedFormatsChanged()),
this, SLOT(handleFormatChange()));
- QVideoSurfaceGstSink::setSurface(m_surface);
}
if (wasReady != isReady())
diff --git a/src/multimedia/doc/src/qtmultimedia-index.qdoc b/src/multimedia/doc/src/qtmultimedia-index.qdoc
index 5e4ba3c58..c2734f4a9 100644
--- a/src/multimedia/doc/src/qtmultimedia-index.qdoc
+++ b/src/multimedia/doc/src/qtmultimedia-index.qdoc
@@ -53,9 +53,9 @@
The QML types can be imported into your applciation using the following
import statement in your \c {.qml} file.
- \code
- import QtMultimedia 5.8
- \endcode
+ \qml \QtMinorVersion
+ import QtMultimedia 5.\1
+ \endqml
If you intend to use the C++ classes in your application, include the C++
definitions using the following directive:
diff --git a/src/multimedia/doc/src/qtmultimedia5.qdoc b/src/multimedia/doc/src/qtmultimedia5.qdoc
index 28060a0cc..aec3d99d0 100644
--- a/src/multimedia/doc/src/qtmultimedia5.qdoc
+++ b/src/multimedia/doc/src/qtmultimedia5.qdoc
@@ -26,7 +26,7 @@
****************************************************************************/
/*!
-\qmlmodule QtMultimedia 5.8
+\qmlmodule QtMultimedia 5.\QtMinorVersion
\title Qt Multimedia QML Types
\ingroup qmlmodules
\brief Provides QML types for multimedia support.