summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulien Isorce <j.isorce@samsung.com>2016-11-22 23:26:05 +0000
committerVíctor Manuel Jáquez Leal <vjaquez@igalia.com>2017-06-23 18:44:42 +0200
commit953afe9d17ab6686c93258bf1b469dff3150495e (patch)
tree0dfcb6a998aa3245247c65bd4040460764273a8a
parentf578515988ecf6c0ebaf920a94ea43b3fcf5c2a6 (diff)
vaapipluginutil: add support for DMABuf caps feature
https://bugzilla.gnome.org/show_bug.cgi?id=755072 Signed-off-by: Julien Isorce <j.isorce@samsung.com> Signed-off-by: Victor Jaquez <vjaquez@igalia.com> vaapipluginutil: add support for DMABuf caps feature
-rw-r--r--gst/vaapi/gstvaapipluginutil.c4
-rw-r--r--gst/vaapi/gstvaapipluginutil.h5
2 files changed, 9 insertions, 0 deletions
diff --git a/gst/vaapi/gstvaapipluginutil.c b/gst/vaapi/gstvaapipluginutil.c
index b11901f8..e9ff8b6e 100644
--- a/gst/vaapi/gstvaapipluginutil.c
+++ b/gst/vaapi/gstvaapipluginutil.c
@@ -540,6 +540,7 @@ gst_vaapi_find_preferred_caps_feature (GstPad * pad, GstCaps * allowed_caps,
guint i, j, num_structures;
GstCaps *out_caps, *caps = NULL;
static const guint feature_list[] = { GST_VAAPI_CAPS_FEATURE_VAAPI_SURFACE,
+ GST_VAAPI_CAPS_FEATURE_DMABUF,
GST_VAAPI_CAPS_FEATURE_GL_TEXTURE_UPLOAD_META,
GST_VAAPI_CAPS_FEATURE_SYSTEM_MEMORY,
};
@@ -627,6 +628,9 @@ gst_vaapi_caps_feature_to_string (GstVaapiCapsFeature feature)
case GST_VAAPI_CAPS_FEATURE_GL_TEXTURE_UPLOAD_META:
str = GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META;
break;
+ case GST_VAAPI_CAPS_FEATURE_DMABUF:
+ str = GST_CAPS_FEATURE_MEMORY_DMABUF;
+ break;
case GST_VAAPI_CAPS_FEATURE_VAAPI_SURFACE:
str = GST_CAPS_FEATURE_MEMORY_VAAPI_SURFACE;
break;
diff --git a/gst/vaapi/gstvaapipluginutil.h b/gst/vaapi/gstvaapipluginutil.h
index 61a83355..19053df0 100644
--- a/gst/vaapi/gstvaapipluginutil.h
+++ b/gst/vaapi/gstvaapipluginutil.h
@@ -66,6 +66,7 @@ typedef enum
GST_VAAPI_CAPS_FEATURE_NOT_NEGOTIATED,
GST_VAAPI_CAPS_FEATURE_SYSTEM_MEMORY,
GST_VAAPI_CAPS_FEATURE_GL_TEXTURE_UPLOAD_META,
+ GST_VAAPI_CAPS_FEATURE_DMABUF,
GST_VAAPI_CAPS_FEATURE_VAAPI_SURFACE,
} GstVaapiCapsFeature;
@@ -110,6 +111,10 @@ gst_vaapi_caps_feature_contains (const GstCaps * caps,
GST_VIDEO_CAPS_MAKE_WITH_FEATURES( \
GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META, "{ RGBA, BGRA }")
+#define GST_VAAPI_MAKE_DMABUF_CAPS \
+ GST_VIDEO_CAPS_MAKE_WITH_FEATURES( \
+ GST_CAPS_FEATURE_MEMORY_DMABUF, "{ NV12, I420, YV12 }")
+
G_GNUC_INTERNAL
gboolean
gst_caps_set_interlaced (GstCaps * caps, GstVideoInfo * vip);