* Moved plugin_init code into main.c

This commit is contained in:
Joshua M. Doe 2010-03-16 17:17:43 -04:00
parent 7fff476758
commit 140ecc0107
3 changed files with 49 additions and 27 deletions

View File

@ -1,6 +1,7 @@
add_definitions(-DHAVE_CONFIG_H) add_definitions(-DHAVE_CONFIG_H)
set ( SOURCES set ( SOURCES
main.c
gstvideolevels.c ) gstvideolevels.c )
set ( HEADERS set ( HEADERS

View File

@ -155,7 +155,7 @@ gst_videolevels_base_init (gpointer g_class)
{ {
GstElementClass *element_class = GST_ELEMENT_CLASS (g_class); GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
GST_CAT_INFO(videolevels_debug, "gst_videolevels_base_init"); GST_CAT_INFO(GST_CAT_DEFAULT, "gst_videolevels_base_init");
gst_element_class_set_details (element_class, &videolevels_details); gst_element_class_set_details (element_class, &videolevels_details);
@ -170,7 +170,7 @@ gst_videolevels_finalize (GObject *object)
{ {
GstVideoLevels *videolevels; GstVideoLevels *videolevels;
GST_CAT_INFO (videolevels_debug, "gst_videolevels_finalize"); GST_CAT_INFO (GST_CAT_DEFAULT, "gst_videolevels_finalize");
g_return_if_fail (GST_IS_VIDEOLEVELS (object)); g_return_if_fail (GST_IS_VIDEOLEVELS (object));
videolevels = GST_VIDEOLEVELS (object); videolevels = GST_VIDEOLEVELS (object);
@ -186,8 +186,11 @@ gst_videolevels_class_init (GstVideoLevelsClass * g_class)
{ {
GObjectClass *gobject_class; GObjectClass *gobject_class;
GstBaseTransformClass *trans_class; GstBaseTransformClass *trans_class;
GST_CAT_INFO (videolevels_debug, "gst_videolevels_class_init"); GST_DEBUG_CATEGORY_INIT (videolevels_debug, "videolevels", 0,
"Video Levels Filter");
GST_CAT_INFO (GST_CAT_DEFAULT, "gst_videolevels_class_init");
gobject_class = G_OBJECT_CLASS (g_class); gobject_class = G_OBJECT_CLASS (g_class);
trans_class = GST_BASE_TRANSFORM_CLASS (g_class); trans_class = GST_BASE_TRANSFORM_CLASS (g_class);
@ -351,10 +354,10 @@ gst_videolevels_transform_caps (GstBaseTransform * trans,
gst_structure_get_value (structure, "framerate")); gst_structure_get_value (structure, "framerate"));
if (direction == GST_PAD_SRC) { if (direction == GST_PAD_SRC) {
GST_CAT_INFO(videolevels_debug, "direction=SRC"); GST_CAT_INFO(GST_CAT_DEFAULT, "direction=SRC");
bpp = 16; bpp = 16;
} else { } else {
GST_CAT_INFO(videolevels_debug, "direction=SINK"); GST_CAT_INFO(GST_CAT_DEFAULT, "direction=SINK");
bpp = 8; bpp = 8;
} }
@ -383,7 +386,7 @@ static gboolean gst_videolevels_get_unit_size (GstBaseTransform * base,
gst_structure_get_int (structure, "height", &height) && gst_structure_get_int (structure, "height", &height) &&
gst_structure_get_int (structure, "bpp", &pixsize)) { gst_structure_get_int (structure, "bpp", &pixsize)) {
*size = width * height * (pixsize/8); *size = width * height * (pixsize/8);
GST_CAT_DEBUG(videolevels_debug, "Get unit size width=%d,height=%d,size=%d",width,height,*size); GST_CAT_DEBUG(GST_CAT_DEFAULT, "Get unit size width=%d,height=%d,size=%d",width,height,*size);
return TRUE; return TRUE;
} }
GST_ELEMENT_ERROR (base, CORE, NEGOTIATION, (NULL), GST_ELEMENT_ERROR (base, CORE, NEGOTIATION, (NULL),
@ -467,23 +470,4 @@ do_levels (GstVideoLevels * videolevels, guint16 * indata, guint8* outdata, gint
for (i = 0; i < size; i++) { for (i = 0; i < size; i++) {
*dst++ = videolevels->levels_table[*src++]; *dst++ = videolevels->levels_table[*src++];
} }
} }
static gboolean
plugin_init (GstPlugin * plugin)
{
GST_DEBUG_CATEGORY_INIT (videolevels_debug, "videolevels", 0, "videolevels");
GST_CAT_INFO(videolevels_debug, "plugin_init");
return gst_element_register (plugin, "videolevels", GST_RANK_NONE, GST_TYPE_VIDEOLEVELS);
}
GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
GST_VERSION_MINOR,
"videolevels",
"Changes videolevels on video images",
plugin_init,
VERSION,
GST_LICENSE,
GST_PACKAGE_NAME,
GST_PACKAGE_ORIGIN
);

37
gst/main.c Normal file
View File

@ -0,0 +1,37 @@
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
#include "gstvideolevels.h"
#define GST_CAT_DEFAULT gst_nvl_gstnvl_debug
GST_DEBUG_CATEGORY_STATIC (GST_CAT_DEFAULT);
/* Register filters that make up the gstgl plugin */
static gboolean
plugin_init ( GstPlugin * plugin )
{
GST_DEBUG_CATEGORY_INIT ( gst_nvl_gstnvl_debug, "nvl", 0, "nvl" );
GST_CAT_INFO ( gst_nvl_gstnvl_debug, "plugin_init" );
GST_CAT_INFO ( gst_nvl_gstnvl_debug, "registering videolevels element" );
if ( !gst_element_register ( plugin, "videolevels", GST_RANK_NONE,
GST_TYPE_VIDEOLEVELS ) ) {
return FALSE;
}
return TRUE;
}
GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
GST_VERSION_MINOR,
"nvl",
"Plugins of interest to NVL",
plugin_init,
VERSION,
GST_LICENSE,
GST_PACKAGE_NAME,
GST_PACKAGE_ORIGIN
);