various: fix pad template leaks
authorVincent Penquerc'h <vincent.penquerch@collabora.co.uk>
Mon, 28 Nov 2011 12:51:22 +0000 (12:51 +0000)
committerVincent Penquerc'h <vincent.penquerch@collabora.co.uk>
Mon, 28 Nov 2011 13:09:02 +0000 (13:09 +0000)
https://bugzilla.gnome.org/show_bug.cgi?id=662664

64 files changed:
ext/alsa/gstalsasink.c
ext/alsa/gstalsasrc.c
ext/gio/gstgiobasesink.c
ext/gio/gstgiobasesrc.c
ext/gnomevfs/gstgnomevfssink.c
ext/gnomevfs/gstgnomevfssrc.c
ext/libvisual/visual.c
ext/ogg/gstoggaviparse.c
ext/ogg/gstoggdemux.c
ext/ogg/gstoggmux.c
ext/ogg/gstoggparse.c
ext/ogg/gstogmparse.c
ext/pango/gsttextoverlay.c
ext/pango/gsttextrender.c
ext/theora/gsttheoradec.c
ext/theora/gsttheoraenc.c
ext/theora/gsttheoraparse.c
ext/vorbis/gstvorbisdec.c
ext/vorbis/gstvorbisenc.c
ext/vorbis/gstvorbisparse.c
gst-libs/gst/app/gstappsink.c
gst-libs/gst/app/gstappsrc.c
gst-libs/gst/cdda/gstcddabasesrc.c
gst-libs/gst/tag/gsttagdemux.c
gst/adder/gstadder.c
gst/audioconvert/gstaudioconvert.c
gst/audiorate/gstaudiorate.c
gst/audioresample/gstaudioresample.c
gst/audiotestsrc/gstaudiotestsrc.c
gst/encoding/gstencodebin.c
gst/encoding/gstsmartencoder.c
gst/encoding/gststreamcombiner.c
gst/encoding/gststreamsplitter.c
gst/ffmpegcolorspace/gstffmpegcolorspace.c
gst/gdp/gstgdpdepay.c
gst/gdp/gstgdppay.c
gst/playback/gstdecodebin.c
gst/playback/gstdecodebin2.c
gst/playback/gstplaysink.c
gst/playback/gststreamselector.c
gst/playback/gststreamsynchronizer.c
gst/playback/gstsubtitleoverlay.c
gst/playback/gsturidecodebin.c
gst/subparse/gstssaparse.c
gst/subparse/gstsubparse.c
gst/tcp/gstmultifdsink.c
gst/tcp/gsttcpclientsink.c
gst/tcp/gsttcpclientsrc.c
gst/tcp/gsttcpserversrc.c
gst/videorate/gstvideorate.c
gst/videoscale/gstvideoscale.c
gst/videotestsrc/gstvideotestsrc.c
sys/v4l/gstv4lmjpegsink.c
sys/v4l/gstv4lmjpegsrc.c
sys/v4l/gstv4lsrc.c
sys/ximage/ximagesink.c
sys/xvimage/xvimagesink.c
tests/check/elements/audiorate.c
tests/check/elements/decodebin.c
tests/check/elements/decodebin2.c
tests/check/elements/playbin.c
tests/check/elements/playbin2-compressed.c
tests/check/elements/playbin2.c
tests/check/elements/videoscale.c

index 2fb37df..a878b5e 100644 (file)
@@ -172,8 +172,8 @@ gst_alsasink_base_init (gpointer g_class)
       "Audio sink (ALSA)", "Sink/Audio",
       "Output to a sound card via ALSA", "Wim Taymans <wim@fluendo.com>");
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&alsasink_sink_factory));
+  gst_element_class_add_static_pad_template (element_class,
+      &alsasink_sink_factory);
 }
 
 static void
index e2ca602..096c58b 100644 (file)
@@ -197,8 +197,8 @@ gst_alsasrc_base_init (gpointer g_class)
       "Audio source (ALSA)", "Source/Audio",
       "Read from a sound card via ALSA", "Wim Taymans <wim@fluendo.com>");
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&alsasrc_src_factory));
+  gst_element_class_add_static_pad_template (element_class,
+      &alsasrc_src_factory);
 }
 
 static void
index 40a64eb..40add1c 100644 (file)
@@ -55,8 +55,7 @@ gst_gio_base_sink_base_init (gpointer gclass)
   GST_DEBUG_CATEGORY_INIT (gst_gio_base_sink_debug, "gio_base_sink", 0,
       "GIO base sink");
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_factory));
+  gst_element_class_add_static_pad_template (element_class, &sink_factory);
 }
 
 static void
index 133e12c..a51b104 100644 (file)
@@ -61,8 +61,7 @@ gst_gio_base_src_base_init (gpointer gclass)
   GST_DEBUG_CATEGORY_INIT (gst_gio_base_src_debug, "gio_base_src", 0,
       "GIO base source");
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_factory));
+  gst_element_class_add_static_pad_template (element_class, &src_factory);
 }
 
 static void
index 1a5f31f..205f1bb 100644 (file)
@@ -131,8 +131,7 @@ gst_gnome_vfs_sink_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sinktemplate));
+  gst_element_class_add_static_pad_template (element_class, &sinktemplate);
 
   gst_element_class_set_details_simple (element_class,
       "GnomeVFS Sink", "Sink/File",
index ef9ab74..9be426a 100644 (file)
@@ -179,8 +179,7 @@ gst_gnome_vfs_src_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&srctemplate));
+  gst_element_class_add_static_pad_template (element_class, &srctemplate);
   gst_element_class_set_details_simple (element_class,
       "GnomeVFS Source", "Source/File",
       "Read from any GnomeVFS-supported file",
index 48c1e27..467c90f 100644 (file)
@@ -194,10 +194,8 @@ gst_visual_class_init (gpointer g_class, gpointer class_data)
         klass->plugin->info->name, klass->plugin->info->version);
 
     /* FIXME: improve to only register what plugin supports? */
-    gst_element_class_add_pad_template (element,
-        gst_static_pad_template_get (&src_template));
-    gst_element_class_add_pad_template (element,
-        gst_static_pad_template_get (&sink_template));
+    gst_element_class_add_static_pad_template (element, &src_template);
+    gst_element_class_add_static_pad_template (element, &sink_template);
     gst_element_class_set_details_simple (element,
         longname, "Visualization",
         klass->plugin->info->about, "Benjamin Otte <otte@gnome.org>");
index 2851e52..92c02a7 100644 (file)
@@ -138,10 +138,10 @@ gst_ogg_avi_parse_base_init (gpointer g_class)
       "parse an ogg avi stream into pages (info about ogg: http://xiph.org)",
       "Wim Taymans <wim@fluendo.com>");
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&ogg_avi_parse_sink_template_factory));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&ogg_avi_parse_src_template_factory));
+  gst_element_class_add_static_pad_template (element_class,
+      &ogg_avi_parse_sink_template_factory);
+  gst_element_class_add_static_pad_template (element_class,
+      &ogg_avi_parse_src_template_factory);
 }
 
 static void
index 58aa560..44240c0 100644 (file)
@@ -1952,10 +1952,10 @@ gst_ogg_demux_base_init (gpointer g_class)
       "demux ogg streams (info about ogg: http://xiph.org)",
       "Wim Taymans <wim@fluendo.com>");
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&ogg_demux_sink_template_factory));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&ogg_demux_src_template_factory));
+  gst_element_class_add_static_pad_template (element_class,
+      &ogg_demux_sink_template_factory);
+  gst_element_class_add_static_pad_template (element_class,
+      &ogg_demux_src_template_factory);
 }
 
 static void
index 06133e3..80147eb 100644 (file)
@@ -170,10 +170,8 @@ gst_ogg_mux_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_factory));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_factory));
+  gst_element_class_add_static_pad_template (element_class, &src_factory);
+  gst_element_class_add_static_pad_template (element_class, &sink_factory);
 
   gst_element_class_set_details_simple (element_class,
       "Ogg muxer", "Codec/Muxer",
index 104a0e5..3bdcecb 100644 (file)
@@ -224,10 +224,10 @@ gst_ogg_parse_base_init (gpointer g_class)
       "parse ogg streams into pages (info about ogg: http://xiph.org)",
       "Michael Smith <msmith@fluendo.com>");
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&ogg_parse_sink_template_factory));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&ogg_parse_src_template_factory));
+  gst_element_class_add_static_pad_template (element_class,
+      &ogg_parse_sink_template_factory);
+  gst_element_class_add_static_pad_template (element_class,
+      &ogg_parse_src_template_factory);
 }
 
 static void
index 6b054a2..e68d5c2 100644 (file)
@@ -279,8 +279,8 @@ gst_ogm_audio_parse_base_init (GstOgmParseClass * klass)
       "parse an OGM audio header and stream",
       "GStreamer maintainers <gstreamer-devel@lists.sourceforge.net>");
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_factory_audio));
+  gst_element_class_add_static_pad_template (element_class,
+      &sink_factory_audio);
   audio_src_templ = gst_pad_template_new ("src",
       GST_PAD_SRC, GST_PAD_SOMETIMES, caps);
   gst_element_class_add_pad_template (element_class, audio_src_templ);
@@ -297,8 +297,8 @@ gst_ogm_video_parse_base_init (GstOgmParseClass * klass)
       "parse an OGM video header and stream",
       "GStreamer maintainers <gstreamer-devel@lists.sourceforge.net>");
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_factory_video));
+  gst_element_class_add_static_pad_template (element_class,
+      &sink_factory_video);
   video_src_templ = gst_pad_template_new ("src",
       GST_PAD_SRC, GST_PAD_SOMETIMES, caps);
   gst_element_class_add_pad_template (element_class, video_src_templ);
index d57cdf4..6abff7d 100644 (file)
@@ -368,16 +368,16 @@ gst_text_overlay_base_init (gpointer g_class)
   GstTextOverlayClass *klass = GST_TEXT_OVERLAY_CLASS (g_class);
   PangoFontMap *fontmap;
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_template_factory));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&video_sink_template_factory));
+  gst_element_class_add_static_pad_template (element_class,
+      &src_template_factory);
+  gst_element_class_add_static_pad_template (element_class,
+      &video_sink_template_factory);
 
   /* ugh */
   if (!GST_IS_TIME_OVERLAY_CLASS (g_class) &&
       !GST_IS_CLOCK_OVERLAY_CLASS (g_class)) {
-    gst_element_class_add_pad_template (element_class,
-        gst_static_pad_template_get (&text_sink_template_factory));
+    gst_element_class_add_static_pad_template (element_class,
+        &text_sink_template_factory);
   }
 
   gst_element_class_set_details_simple (element_class, "Text overlay",
index e200758..38ea44a 100644 (file)
@@ -175,10 +175,10 @@ gst_text_render_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_template_factory));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_template_factory));
+  gst_element_class_add_static_pad_template (element_class,
+      &src_template_factory);
+  gst_element_class_add_static_pad_template (element_class,
+      &sink_template_factory);
 
   gst_element_class_set_details_simple (element_class, "Text renderer",
       "Filter/Editor/Video",
index 9e417be..34d89db 100644 (file)
@@ -113,10 +113,10 @@ gst_theora_dec_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&theora_dec_src_factory));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&theora_dec_sink_factory));
+  gst_element_class_add_static_pad_template (element_class,
+      &theora_dec_src_factory);
+  gst_element_class_add_static_pad_template (element_class,
+      &theora_dec_sink_factory);
   gst_element_class_set_details_simple (element_class,
       "Theora video decoder", "Codec/Decoder/Video",
       "decode raw theora streams to raw YUV video",
index 0d32360..99f8c0a 100644 (file)
@@ -284,10 +284,10 @@ gst_theora_enc_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&theora_enc_src_factory));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&theora_enc_sink_factory));
+  gst_element_class_add_static_pad_template (element_class,
+      &theora_enc_src_factory);
+  gst_element_class_add_static_pad_template (element_class,
+      &theora_enc_sink_factory);
   gst_element_class_set_details_simple (element_class,
       "Theora video encoder", "Codec/Encoder/Video",
       "encode raw YUV video to a theora stream",
index 0ce68d9..c706d76 100644 (file)
@@ -105,10 +105,10 @@ gst_theora_parse_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&theora_parse_src_factory));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&theora_parse_sink_factory));
+  gst_element_class_add_static_pad_template (element_class,
+      &theora_parse_src_factory);
+  gst_element_class_add_static_pad_template (element_class,
+      &theora_parse_sink_factory);
   gst_element_class_set_details_simple (element_class,
       "Theora video parser", "Codec/Parser/Video",
       "parse raw theora streams", "Andy Wingo <wingo@pobox.com>");
index 9a89fe7..c1a3614 100644 (file)
@@ -79,13 +79,11 @@ static void
 gst_vorbis_dec_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
-  GstPadTemplate *src_template, *sink_template;
 
-  src_template = gst_static_pad_template_get (&vorbis_dec_src_factory);
-  gst_element_class_add_pad_template (element_class, src_template);
-
-  sink_template = gst_static_pad_template_get (&vorbis_dec_sink_factory);
-  gst_element_class_add_pad_template (element_class, sink_template);
+  gst_element_class_add_static_pad_template (element_class,
+      &vorbis_dec_src_factory);
+  gst_element_class_add_static_pad_template (element_class,
+      &vorbis_dec_sink_factory);
 
   gst_element_class_set_details_simple (element_class,
       "Vorbis audio decoder", "Codec/Decoder/Audio",
index 45c871a..dabedc6 100644 (file)
@@ -135,10 +135,10 @@ gst_vorbis_enc_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&vorbis_enc_src_factory));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&vorbis_enc_sink_factory));
+  gst_element_class_add_static_pad_template (element_class,
+      &vorbis_enc_src_factory);
+  gst_element_class_add_static_pad_template (element_class,
+      &vorbis_enc_sink_factory);
 
   gst_element_class_set_details_simple (element_class,
       "Vorbis audio encoder", "Codec/Encoder/Audio",
index 53fd7b1..4e905d8 100644 (file)
@@ -91,10 +91,10 @@ gst_vorbis_parse_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&vorbis_parse_src_factory));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&vorbis_parse_sink_factory));
+  gst_element_class_add_static_pad_template (element_class,
+      &vorbis_parse_src_factory);
+  gst_element_class_add_static_pad_template (element_class,
+      &vorbis_parse_sink_factory);
   gst_element_class_set_details_simple (element_class,
       "VorbisParse", "Codec/Parser/Audio",
       "parse raw vorbis streams",
index 39e3def..fed4dd8 100644 (file)
@@ -229,8 +229,8 @@ gst_app_sink_base_init (gpointer g_class)
       "Generic/Sink", "Allow the application to get access to raw buffer",
       "David Schleef <ds@schleef.org>, Wim Taymans <wim.taymans@gmail.com>");
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gst_app_sink_template));
+  gst_element_class_add_static_pad_template (element_class,
+      &gst_app_sink_template);
 }
 
 static void
index fb72c29..18e3573 100644 (file)
@@ -260,8 +260,8 @@ gst_app_src_base_init (gpointer g_class)
       "Generic/Source", "Allow the application to feed buffers to a pipeline",
       "David Schleef <ds@schleef.org>, Wim Taymans <wim.taymans@gmail.com>");
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gst_app_src_template));
+  gst_element_class_add_static_pad_template (element_class,
+      &gst_app_src_template);
 }
 
 static void
index e753a56..06036db 100644 (file)
@@ -181,8 +181,8 @@ gst_cdda_base_src_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gst_cdda_base_src_src_template));
+  gst_element_class_add_static_pad_template (element_class,
+      &gst_cdda_base_src_src_template);
 
   /* our very own formats */
   track_format = gst_format_register ("track", "CD track");
index 893989a..7803ddb 100644 (file)
@@ -214,8 +214,7 @@ gst_tag_demux_base_init (gpointer klass)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_factory));
+  gst_element_class_add_static_pad_template (element_class, &src_factory);
 
   GST_DEBUG_CATEGORY_INIT (tagdemux_debug, "tagdemux", 0,
       "tag demux base class");
index 5ba7c7d..9c69717 100644 (file)
@@ -796,10 +796,10 @@ gst_adder_base_init (gpointer g_class)
 {
   GstElementClass *gstelement_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (gstelement_class,
-      gst_static_pad_template_get (&gst_adder_src_template));
-  gst_element_class_add_pad_template (gstelement_class,
-      gst_static_pad_template_get (&gst_adder_sink_template));
+  gst_element_class_add_static_pad_template (gstelement_class,
+      &gst_adder_src_template);
+  gst_element_class_add_static_pad_template (gstelement_class,
+      &gst_adder_sink_template);
   gst_element_class_set_details_simple (gstelement_class, "Adder",
       "Generic/Audio",
       "Add N audio channels together",
index 188c191..717cf10 100644 (file)
@@ -221,10 +221,10 @@ gst_audio_convert_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gst_audio_convert_src_template));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gst_audio_convert_sink_template));
+  gst_element_class_add_static_pad_template (element_class,
+      &gst_audio_convert_src_template);
+  gst_element_class_add_static_pad_template (element_class,
+      &gst_audio_convert_sink_template);
   gst_element_class_set_details_simple (element_class,
       "Audio converter", "Filter/Converter/Audio",
       "Convert audio to different formats", "Benjamin Otte <otte@gnome.org>");
index 40d3467..cf697c5 100644 (file)
@@ -165,10 +165,10 @@ gst_audio_rate_base_init (gpointer g_class)
       "Drops/duplicates/adjusts timestamps on audio samples to make a perfect stream",
       "Wim Taymans <wim@fluendo.com>");
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gst_audio_rate_sink_template));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gst_audio_rate_src_template));
+  gst_element_class_add_static_pad_template (element_class,
+      &gst_audio_rate_sink_template);
+  gst_element_class_add_static_pad_template (element_class,
+      &gst_audio_rate_src_template);
 }
 
 static void
index e63d106..7c48882 100644 (file)
@@ -154,10 +154,10 @@ gst_audio_resample_base_init (gpointer g_class)
 {
   GstElementClass *gstelement_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (gstelement_class,
-      gst_static_pad_template_get (&gst_audio_resample_src_template));
-  gst_element_class_add_pad_template (gstelement_class,
-      gst_static_pad_template_get (&gst_audio_resample_sink_template));
+  gst_element_class_add_static_pad_template (gstelement_class,
+      &gst_audio_resample_src_template);
+  gst_element_class_add_static_pad_template (gstelement_class,
+      &gst_audio_resample_sink_template);
 
   gst_element_class_set_details_simple (gstelement_class, "Audio resampler",
       "Filter/Converter/Audio", "Resamples audio",
index 78a5d6b..4428cce 100644 (file)
@@ -168,8 +168,8 @@ gst_audio_test_src_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gst_audio_test_src_src_template));
+  gst_element_class_add_static_pad_template (element_class,
+      &gst_audio_test_src_src_template);
   gst_element_class_set_details_simple (element_class,
       "Audio test source", "Source/Audio",
       "Creates audio test signals of given frequency and volume",
index d34d806..17610cb 100644 (file)
@@ -408,16 +408,16 @@ gst_encode_bin_class_init (GstEncodeBinClass * klass)
 
   klass->request_pad = gst_encode_bin_request_pad_signal;
 
-  gst_element_class_add_pad_template (gstelement_klass,
-      gst_static_pad_template_get (&muxer_src_template));
-  gst_element_class_add_pad_template (gstelement_klass,
-      gst_static_pad_template_get (&video_sink_template));
-  gst_element_class_add_pad_template (gstelement_klass,
-      gst_static_pad_template_get (&audio_sink_template));
-  /* gst_element_class_add_pad_template (gstelement_klass, */
-  /*     gst_static_pad_template_get (&text_sink_template)); */
-  gst_element_class_add_pad_template (gstelement_klass,
-      gst_static_pad_template_get (&private_sink_template));
+  gst_element_class_add_static_pad_template (gstelement_klass,
+      &muxer_src_template);
+  gst_element_class_add_static_pad_template (gstelement_klass,
+      &video_sink_template);
+  gst_element_class_add_static_pad_template (gstelement_klass,
+      &audio_sink_template);
+  /* gst_element_class_add_static_pad_template (gstelement_klass, */
+  /*     &text_sink_template); */
+  gst_element_class_add_static_pad_template (gstelement_klass,
+      &private_sink_template);
 
   gstelement_klass->change_state =
       GST_DEBUG_FUNCPTR (gst_encode_bin_change_state);
index ed0e42b..97a5635 100644 (file)
@@ -96,10 +96,9 @@ gst_smart_encoder_class_init (GstSmartEncoderClass * klass)
 
   gst_smart_encoder_parent_class = g_type_class_peek_parent (klass);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_template));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_template));
+  gst_element_class_add_static_pad_template (element_class, &src_template);
+  gst_element_class_add_static_pad_template (element_class,
+      &sink_template);
 
   gst_element_class_set_details_simple (element_class, "Smart Video Encoder",
       "Codec/Recoder/Video",
index 72d40fe..7328695 100644 (file)
@@ -62,10 +62,10 @@ gst_stream_combiner_class_init (GstStreamCombinerClass * klass)
   GST_DEBUG_CATEGORY_INIT (gst_stream_combiner_debug, "streamcombiner", 0,
       "Stream Combiner");
 
-  gst_element_class_add_pad_template (gstelement_klass,
-      gst_static_pad_template_get (&src_template));
-  gst_element_class_add_pad_template (gstelement_klass,
-      gst_static_pad_template_get (&sink_template));
+  gst_element_class_add_static_pad_template (gstelement_klass,
+      &src_template);
+  gst_element_class_add_static_pad_template (gstelement_klass,
+      &sink_template);
 
   gstelement_klass->request_new_pad =
       GST_DEBUG_FUNCPTR (gst_stream_combiner_request_new_pad);
index c531b4c..53f7554 100644 (file)
@@ -62,10 +62,10 @@ gst_stream_splitter_class_init (GstStreamSplitterClass * klass)
   GST_DEBUG_CATEGORY_INIT (gst_stream_splitter_debug, "streamsplitter", 0,
       "Stream Splitter");
 
-  gst_element_class_add_pad_template (gstelement_klass,
-      gst_static_pad_template_get (&src_template));
-  gst_element_class_add_pad_template (gstelement_klass,
-      gst_static_pad_template_get (&sink_template));
+  gst_element_class_add_static_pad_template (gstelement_klass,
+      &src_template);
+  gst_element_class_add_static_pad_template (gstelement_klass,
+      &sink_template);
 
   gstelement_klass->request_new_pad =
       GST_DEBUG_FUNCPTR (gst_stream_splitter_request_new_pad);
index 4ba0204..c8805b3 100644 (file)
@@ -341,10 +341,10 @@ gst_ffmpegcsp_base_init (gpointer klass)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gst_ffmpegcsp_src_template));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gst_ffmpegcsp_sink_template));
+  gst_element_class_add_static_pad_template (element_class,
+      &gst_ffmpegcsp_src_template);
+  gst_element_class_add_static_pad_template (element_class,
+      &gst_ffmpegcsp_sink_template);
 
   gst_element_class_set_details_simple (element_class,
       "FFMPEG Colorspace converter", "Filter/Converter/Video",
index 702e63f..88a24a8 100644 (file)
@@ -89,10 +89,10 @@ gst_gdp_depay_base_init (gpointer g_class)
       "Depayloads GStreamer Data Protocol buffers",
       "Thomas Vander Stichele <thomas at apestaart dot org>");
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gdp_depay_sink_template));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gdp_depay_src_template));
+  gst_element_class_add_static_pad_template (element_class,
+      &gdp_depay_sink_template);
+  gst_element_class_add_static_pad_template (element_class,
+      &gdp_depay_src_template);
 }
 
 static void
index 6da4967..209a0c7 100644 (file)
@@ -102,10 +102,10 @@ gst_gdp_pay_base_init (gpointer g_class)
       "Payloads GStreamer Data Protocol buffers",
       "Thomas Vander Stichele <thomas at apestaart dot org>");
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gdp_pay_sink_template));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gdp_pay_src_template));
+  gst_element_class_add_static_pad_template (element_class,
+      &gdp_pay_sink_template);
+  gst_element_class_add_static_pad_template (element_class,
+      &gdp_pay_src_template);
 }
 
 static void
index a3fe801..cab0542 100644 (file)
@@ -287,10 +287,10 @@ gst_decode_bin_class_init (GstDecodeBinClass * klass)
           "The caps of the input data. (NULL = use typefind element)",
           GST_TYPE_CAPS, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
 
-  gst_element_class_add_pad_template (gstelement_klass,
-      gst_static_pad_template_get (&decoder_bin_sink_template));
-  gst_element_class_add_pad_template (gstelement_klass,
-      gst_static_pad_template_get (&decoder_bin_src_template));
+  gst_element_class_add_static_pad_template (gstelement_klass,
+      &decoder_bin_sink_template);
+  gst_element_class_add_static_pad_template (gstelement_klass,
+      &decoder_bin_src_template);
 
   gst_element_class_set_details_simple (gstelement_klass,
       "Decoder Bin", "Generic/Bin/Decoder",
index 2d6f857..8eff9de 100644 (file)
@@ -930,10 +930,10 @@ gst_decode_bin_class_init (GstDecodeBinClass * klass)
   klass->autoplug_sort = GST_DEBUG_FUNCPTR (gst_decode_bin_autoplug_sort);
   klass->autoplug_select = GST_DEBUG_FUNCPTR (gst_decode_bin_autoplug_select);
 
-  gst_element_class_add_pad_template (gstelement_klass,
-      gst_static_pad_template_get (&decoder_bin_sink_template));
-  gst_element_class_add_pad_template (gstelement_klass,
-      gst_static_pad_template_get (&decoder_bin_src_template));
+  gst_element_class_add_static_pad_template (gstelement_klass,
+      &decoder_bin_sink_template);
+  gst_element_class_add_static_pad_template (gstelement_klass,
+      &decoder_bin_src_template);
 
   gst_element_class_set_details_simple (gstelement_klass,
       "Decoder Bin", "Generic/Bin/Decoder",
index 3639f6c..8ab2eda 100644 (file)
@@ -473,16 +473,16 @@ gst_play_sink_class_init (GstPlaySinkClass * klass)
       G_STRUCT_OFFSET (GstPlaySinkClass, convert_frame), NULL, NULL,
       gst_play_marshal_BUFFER__BOXED, GST_TYPE_BUFFER, 1, GST_TYPE_CAPS);
 
-  gst_element_class_add_pad_template (gstelement_klass,
-      gst_static_pad_template_get (&audiorawtemplate));
-  gst_element_class_add_pad_template (gstelement_klass,
-      gst_static_pad_template_get (&audiotemplate));
-  gst_element_class_add_pad_template (gstelement_klass,
-      gst_static_pad_template_get (&videorawtemplate));
-  gst_element_class_add_pad_template (gstelement_klass,
-      gst_static_pad_template_get (&videotemplate));
-  gst_element_class_add_pad_template (gstelement_klass,
-      gst_static_pad_template_get (&texttemplate));
+  gst_element_class_add_static_pad_template (gstelement_klass,
+      &audiorawtemplate);
+  gst_element_class_add_static_pad_template (gstelement_klass,
+      &audiotemplate);
+  gst_element_class_add_static_pad_template (gstelement_klass,
+      &videorawtemplate);
+  gst_element_class_add_static_pad_template (gstelement_klass,
+      &videotemplate);
+  gst_element_class_add_static_pad_template (gstelement_klass,
+      &texttemplate);
   gst_element_class_set_details_simple (gstelement_klass, "Player Sink",
       "Generic/Bin/Sink",
       "Convenience sink for multiple streams",
index 294eac4..aafe1fb 100644 (file)
@@ -466,10 +466,10 @@ gst_stream_selector_base_init (GstStreamSelectorClass * klass)
       "Julien Moutte <julien@moutte.net>, "
       "Jan Schmidt <thaytan@mad.scientist.com>, "
       "Wim Taymans <wim.taymans@gmail.com>");
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gst_stream_selector_sink_factory));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gst_stream_selector_src_factory));
+  gst_element_class_add_static_pad_template (element_class,
+      &gst_stream_selector_sink_factory);
+  gst_element_class_add_static_pad_template (element_class,
+      &gst_stream_selector_src_factory);
 }
 
 static void
index 9a48ab0..594b4b2 100644 (file)
@@ -955,10 +955,10 @@ gst_stream_synchronizer_base_init (gpointer g_class)
 {
   GstElementClass *gstelement_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (gstelement_class,
-      gst_static_pad_template_get (&srctemplate));
-  gst_element_class_add_pad_template (gstelement_class,
-      gst_static_pad_template_get (&sinktemplate));
+  gst_element_class_add_static_pad_template (gstelement_class,
+      &srctemplate);
+  gst_element_class_add_static_pad_template (gstelement_class,
+      &sinktemplate);
 
   gst_element_class_set_details_simple (gstelement_class,
       "Stream Synchronizer", "Generic",
index 49d790b..2828a8c 100644 (file)
@@ -1617,13 +1617,13 @@ gst_subtitle_overlay_base_init (gpointer g_class)
 {
   GstElementClass *gstelement_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (gstelement_class,
-      gst_static_pad_template_get (&srctemplate));
+  gst_element_class_add_static_pad_template (gstelement_class,
+      &srctemplate);
 
-  gst_element_class_add_pad_template (gstelement_class,
-      gst_static_pad_template_get (&video_sinktemplate));
-  gst_element_class_add_pad_template (gstelement_class,
-      gst_static_pad_template_get (&subtitle_sinktemplate));
+  gst_element_class_add_static_pad_template (gstelement_class,
+      &video_sinktemplate);
+  gst_element_class_add_static_pad_template (gstelement_class,
+      &subtitle_sinktemplate);
 
   gst_element_class_set_details_simple (gstelement_class, "Subtitle Overlay",
       "Video/Overlay/Subtitle",
index 2404242..c672a3a 100644 (file)
@@ -213,8 +213,8 @@ gst_uri_decode_bin_base_init (gpointer g_class)
 {
   GstElementClass *gstelement_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (gstelement_class,
-      gst_static_pad_template_get (&srctemplate));
+  gst_element_class_add_static_pad_template (gstelement_class,
+      &srctemplate);
   gst_element_class_set_details_simple (gstelement_class,
       "URI Decoder", "Generic/Bin/Decoder",
       "Autoplug and decode an URI to raw media",
index 5aa68e3..e2dccd3 100644 (file)
@@ -58,10 +58,8 @@ gst_ssa_parse_base_init (gpointer klass)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_templ));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_templ));
+  gst_element_class_add_static_pad_template (element_class, &sink_templ);
+  gst_element_class_add_static_pad_template (element_class, &src_templ);
   gst_element_class_set_details_simple (element_class,
       "SSA Subtitle Parser", "Codec/Parser/Subtitle",
       "Parses SSA subtitle streams",
index 240ef58..9c31b54 100644 (file)
@@ -124,10 +124,8 @@ gst_sub_parse_base_init (GstSubParseClass * klass)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_templ));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_templ));
+  gst_element_class_add_static_pad_template (element_class, &sink_templ);
+  gst_element_class_add_static_pad_template (element_class, &src_templ);
   gst_element_class_set_details_simple (element_class,
       "Subtitle parser", "Codec/Parser/Subtitle",
       "Parses subtitle (.sub) files into text streams",
index 98c62d7..b6c0f6d 100644 (file)
@@ -355,8 +355,7 @@ gst_multi_fd_sink_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sinktemplate));
+  gst_element_class_add_static_pad_template (element_class, &sinktemplate);
 
   gst_element_class_set_details_simple (element_class,
       "Multi filedescriptor sink", "Sink/Network",
index ca60578..a4d9108 100644 (file)
@@ -121,8 +121,7 @@ gst_tcp_client_sink_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sinktemplate));
+  gst_element_class_add_static_pad_template (element_class, &sinktemplate);
 
   gst_element_class_set_details_simple (element_class,
       "TCP client sink", "Sink/Network",
index b8ac849..bfceaca 100644 (file)
@@ -93,8 +93,7 @@ gst_tcp_client_src_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&srctemplate));
+  gst_element_class_add_static_pad_template (element_class, &srctemplate);
 
   gst_element_class_set_details_simple (element_class,
       "TCP client source", "Source/Network",
index c4244da..35d2863 100644 (file)
@@ -91,8 +91,7 @@ gst_tcp_server_src_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&srctemplate));
+  gst_element_class_add_static_pad_template (element_class, &srctemplate);
 
   gst_element_class_set_details_simple (element_class,
       "TCP server source", "Source/Network",
index bf416fa..98fc92e 100644 (file)
@@ -170,10 +170,10 @@ gst_video_rate_base_init (gpointer g_class)
       "Drops/duplicates/adjusts timestamps on video frames to make a perfect stream",
       "Wim Taymans <wim@fluendo.com>");
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gst_video_rate_sink_template));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gst_video_rate_src_template));
+  gst_element_class_add_static_pad_template (element_class,
+      &gst_video_rate_sink_template);
+  gst_element_class_add_static_pad_template (element_class,
+      &gst_video_rate_src_template);
 }
 
 static void
index f452e62..7b44647 100644 (file)
@@ -229,15 +229,18 @@ static void
 gst_video_scale_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
+  GstPadTemplate *pad_template;
 
   gst_element_class_set_details_simple (element_class,
       "Video scaler", "Filter/Converter/Video/Scaler",
       "Resizes video", "Wim Taymans <wim.taymans@chello.be>");
 
-  gst_element_class_add_pad_template (element_class,
-      gst_video_scale_sink_template_factory ());
-  gst_element_class_add_pad_template (element_class,
-      gst_video_scale_src_template_factory ());
+  pad_template = gst_video_scale_sink_template_factory ();
+  gst_element_class_add_pad_template (element_class, pad_template);
+  gst_object_unref (pad_template);
+  pad_template = gst_video_scale_src_template_factory ();
+  gst_element_class_add_pad_template (element_class, pad_template);
+  gst_object_unref (pad_template);
 }
 
 static void
index 227e0a9..2dc0108 100644 (file)
@@ -168,14 +168,17 @@ static void
 gst_video_test_src_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
+  GstPadTemplate *pad_template;
 
   gst_element_class_set_details_simple (element_class,
       "Video test source", "Source/Video",
       "Creates a test video stream", "David A. Schleef <ds@schleef.org>");
 
-  gst_element_class_add_pad_template (element_class,
+  pad_template =
       gst_pad_template_new ("src", GST_PAD_SRC, GST_PAD_ALWAYS,
-          gst_video_test_src_getcaps (NULL)));
+      gst_video_test_src_getcaps (NULL));
+  gst_element_class_add_pad_template (element_class, pad_template);
+  gst_object_unref (pad_template);
 }
 
 static void
index 3a5cfaa..c59c158 100644 (file)
@@ -115,8 +115,8 @@ gst_v4lmjpegsink_base_init (gpointer g_class)
       "Writes MJPEG-encoded frames to a zoran MJPEG/video4linux device",
       "GStreamer maintainers <gstreamer-devel@lists.sourceforge.net>");
 
-  gst_element_class_add_pad_template (gstelement_class,
-      gst_static_pad_template_get (&sink_template));
+  gst_element_class_add_static_pad_template (gstelement_class,
+      &sink_template);
 }
 
 static void
index 61860a1..c848b54 100644 (file)
@@ -144,8 +144,8 @@ gst_v4lmjpegsrc_base_init (gpointer g_class)
       "Reads MJPEG-encoded frames from a zoran MJPEG/video4linux device",
       "GStreamer maintainers <gstreamer-devel@lists.sourceforge.net>");
 
-  gst_element_class_add_pad_template (gstelement_class,
-      gst_static_pad_template_get (&src_template));
+  gst_element_class_add_static_pad_template (gstelement_class,
+      &src_template);
 }
 
 static void
index c0b5f78..208b781 100644 (file)
@@ -77,8 +77,8 @@ gst_v4lsrc_base_init (gpointer g_class)
       "Reads raw frames from a video4linux device",
       "GStreamer maintainers <gstreamer-devel@lists.sourceforge.net>");
 
-  gst_element_class_add_pad_template (gstelement_class,
-      gst_static_pad_template_get (&v4l_src_template));
+  gst_element_class_add_static_pad_template (gstelement_class,
+      &v4l_src_template);
 }
 
 static void
index 41d7df0..f9ac6b7 100644 (file)
@@ -2376,8 +2376,8 @@ gst_ximagesink_base_init (gpointer g_class)
       "Video sink", "Sink/Video",
       "A standard X based videosink", "Julien Moutte <julien@moutte.net>");
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gst_ximagesink_sink_template_factory));
+  gst_element_class_add_static_pad_template (element_class,
+      &gst_ximagesink_sink_template_factory);
 }
 
 static void
index 03e4d30..9f5166a 100644 (file)
@@ -3536,8 +3536,8 @@ gst_xvimagesink_base_init (gpointer g_class)
       "Video sink", "Sink/Video",
       "A Xv based videosink", "Julien Moutte <julien@moutte.net>");
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&gst_xvimagesink_sink_template_factory));
+  gst_element_class_add_static_pad_template (element_class,
+      &gst_xvimagesink_sink_template_factory);
 }
 
 static void
index 55b6703..4d4edd9 100644 (file)
@@ -62,10 +62,9 @@ test_injector_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_template));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_template));
+  gst_element_class_add_static_pad_template (element_class, &src_template);
+  gst_element_class_add_static_pad_template (element_class,
+      &sink_template);
 }
 
 static void
index d5d327e..b32a776 100644 (file)
@@ -218,10 +218,9 @@ test_mpeg_audio_parse_base_init (gpointer klass)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_template));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_template));
+  gst_element_class_add_static_pad_template (element_class,
+      &sink_template);
+  gst_element_class_add_static_pad_template (element_class, &src_template);
 
   gst_element_class_set_details_simple (element_class, "MPEG1 Audio Parser",
       "Codec/Parser/Audio", "Pretends to parse mpeg1 audio stream",
index 784c0e5..27ed982 100644 (file)
@@ -223,10 +223,9 @@ test_mpeg_audio_parse_base_init (gpointer klass)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_template));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_template));
+  gst_element_class_add_static_pad_template (element_class,
+      &sink_template);
+  gst_element_class_add_static_pad_template (element_class, &src_template);
 
   gst_element_class_set_details_simple (element_class, "MPEG1 Audio Parser",
       "Codec/Parser/Audio", "Pretends to parse mpeg1 audio stream",
@@ -391,10 +390,8 @@ gst_fake_h264_parser_base_init (gpointer klass)
           "stream-format=(string) { avc, byte-stream }"));
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_templ));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_templ));
+  gst_element_class_add_static_pad_template (element_class, &sink_templ);
+  gst_element_class_add_static_pad_template (element_class, &src_templ);
   gst_element_class_set_details_simple (element_class,
       "FakeH264Parser", "Codec/Parser/Converter/Video", "yep", "me");
 }
@@ -492,10 +489,8 @@ gst_fake_h264_decoder_base_init (gpointer klass)
       GST_STATIC_CAPS ("video/x-raw-yuv"));
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_templ));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_templ));
+  gst_element_class_add_static_pad_template (element_class, &sink_templ);
+  gst_element_class_add_static_pad_template (element_class, &src_templ);
   gst_element_class_set_details_simple (element_class,
       "FakeH264Decoder", "Codec/Decoder/Video", "yep", "me");
 }
index 08aace6..c550571 100644 (file)
@@ -459,8 +459,7 @@ gst_red_video_src_base_init (gpointer klass)
       );
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_templ));
+  gst_element_class_add_static_pad_template (element_class, &src_templ);
   gst_element_class_set_details_simple (element_class,
       "Red Video Src", "Source/Video", "yep", "me");
 }
@@ -571,8 +570,7 @@ gst_codec_src_base_init (gpointer klass)
       );
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_templ));
+  gst_element_class_add_static_pad_template (element_class, &src_templ);
   gst_element_class_set_details_simple (element_class,
       "Codec Src", "Source/Video", "yep", "me");
 }
index 5f3c544..03ab020 100644 (file)
@@ -124,8 +124,7 @@ gst_caps_src_base_init (gpointer klass)
       GST_STATIC_CAPS_ANY);
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_templ));
+  gst_element_class_add_static_pad_template (element_class, &src_templ);
   gst_element_class_set_details_simple (element_class,
       "CapsSource", "Source/Generic", "yep", "me");
 }
@@ -278,8 +277,7 @@ gst_audio_codec_sink_base_init (gpointer klass)
       );
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_templ));
+  gst_element_class_add_static_pad_template (element_class, &sink_templ);
   gst_element_class_set_details_simple (element_class,
       "AudioCodecSink", "Sink/Audio", "yep", "me");
 }
@@ -384,8 +382,7 @@ gst_video_codec_sink_base_init (gpointer klass)
       );
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_templ));
+  gst_element_class_add_static_pad_template (element_class, &sink_templ);
   gst_element_class_set_details_simple (element_class,
       "VideoCodecSink", "Sink/Video", "yep", "me");
 }
@@ -468,10 +465,8 @@ gst_codec_demuxer_base_init (gpointer klass)
       );
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_templ));
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_templ));
+  gst_element_class_add_static_pad_template (element_class, &sink_templ);
+  gst_element_class_add_static_pad_template (element_class, &src_templ);
   gst_element_class_set_details_simple (element_class,
       "CodecDemuxer", "Codec/Demuxer", "yep", "me");
 }
index aef9272..1049367 100644 (file)
@@ -571,8 +571,7 @@ gst_red_video_src_base_init (gpointer klass)
       );
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_templ));
+  gst_element_class_add_static_pad_template (element_class, &src_templ);
   gst_element_class_set_details_simple (element_class,
       "Red Video Src", "Source/Video", "yep", "me");
 }
@@ -683,8 +682,7 @@ gst_codec_src_base_init (gpointer klass)
       );
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&src_templ));
+  gst_element_class_add_static_pad_template (element_class, &src_templ);
   gst_element_class_set_details_simple (element_class,
       "Codec Src", "Source/Video", "yep", "me");
 }
index 276261f..f297efc 100644 (file)
@@ -642,8 +642,8 @@ gst_test_reverse_negotiation_sink_base_init (gpointer g_class)
       "Test Reverse Negotiation Sink",
       "Sink",
       "Some test sink", "Sebastian Dröge <sebastian.droege@collabora.co.uk>");
-  gst_element_class_add_pad_template (gstelement_class,
-      gst_static_pad_template_get (&sinktemplate));
+  gst_element_class_add_static_pad_template (gstelement_class,
+      &sinktemplate);
 }
 
 static void