summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVíctor Manuel Jáquez Leal <vjaquez@igalia.com>2021-04-28 10:52:29 +0200
committerVíctor Manuel Jáquez Leal <vjaquez@igalia.com>2021-04-28 12:08:58 +0200
commit166082f3c312a840bda04e2a781ce1cc865e3f4d (patch)
tree9e3a9747aba800bcc082ee4c2350c8f3d120a440
parentced093c738aab4fb30a728a4c1faba817e2d8a31 (diff)
va: allocator: Disable derived for Gallium if RGB and reading.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2127>
-rw-r--r--sys/va/gstvaallocator.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/va/gstvaallocator.c b/sys/va/gstvaallocator.c
index 8c756f79b..78d89310f 100644
--- a/sys/va/gstvaallocator.c
+++ b/sys/va/gstvaallocator.c
@@ -1271,6 +1271,12 @@ _va_map_unlocked (GstVaMemory * mem, GstMapFlags flags)
|| ((flags & GST_MAP_WRITE)
&& GST_VIDEO_INFO_IS_YUV (&va_allocator->derived_info)));
break;
+ case GST_VA_IMPLEMENTATION_MESA_GALLIUM:
+ /* Reading RGB derived images, with non-standard resolutions,
+ * looks like tiled too. TODO(victor): fill a bug in Mesa. */
+ use_derived = va_allocator->use_derived && !((flags & GST_MAP_READ)
+ && GST_VIDEO_INFO_IS_RGB (&va_allocator->derived_info));
+ break;
default:
use_derived = va_allocator->use_derived;
break;