summaryrefslogtreecommitdiff
path: root/gst-libs
diff options
context:
space:
mode:
authorU. Artie Eoff <ullysses.a.eoff@intel.com>2020-02-25 12:00:36 -0800
committerGStreamer Merge Bot <gitlab-merge-bot@gstreamer-foundation.org>2020-02-28 11:09:11 +0000
commit13601f4071420ea6ade1aeb0512cfbbbfb62821b (patch)
tree96f14ed85bc0348a03d1c7f621957ebad4537dc1 /gst-libs
parent164656ee1d3bc12bfbe87a0cc11bd345cd6f654f (diff)
libs: display: add YUV to/from RGB color primary quirk
The intel-media-driver (iHD) can't convert output color primaries when doing YUV to/from RGB CSC.
Diffstat (limited to 'gst-libs')
-rw-r--r--gst-libs/gst/vaapi/gstvaapidisplay.c1
-rw-r--r--gst-libs/gst/vaapi/gstvaapidisplay.h8
2 files changed, 9 insertions, 0 deletions
diff --git a/gst-libs/gst/vaapi/gstvaapidisplay.c b/gst-libs/gst/vaapi/gstvaapidisplay.c
index f4413a08..045be5b4 100644
--- a/gst-libs/gst/vaapi/gstvaapidisplay.c
+++ b/gst-libs/gst/vaapi/gstvaapidisplay.c
@@ -780,6 +780,7 @@ set_driver_quirks (GstVaapiDisplay * display)
/* @XXX(victor): is this string enough to identify it */
{ "AMD", GST_VAAPI_DRIVER_QUIRK_NO_CHECK_SURFACE_PUT_IMAGE },
{ "i965", GST_VAAPI_DRIVER_QUIRK_NO_CHECK_VPP_COLOR_STD },
+ { "iHD", GST_VAAPI_DRIVER_QUIRK_NO_RGBYUV_VPP_COLOR_PRIMARY },
};
/* *INDENT-ON* */
diff --git a/gst-libs/gst/vaapi/gstvaapidisplay.h b/gst-libs/gst/vaapi/gstvaapidisplay.h
index 0f6f136a..ecbe0709 100644
--- a/gst-libs/gst/vaapi/gstvaapidisplay.h
+++ b/gst-libs/gst/vaapi/gstvaapidisplay.h
@@ -94,11 +94,19 @@ typedef struct _GstVaapiDisplay GstVaapiDisplay;
* https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2016
* @GST_VAAPI_DRIVER_QUIRK_NO_CHECK_VPP_COLOR_STD: if driver does not
* properly report supported vpp color standards.
+ * @GST_VAAPI_DRIVER_QUIRK_NO_RGBYUV_VPP_COLOR_PRIMARY: if driver can
+ * only do CSC from YUV to RGB, and vice-versa without changing the
+ * color standard primaries. This quirk is initially introduced to
+ * work around a problem in the intel-media-driver (iHD) reported here:
+ * https://github.com/intel/media-driver/issues/860. Once the driver
+ * issue is fixed, we should remove this quirk. Also see this issue:
+ * https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/issues/238
*/
typedef enum
{
GST_VAAPI_DRIVER_QUIRK_NO_CHECK_SURFACE_PUT_IMAGE = (1U << 0),
GST_VAAPI_DRIVER_QUIRK_NO_CHECK_VPP_COLOR_STD = (1U << 1),
+ GST_VAAPI_DRIVER_QUIRK_NO_RGBYUV_VPP_COLOR_PRIMARY = (1U << 2),
} GstVaapiDriverQuirks;
/**