mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-01-11 09:55:36 +00:00
gst-element-maker: add video pad template and use it in videofilter class
Would be nicer if one could just supplement the generic template from the element template though. Also, I would really have liked to just add those sections from the pads template into the element templet directly (so I can cater for src template caps == sink template caps), but that didn't seem to work.
This commit is contained in:
parent
48398114e6
commit
3991742d77
3 changed files with 67 additions and 1 deletions
33
tools/element-templates/sinkpad-template-video
Normal file
33
tools/element-templates/sinkpad-template-video
Normal file
|
@ -0,0 +1,33 @@
|
|||
/* vim: set filetype=c: */
|
||||
|
||||
% instance-members
|
||||
% prototypes
|
||||
% pad-template
|
||||
/* FIXME: add/remove formats you can handle */
|
||||
#define VIDEO_SINK_CAPS \
|
||||
GST_VIDEO_CAPS_RGBA \
|
||||
GST_VIDEO_CAPS_ARGB \
|
||||
GST_VIDEO_CAPS_BGRA \
|
||||
GST_VIDEO_CAPS_ABGR \
|
||||
GST_VIDEO_CAPS_RGBx \
|
||||
GST_VIDEO_CAPS_xRGB \
|
||||
GST_VIDEO_CAPS_BGRx \
|
||||
GST_VIDEO_CAPS_xBGR \
|
||||
GST_VIDEO_CAPS_RGB \
|
||||
GST_VIDEO_CAPS_BGR \
|
||||
GST_VIDEO_CAPS_YUV("{ AYUV }")
|
||||
|
||||
static GstStaticPadTemplate gst_replace_sink_template =
|
||||
GST_STATIC_PAD_TEMPLATE ("sink",
|
||||
GST_PAD_SINK,
|
||||
GST_PAD_ALWAYS,
|
||||
GST_STATIC_CAPS (VIDEO_SINK_CAPS)
|
||||
);
|
||||
|
||||
% base-init
|
||||
gst_element_class_add_static_pad_template (element_class,
|
||||
&gst_replace_sink_template);
|
||||
% instance-init
|
||||
% methods
|
||||
% end
|
||||
|
33
tools/element-templates/srcpad-template-video
Normal file
33
tools/element-templates/srcpad-template-video
Normal file
|
@ -0,0 +1,33 @@
|
|||
/* vim: set filetype=c: */
|
||||
|
||||
% instance-members
|
||||
% prototypes
|
||||
% pad-template
|
||||
/* FIXME: add/remove formats you can handle */
|
||||
#define VIDEO_SRC_CAPS \
|
||||
GST_VIDEO_CAPS_RGBA \
|
||||
GST_VIDEO_CAPS_ARGB \
|
||||
GST_VIDEO_CAPS_BGRA \
|
||||
GST_VIDEO_CAPS_ABGR \
|
||||
GST_VIDEO_CAPS_RGBx \
|
||||
GST_VIDEO_CAPS_xRGB \
|
||||
GST_VIDEO_CAPS_BGRx \
|
||||
GST_VIDEO_CAPS_xBGR \
|
||||
GST_VIDEO_CAPS_RGB \
|
||||
GST_VIDEO_CAPS_BGR \
|
||||
GST_VIDEO_CAPS_YUV("{ AYUV }")
|
||||
|
||||
static GstStaticPadTemplate gst_replace_src_template =
|
||||
GST_STATIC_PAD_TEMPLATE ("src",
|
||||
GST_PAD_SRC,
|
||||
GST_PAD_ALWAYS,
|
||||
GST_STATIC_CAPS (VIDEO_SRC_CAPS)
|
||||
);
|
||||
|
||||
% base-init
|
||||
gst_element_class_add_static_pad_template (element_class,
|
||||
&gst_replace_src_template);
|
||||
% instance-init
|
||||
% methods
|
||||
% end
|
||||
|
|
@ -4,7 +4,7 @@ GstVideoFilter
|
|||
% TYPE_CLASS_NAME
|
||||
GST_TYPE_VIDEO_FILTER
|
||||
% pads
|
||||
sinkpad-template srcpad-template
|
||||
sinkpad-template-video srcpad-template-video
|
||||
% pkg-config
|
||||
gstreamer-video-0.10
|
||||
% includes
|
||||
|
|
Loading…
Reference in a new issue