summaryrefslogtreecommitdiff
path: root/gst-libs/gst
diff options
context:
space:
mode:
Diffstat (limited to 'gst-libs/gst')
-rw-r--r--gst-libs/gst/vaapi/gstvaapidisplay.c20
1 files changed, 18 insertions, 2 deletions
diff --git a/gst-libs/gst/vaapi/gstvaapidisplay.c b/gst-libs/gst/vaapi/gstvaapidisplay.c
index a212a106..6ef4ae9b 100644
--- a/gst-libs/gst/vaapi/gstvaapidisplay.c
+++ b/gst-libs/gst/vaapi/gstvaapidisplay.c
@@ -51,6 +51,10 @@ struct _GstVaapiProperty {
VADisplayAttribute attribute;
};
+/* XXX: export property names when the API is stable enough */
+#define GST_VAAPI_DISPLAY_PROP_RENDER_MODE "render-mode"
+#define GST_VAAPI_DISPLAY_PROP_ROTATION "rotation"
+
enum {
PROP_0,
@@ -580,12 +584,24 @@ gst_vaapi_display_create(GstVaapiDisplay *display)
GST_DEBUG(" %s", string_of_VADisplayAttributeType(attr->type));
switch (attr->type) {
+#if !VA_CHECK_VERSION(0,34,0)
+ case VADisplayAttribDirectSurface:
+ prop.name = GST_VAAPI_DISPLAY_PROP_RENDER_MODE;
+ break;
+#endif
+ case VADisplayAttribRenderMode:
+ prop.name = GST_VAAPI_DISPLAY_PROP_RENDER_MODE;
+ break;
+ case VADisplayAttribRotation:
+ prop.name = GST_VAAPI_DISPLAY_PROP_ROTATION;
+ break;
default:
- prop.attribute.flags = 0;
+ prop.name = NULL;
break;
}
- if (!prop.attribute.flags)
+ if (!prop.name)
continue;
+ prop.attribute = *attr;
g_array_append_val(priv->properties, prop);
}