Hello all,
I have some questions about running QT5.5 over Wayland, and playing back video
using a gstreamer pipeline, on an embedded system. We have a QT application and
performance is much slower than when using gstreamer gst-launch1.0 directly. We
have determined that the cause of this is that the video pipeline ends up using
a QGstreamerVideoRenderer rather than something based on waylandsink. This
means, we suspect, an extra copy of the video data, meaning we don't the same
performance.
Looking at the code in qgstreamerplayerservice.cpp, we have
#if defined(Q_WS_MAEMO_6) && defined(__arm__)
m_videoRenderer = new QGstreamerGLTextureRenderer(this);
#elif defined(HAVE_MIR) && defined (__arm__)
m_videoRenderer = new QGstreamerMirTextureRenderer(this, m_session);
#else
m_videoRenderer = new QGstreamerVideoRenderer(this);
#endif
So there are a couple of implementations of video surface renderers for
specific backends, in this case gl and mir.
My thoughts are that I need to add a new class, something like
QGstreamerWaylandRenderer that I can insert at this point to provide a wayland
backend for the video player.
Does this seem like the correct approach? I've been trundling through the code
(and Google) and am making very slow progress , but if there is anyone out
there who can point me in the right direction for documentation or any sort of
architectural information on how all this bolts together, it would definitely
make my life easier!
I do find it a bit odd that there isn't already something in place for this.
There is a QTWayland backend for general GUI stuff, but this gstreamer video
stuff doesn't seem to have the right backend in place to take advantage of the
acceleration of Wayland that we have on the platform.
James
Note: also posted to gstreamer mailing list, so apologies for anyone reading
this twice.
______________________________________________________________________
DSP Group, Inc. automatically scans all emails and attachments using
MessageLabs Email Security System.
_____________________________________________________________________
_______________________________________________
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest