From cd3d5405225a328a0b2fa377823059723395a2ea Mon Sep 17 00:00:00 2001 From: Yoann Lopes Date: Thu, 23 Jul 2015 15:13:24 +0200 Subject: GStreamer: refactored widget and window control. Instead of always using xvimagesink as GStreamer backend for the widget and window control (works only with X11), we now try to pick a video sink that fits the current configuration. It first tries a set of known video sinks that can work with the Qt platform plugin in use. If none is available, it dynamically picks a video sink available on the system that can be used with our backend. Even if the video sink is now picked in a smarter way, xcb is still the only supported platform plugin. The reason is that it's the only Unix plugin which can provide a valid native window handle. Additional work is needed to support other plugins like wayland or directfb. Change-Id: I3843dea363d6a0b85a6cc1f2952783b743e48ac6 Reviewed-by: Christian Stromme --- src/plugins/gstreamer/mediaplayer/qgstreamerplayerservice.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/plugins/gstreamer/mediaplayer') diff --git a/src/plugins/gstreamer/mediaplayer/qgstreamerplayerservice.cpp b/src/plugins/gstreamer/mediaplayer/qgstreamerplayerservice.cpp index 48cbd937a..69250c0b3 100644 --- a/src/plugins/gstreamer/mediaplayer/qgstreamerplayerservice.cpp +++ b/src/plugins/gstreamer/mediaplayer/qgstreamerplayerservice.cpp @@ -99,8 +99,8 @@ QGstreamerPlayerService::QGstreamerPlayerService(QObject *parent): #else m_videoWindow = new QGstreamerVideoWindow(this); #endif - // 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; @@ -109,8 +109,8 @@ QGstreamerPlayerService::QGstreamerPlayerService(QObject *parent): #if defined(HAVE_WIDGETS) m_videoWidget = 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. + // 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_videoWidget->videoSink()) { delete m_videoWidget; -- cgit v1.2.3