diff options
| author | Anuj Mittal <anuj.mittal@intel.com> | 2018-11-30 15:16:09 +0800 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-12-01 11:38:37 +0000 |
| commit | 67f5aac7dfe90f3d2c527fe6387ffc3256aa8065 (patch) | |
| tree | f4e29fbfb506af39a5cfe586a02881f7ff0ba8f2 | |
| parent | b8c3449613eaf5e6f794d4a67ed985784d6533ca (diff) | |
| download | poky-67f5aac7dfe90f3d2c527fe6387ffc3256aa8065.tar.gz | |
gstreamer1.0-vaapi: downgrade vaapisink to marginal rank
Using vaapisink (which doesn't supports DRI3 [1] and uses DRI2) with
default poky configuration currently results in an unresponsive display
because DRI2 rendering doesn't work (as of xserver 1.20.3) in non-composited
environments [2].
Downgrade vaapisink to marginal for now so playbin (and in turn gst-play
and gtk-play examples) uses next best sink element and works out of box.
[1] https://github.com/intel/libva/issues/122
[2] https://gitlab.freedesktop.org/xorg/xserver/issues/13
(From OE-Core rev: 7911039a3a82a29166f3be2ff5bdd719430e5a80)
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi/0001-vaapsink-downgrade-to-marginal.patch | 46 | ||||
| -rw-r--r-- | meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.14.4.bb | 3 |
2 files changed, 48 insertions, 1 deletions
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi/0001-vaapsink-downgrade-to-marginal.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi/0001-vaapsink-downgrade-to-marginal.patch new file mode 100644 index 0000000000..c861f3bed2 --- /dev/null +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi/0001-vaapsink-downgrade-to-marginal.patch | |||
| @@ -0,0 +1,46 @@ | |||
| 1 | From 0c28cf7bfa90f8947833722cddf23d513490c6c3 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Anuj Mittal <anuj.mittal@intel.com> | ||
| 3 | Date: Wed, 28 Nov 2018 15:08:48 +0800 | ||
| 4 | Subject: [PATCH] vaapsink: downgrade to marginal | ||
| 5 | |||
| 6 | Using vaapisink with default poky configuration results in an | ||
| 7 | unresponsive display as of today because DRI2 rendering is currently broken | ||
| 8 | in non composited environments [1] and libva doesn't support DRI3 [2]. | ||
| 9 | |||
| 10 | Downgrade vaapisink to marginal for now so playbin (and in turn gst-play | ||
| 11 | and gtk-play examples) use xvimagesink or others out of box. | ||
| 12 | |||
| 13 | [1] https://gitlab.freedesktop.org/xorg/xserver/issues/13 | ||
| 14 | [2] https://github.com/intel/libva/issues/122 | ||
| 15 | |||
| 16 | Upstream-Status: Pending | ||
| 17 | |||
| 18 | Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> | ||
| 19 | --- | ||
| 20 | gst/vaapi/gstvaapi.c | 6 +----- | ||
| 21 | 1 file changed, 1 insertion(+), 5 deletions(-) | ||
| 22 | |||
| 23 | diff --git a/gst/vaapi/gstvaapi.c b/gst/vaapi/gstvaapi.c | ||
| 24 | index 9a82454..4d94f2b 100644 | ||
| 25 | --- a/gst/vaapi/gstvaapi.c | ||
| 26 | +++ b/gst/vaapi/gstvaapi.c | ||
| 27 | @@ -210,7 +210,6 @@ plugin_init (GstPlugin * plugin) | ||
| 28 | { | ||
| 29 | GstVaapiDisplay *display; | ||
| 30 | GArray *decoders; | ||
| 31 | - guint rank; | ||
| 32 | |||
| 33 | plugin_add_dependencies (plugin); | ||
| 34 | |||
| 35 | @@ -235,10 +234,7 @@ plugin_init (GstPlugin * plugin) | ||
| 36 | gst_element_register (plugin, "vaapidecodebin", | ||
| 37 | GST_RANK_PRIMARY + 2, GST_TYPE_VAAPI_DECODE_BIN); | ||
| 38 | |||
| 39 | - rank = GST_RANK_PRIMARY; | ||
| 40 | - if (g_getenv ("WAYLAND_DISPLAY")) | ||
| 41 | - rank = GST_RANK_MARGINAL; | ||
| 42 | - gst_element_register (plugin, "vaapisink", rank, GST_TYPE_VAAPISINK); | ||
| 43 | + gst_element_register (plugin, "vaapisink", GST_RANK_MARGINAL, GST_TYPE_VAAPISINK); | ||
| 44 | |||
| 45 | #if USE_ENCODERS | ||
| 46 | gst_vaapiencode_register (plugin, display); | ||
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.14.4.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.14.4.bb index fdca0b9565..3896434104 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.14.4.bb +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.14.4.bb | |||
| @@ -10,7 +10,8 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c" | |||
| 10 | 10 | ||
| 11 | SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-${PV}.tar.xz \ | 11 | SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-${PV}.tar.xz \ |
| 12 | file://0001-gst-vaapi-Makefile.am-Add-EGL_CFLAGS-to-libgstvaapi-.patch \ | 12 | file://0001-gst-vaapi-Makefile.am-Add-EGL_CFLAGS-to-libgstvaapi-.patch \ |
| 13 | " | 13 | file://0001-vaapsink-downgrade-to-marginal.patch \ |
| 14 | " | ||
| 14 | 15 | ||
| 15 | SRC_URI[md5sum] = "2fae3442f5f23e7354a0c592bc7b9065" | 16 | SRC_URI[md5sum] = "2fae3442f5f23e7354a0c592bc7b9065" |
| 16 | SRC_URI[sha256sum] = "ce18dbfe961c6a8d31270231686075586bf7a7df62b778c8e7f5ec148251d0a3" | 17 | SRC_URI[sha256sum] = "ce18dbfe961c6a8d31270231686075586bf7a7df62b778c8e7f5ec148251d0a3" |
