Merge remote-tracking branch 'origin/master' into 0.11
authorTim-Philipp Müller <tim.muller@collabora.co.uk>
Sun, 12 Feb 2012 17:03:37 +0000 (17:03 +0000)
committerTim-Philipp Müller <tim.muller@collabora.co.uk>
Sun, 12 Feb 2012 17:03:37 +0000 (17:03 +0000)
Conflicts:
ext/taglib/gstapev2mux.cc
ext/taglib/gstid3v2mux.cc
ext/taglib/gsttaglibmux.c
ext/taglib/gsttaglibmux.h

1  2 
ext/taglib/gstapev2mux.cc
ext/taglib/gstid3v2mux.cc

@@@ -64,21 -64,26 +64,32 @@@ static GstStaticPadTemplate src_templat
      GST_PAD_ALWAYS,
      GST_STATIC_CAPS ("application/x-apetag"));
  
- G_DEFINE_TYPE (GstApev2Mux, gst_apev2_mux, GST_TYPE_TAG_LIB_MUX);
+ static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink",
+     GST_PAD_SINK,
+     GST_PAD_ALWAYS,
+     GST_STATIC_CAPS ("ANY"));
 -GST_BOILERPLATE (GstApev2Mux, gst_apev2_mux, GstTagMux,
 -    GST_TYPE_TAG_MUX);
++G_DEFINE_TYPE (GstApev2Mux, gst_apev2_mux, GST_TYPE_TAG_MUX);
  
- static GstBuffer *gst_apev2_mux_render_tag (GstTagLibMux * mux,
-     GstTagList * taglist);
+ static GstBuffer *gst_apev2_mux_render_tag (GstTagMux * mux,
+     const GstTagList * taglist);
+ static GstBuffer *gst_apev2_mux_render_end_tag (GstTagMux * mux,
+     const GstTagList * taglist);
  
  static void
 -gst_apev2_mux_base_init (gpointer g_class)
 +gst_apev2_mux_class_init (GstApev2MuxClass * klass)
  {
 -  GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 +  GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 +
-   GST_TAG_LIB_MUX_CLASS (klass)->render_tag =
++  GST_TAG_MUX_CLASS (klass)->render_start_tag =
 +      GST_DEBUG_FUNCPTR (gst_apev2_mux_render_tag);
++  GST_TAG_MUX_CLASS (klass)->render_end_tag =
++      GST_DEBUG_FUNCPTR (gst_apev2_mux_render_end_tag);
  
 -  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_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_set_details_simple (element_class,
        "TagLib-based APEv2 Muxer", "Formatter/Metadata",
@@@ -72,22 -72,25 +72,32 @@@ static GstStaticPadTemplate src_templat
      GST_PAD_ALWAYS,
      GST_STATIC_CAPS ("application/x-id3"));
  
+ static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink",
+     GST_PAD_SINK,
+     GST_PAD_ALWAYS,
+     GST_STATIC_CAPS ("ANY"));
  
- G_DEFINE_TYPE (GstId3v2Mux, gst_id3v2_mux, GST_TYPE_TAG_LIB_MUX);
 -GST_BOILERPLATE (GstId3v2Mux, gst_id3v2_mux, GstTagMux, GST_TYPE_TAG_MUX);
++G_DEFINE_TYPE (GstId3v2Mux, gst_id3v2_mux, GST_TYPE_TAG_MUX);
  
- static GstBuffer *gst_id3v2_mux_render_tag (GstTagLibMux * mux,
-     GstTagList * taglist);
+ static GstBuffer *gst_id3v2_mux_render_tag (GstTagMux * mux,
+     const GstTagList * taglist);
+ static GstBuffer *gst_id3v2_mux_render_end_tag (GstTagMux * mux,
+     const GstTagList * taglist);
  
  static void
 -gst_id3v2_mux_base_init (gpointer g_class)
 +gst_id3v2_mux_class_init (GstId3v2MuxClass * klass)
  {
 -  GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
 +  GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 +
-   GST_TAG_LIB_MUX_CLASS (klass)->render_tag =
++  GST_TAG_MUX_CLASS (klass)->render_start_tag =
 +      GST_DEBUG_FUNCPTR (gst_id3v2_mux_render_tag);
++  GST_TAG_MUX_CLASS (klass)->render_end_tag =
++      GST_DEBUG_FUNCPTR (gst_id3v2_mux_render_end_tag);
  
 -  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_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_set_details_simple (element_class,
        "TagLib-based ID3v2 Muxer", "Formatter/Metadata",