gstreamer/tools/element-templates/videofilter2
2011-04-08 15:51:04 -07:00

68 lines
1.6 KiB
C

/* vim: set filetype=c: */
% ClassName
GstVideoFilter2
% TYPE_CLASS_NAME
GST_TYPE_VIDEO_FILTER2
% pads
% pkg-config
gstreamer-base-0.10
% pads
% includes
#include <gst/base/gstbasetransform.h>
#include <gst/video/video.h>
#include "../gst/videofilters/gstvideofilter2.h"
% prototypes
static gboolean gst_replace_start (GstBaseTransform * trans);
static gboolean gst_replace_stop (GstBaseTransform * trans);
static GstFlowReturn
gst_replace_prefilter (GstVideoFilter2 *videofilter2, GstBuffer * buf);
static GstVideoFilter2Functions gst_replace_filter_functions[];
% declare-class
GstBaseTransformClass *base_transform_class = GST_BASE_TRANSFORM_CLASS (klass);
GstVideoFilter2Class *video_filter2_class = GST_VIDEO_FILTER2_CLASS (klass);
% set-methods
base_transform_class->start = GST_DEBUG_FUNCPTR (gst_replace_start);
base_transform_class->stop = GST_DEBUG_FUNCPTR (gst_replace_stop);
video_filter2_class->prefilter = GST_DEBUG_FUNCPTR (gst_replace_prefilter);
gst_video_filter2_class_add_functions (video_filter2_class,
gst_replace_filter_functions);
% methods
static gboolean
gst_replace_start (GstBaseTransform * trans)
{
return TRUE;
}
static gboolean
gst_replace_stop (GstBaseTransform * trans)
{
return TRUE;
}
static GstFlowReturn
gst_replace_prefilter (GstVideoFilter2 *video_filter2, GstBuffer * buf)
{
return GST_FLOW_OK;
}
static GstFlowReturn
gst_replace_filter_ip_I420 (GstVideoFilter2 * videofilter2,
GstBuffer * buf, int start, int end)
{
return GST_FLOW_OK;
}
static GstVideoFilter2Functions gst_replace_filter_functions[] = {
{GST_VIDEO_FORMAT_I420, NULL, gst_replace_filter_ip_I420},
{GST_VIDEO_FORMAT_UNKNOWN}
};
% end