From a687f06b590c4c1d7a32186e1d7ecf28b95a3041 Mon Sep 17 00:00:00 2001 From: Seungha Yang Date: Sat, 24 Aug 2019 17:43:43 +0900 Subject: [PATCH] d3d11videosink: Specify d3d11 memory caps feature on sinkpad template --- sys/d3d11/gstd3d11format.c | 4 ++++ sys/d3d11/gstd3d11videosink.c | 10 +++++----- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/sys/d3d11/gstd3d11format.c b/sys/d3d11/gstd3d11format.c index 7d1077e..5823376 100644 --- a/sys/d3d11/gstd3d11format.c +++ b/sys/d3d11/gstd3d11format.c @@ -24,6 +24,7 @@ #include "gstd3d11format.h" #include "gstd3d11utils.h" #include "gstd3d11device.h" +#include "gstd3d11memory.h" #ifndef GST_DISABLE_GST_DEBUG #define GST_CAT_DEFAULT ensure_debug_category() @@ -277,6 +278,9 @@ gst_d3d11_device_get_supported_caps_internal (GstD3D11Device * device, gst_caps_set_value (supported_caps, "format", &v_list); g_value_unset (&v_list); + gst_caps_set_features_simple (supported_caps, + gst_caps_features_from_string (GST_CAPS_FEATURE_MEMORY_D3D11_MEMORY)); + data->caps = supported_caps; } diff --git a/sys/d3d11/gstd3d11videosink.c b/sys/d3d11/gstd3d11videosink.c index 225a384..16806a8 100644 --- a/sys/d3d11/gstd3d11videosink.c +++ b/sys/d3d11/gstd3d11videosink.c @@ -39,14 +39,14 @@ enum #define DEFAULT_FORCE_ASPECT_RATIO TRUE #define DEFAULT_ENABLE_NAVIGATION_EVENTS TRUE +#define CAPS_FORMAT "{ BGRA, RGBA, RGB10A2_LE }" + static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS ("video/x-raw, " - "format = (string) { BGRA, RGBA, RGB10A2_LE }, " - "framerate = (fraction) [ 0, MAX ], " - "width = (int) [ 1, MAX ], " "height = (int) [ 1, MAX ]") - ); + GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE_WITH_FEATURES + (GST_CAPS_FEATURE_MEMORY_D3D11_MEMORY, CAPS_FORMAT) + )); GST_DEBUG_CATEGORY (d3d11_video_sink_debug); #define GST_CAT_DEFAULT d3d11_video_sink_debug -- 2.7.4