d3d11deinterlace: Add missing system memory caps features on templates

This element can support system memory

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2029>
This commit is contained in:
Seungha Yang 2021-02-21 17:35:40 +09:00
parent 2696a2795d
commit 7330ea8dbf

View file

@ -1894,7 +1894,14 @@ static GstElementClass *bin_parent_class = NULL;
#define GST_D3D11_DEINTERLACE_BIN_GET_CLASS(object) \
(G_TYPE_INSTANCE_GET_CLASS ((object),G_TYPE_FROM_INSTANCE (object), \
GstD3D11DeinterlaceBinClass))
#define GST_D3D11_DEINTERLACE_BIN_CAPS_MAKE(features,format) \
#define GST_D3D11_DEINTERLACE_BIN_CAPS_MAKE(format) \
"video/x-raw, " \
"format = (string) " format ", " \
"width = (int) [64, 8192], " \
"height = (int) [64, 8192] "
#define GST_D3D11_DEINTERLACE_BIN_CAPS_MAKE_WITH_FEATURES(features,format) \
"video/x-raw(" features "), " \
"format = (string) " format ", " \
"width = (int) [64, 8192], " \
@ -1904,23 +1911,35 @@ static GstStaticPadTemplate bin_sink_template_caps =
GST_STATIC_PAD_TEMPLATE ("sink",
GST_PAD_SINK,
GST_PAD_ALWAYS,
GST_STATIC_CAPS (GST_D3D11_DEINTERLACE_BIN_CAPS_MAKE
GST_STATIC_CAPS (GST_D3D11_DEINTERLACE_BIN_CAPS_MAKE_WITH_FEATURES
(GST_CAPS_FEATURE_MEMORY_D3D11_MEMORY, GST_D3D11_SINK_FORMATS) "; "
GST_D3D11_DEINTERLACE_BIN_CAPS_MAKE
GST_D3D11_DEINTERLACE_BIN_CAPS_MAKE_WITH_FEATURES
(GST_CAPS_FEATURE_MEMORY_D3D11_MEMORY ","
GST_CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION,
GST_D3D11_SINK_FORMATS)));
GST_D3D11_SINK_FORMATS) "; "
GST_D3D11_DEINTERLACE_BIN_CAPS_MAKE (GST_D3D11_SINK_FORMATS) "; "
GST_D3D11_DEINTERLACE_BIN_CAPS_MAKE_WITH_FEATURES
(GST_CAPS_FEATURE_MEMORY_SYSTEM_MEMORY ","
GST_CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION,
GST_D3D11_SINK_FORMATS)
));
static GstStaticPadTemplate bin_src_template_caps =
GST_STATIC_PAD_TEMPLATE ("src",
GST_PAD_SRC,
GST_PAD_ALWAYS,
GST_STATIC_CAPS (GST_D3D11_DEINTERLACE_BIN_CAPS_MAKE
GST_STATIC_CAPS (GST_D3D11_DEINTERLACE_BIN_CAPS_MAKE_WITH_FEATURES
(GST_CAPS_FEATURE_MEMORY_D3D11_MEMORY, GST_D3D11_SRC_FORMATS) "; "
GST_D3D11_DEINTERLACE_BIN_CAPS_MAKE
GST_D3D11_DEINTERLACE_BIN_CAPS_MAKE_WITH_FEATURES
(GST_CAPS_FEATURE_MEMORY_D3D11_MEMORY ","
GST_CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION,
GST_D3D11_SRC_FORMATS)));
GST_D3D11_SRC_FORMATS) "; "
GST_D3D11_DEINTERLACE_BIN_CAPS_MAKE (GST_D3D11_SRC_FORMATS) "; "
GST_D3D11_DEINTERLACE_BIN_CAPS_MAKE_WITH_FEATURES
(GST_CAPS_FEATURE_MEMORY_SYSTEM_MEMORY ","
GST_CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION,
GST_D3D11_SRC_FORMATS)
));
static void gst_d3d11_deinterlace_bin_set_property (GObject * object,
guint prop_id, const GValue * value, GParamSpec * pspec);