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>
This commit is contained in:
Anuj Mittal
2018-11-30 15:16:09 +08:00
committed by Richard Purdie
parent b8c3449613
commit 67f5aac7df
2 changed files with 48 additions and 1 deletions

View File

@@ -0,0 +1,46 @@
From 0c28cf7bfa90f8947833722cddf23d513490c6c3 Mon Sep 17 00:00:00 2001
From: Anuj Mittal <anuj.mittal@intel.com>
Date: Wed, 28 Nov 2018 15:08:48 +0800
Subject: [PATCH] vaapsink: downgrade to marginal
Using vaapisink with default poky configuration results in an
unresponsive display as of today because DRI2 rendering is currently broken
in non composited environments [1] and libva doesn't support DRI3 [2].
Downgrade vaapisink to marginal for now so playbin (and in turn gst-play
and gtk-play examples) use xvimagesink or others out of box.
[1] https://gitlab.freedesktop.org/xorg/xserver/issues/13
[2] https://github.com/intel/libva/issues/122
Upstream-Status: Pending
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
---
gst/vaapi/gstvaapi.c | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/gst/vaapi/gstvaapi.c b/gst/vaapi/gstvaapi.c
index 9a82454..4d94f2b 100644
--- a/gst/vaapi/gstvaapi.c
+++ b/gst/vaapi/gstvaapi.c
@@ -210,7 +210,6 @@ plugin_init (GstPlugin * plugin)
{
GstVaapiDisplay *display;
GArray *decoders;
- guint rank;
plugin_add_dependencies (plugin);
@@ -235,10 +234,7 @@ plugin_init (GstPlugin * plugin)
gst_element_register (plugin, "vaapidecodebin",
GST_RANK_PRIMARY + 2, GST_TYPE_VAAPI_DECODE_BIN);
- rank = GST_RANK_PRIMARY;
- if (g_getenv ("WAYLAND_DISPLAY"))
- rank = GST_RANK_MARGINAL;
- gst_element_register (plugin, "vaapisink", rank, GST_TYPE_VAAPISINK);
+ gst_element_register (plugin, "vaapisink", GST_RANK_MARGINAL, GST_TYPE_VAAPISINK);
#if USE_ENCODERS
gst_vaapiencode_register (plugin, display);

View File

@@ -10,7 +10,8 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c"
SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-${PV}.tar.xz \
file://0001-gst-vaapi-Makefile.am-Add-EGL_CFLAGS-to-libgstvaapi-.patch \
"
file://0001-vaapsink-downgrade-to-marginal.patch \
"
SRC_URI[md5sum] = "2fae3442f5f23e7354a0c592bc7b9065"
SRC_URI[sha256sum] = "ce18dbfe961c6a8d31270231686075586bf7a7df62b778c8e7f5ec148251d0a3"