Public bug reported:
Qt5 can render directly to KMS (that is, without X11 or Wayland running)
based on its EGLFS platform and the Mesa3D GBM library. This is
generally useful for scenarios with fullscreen applications that run all
the time, like a media center on a HTPC. Using a system like X11 or
Wayland in such cases is overkill, since as said, there will only ever
be one graphical application active at the same time, and said
application will run in fullscreen mode.
Qt5 based applications that want to use GStreamer 1.x for video playback
currently can choose to either use QtMultimedia or qmlglsink+extra
playback code. A common choice is qmlglsink+gstplayer. The benefit of
qmlglsink is that it is maintained by the GStreamer developers, and is
integrated with the GStreamer OpenGL stack.
However, the qmlglsink from the current gstreamer1.0-plugins-good
package from Ubuntu 18.04 does not work when using EGLFS on top of KMS.
This is because qmlglsink needs to access the EGLDisplay handle that Qt5
is using. Currently, this is done through the QPlatformNativeInterface
nativeResourceForWindow() function. This class can be found in the
qpa/qplatformnativeinterface.h header. And this header in turn is
present in the qtbase5-private-dev package.
The simple solution to this is to make sure that header is present when
gstreamer1.0-plugins-good is being built. Then, the relevant code paths
in ext/qt/gstqtglutility.cc are activated (via #ifdefs), and qmlglsink
can run with EGLFS on top of KMS.
** Affects: gst-plugins-good1.0 (Ubuntu)
Importance: Undecided
Status: New
** Tags: gstreamer kms qt5
--
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to gst-plugins-good1.0 in Ubuntu.
https://bugs.launchpad.net/bugs/1804452
Title:
qmlglsink from gstreamer1.0-plugins-good 1.14.1 is not built with
proper QPA headers
Status in gst-plugins-good1.0 package in Ubuntu:
New
Bug description:
Qt5 can render directly to KMS (that is, without X11 or Wayland
running) based on its EGLFS platform and the Mesa3D GBM library. This
is generally useful for scenarios with fullscreen applications that
run all the time, like a media center on a HTPC. Using a system like
X11 or Wayland in such cases is overkill, since as said, there will
only ever be one graphical application active at the same time, and
said application will run in fullscreen mode.
Qt5 based applications that want to use GStreamer 1.x for video
playback currently can choose to either use QtMultimedia or
qmlglsink+extra playback code. A common choice is qmlglsink+gstplayer.
The benefit of qmlglsink is that it is maintained by the GStreamer
developers, and is integrated with the GStreamer OpenGL stack.
However, the qmlglsink from the current gstreamer1.0-plugins-good
package from Ubuntu 18.04 does not work when using EGLFS on top of
KMS. This is because qmlglsink needs to access the EGLDisplay handle
that Qt5 is using. Currently, this is done through the
QPlatformNativeInterface nativeResourceForWindow() function. This
class can be found in the qpa/qplatformnativeinterface.h header. And
this header in turn is present in the qtbase5-private-dev package.
The simple solution to this is to make sure that header is present
when gstreamer1.0-plugins-good is being built. Then, the relevant code
paths in ext/qt/gstqtglutility.cc are activated (via #ifdefs), and
qmlglsink can run with EGLFS on top of KMS.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gst-plugins-good1.0/+bug/1804452/+subscriptions
--
Mailing list: https://launchpad.net/~desktop-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~desktop-packages
More help : https://help.launchpad.net/ListHelp