diff --git a/ext/gdk_pixbuf/Makefile.am b/ext/gdk_pixbuf/Makefile.am index a96ea204b8..54e9a3eede 100644 --- a/ext/gdk_pixbuf/Makefile.am +++ b/ext/gdk_pixbuf/Makefile.am @@ -1,6 +1,6 @@ plugin_LTLIBRARIES = libgstgdkpixbuf.la -libgstgdkpixbuf_la_SOURCES = gstgdkpixbuf.c +libgstgdkpixbuf_la_SOURCES = gstgdkpixbuf.c pixbufscale.c libgstgdkpixbuf_la_CFLAGS = $(GST_CFLAGS) $(GTK_CFLAGS) libgstgdkpixbuf_la_LIBADD = $(GTK_LIBS) libgstgdkpixbuf_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) @@ -27,5 +27,6 @@ install-data-hook: endif noinst_HEADERS = gstgdkpixbuf.h \ + pixbufscale.h \ gstgdkanimation.h diff --git a/ext/gdk_pixbuf/gstgdkpixbuf.c b/ext/gdk_pixbuf/gstgdkpixbuf.c index 8dbe2eaf54..cd010a65dc 100644 --- a/ext/gdk_pixbuf/gstgdkpixbuf.c +++ b/ext/gdk_pixbuf/gstgdkpixbuf.c @@ -83,6 +83,8 @@ GST_STATIC_PAD_TEMPLATE ("src", GST_STATIC_CAPS (GST_VIDEO_CAPS_RGB) ); +gboolean pixbufscale_init (GstPlugin * plugin); + static void gst_gdk_pixbuf_base_init (gpointer g_class); static void gst_gdk_pixbuf_class_init (GstGdkPixbufClass * klass); static void gst_gdk_pixbuf_init (GstGdkPixbuf * filter); @@ -459,6 +461,9 @@ plugin_init (GstPlugin * plugin) gst_gdk_pixbuf_type_find, NULL, GST_CAPS_ANY, NULL); #endif + if (!pixbufscale_init (plugin)) + return FALSE; + /* plugin initialisation succeeded */ return TRUE; } @@ -468,4 +473,5 @@ plugin_init (GstPlugin * plugin) GST_PLUGIN_DEFINE (GST_VERSION_MAJOR, GST_VERSION_MINOR, "gdkpixbuf", - "GDK Pixbuf decoder", plugin_init, VERSION, "LGPL", GST_PACKAGE, GST_ORIGIN) + "GDK Pixbuf decoder & scaler", plugin_init, VERSION, "LGPL", GST_PACKAGE, + GST_ORIGIN) diff --git a/ext/gdk_pixbuf/gstgdkpixbuf.h b/ext/gdk_pixbuf/gstgdkpixbuf.h index 62e11aac64..dc308cc781 100644 --- a/ext/gdk_pixbuf/gstgdkpixbuf.h +++ b/ext/gdk_pixbuf/gstgdkpixbuf.h @@ -64,7 +64,7 @@ struct _GstGdkPixbufClass GstElementClass parent_class; }; -GType gst_gdk_pixbuf_get_type (void); +static GType gst_gdk_pixbuf_get_type (void); G_END_DECLS