# HG changeset patch
# User renatofilho
# Date 1190136050 -3600
# Node ID 2498e4f8c75835449ed703f070482155e07dcc59
# Parent  2b109fc895aec4f20e8fda3046675eae766cf025
[svn r858] fixed debian scripts

diff -r 2b109fc895ae -r 2498e4f8c758 gmyth/debian/changelog
--- a/gmyth/debian/changelog	Tue Sep 18 18:19:39 2007 +0100
+++ b/gmyth/debian/changelog	Tue Sep 18 18:20:50 2007 +0100
@@ -1,4 +1,4 @@
-gmyth (0.4) unstable; urgency=low
+gmyth (0.4-indt1) unstable; urgency=low
 
   * Bug fixes
   * Improvements in the schedule management (add all schedule, add exception, ...)
diff -r 2b109fc895ae -r 2498e4f8c758 gst-gmyth/autogen.sh
--- a/gst-gmyth/autogen.sh	Tue Sep 18 18:19:39 2007 +0100
+++ b/gst-gmyth/autogen.sh	Tue Sep 18 18:20:50 2007 +0100
@@ -4,7 +4,7 @@
 srcdir=`dirname $0`
 test -z "$srcdir" && srcdir=.
 
-PKG_NAME="gmemcoder"
+PKG_NAME="gstreamer elements"
 
 (test -f $srcdir/configure.ac) || {
     echo -n "**Error**: Directory "\`$srcdir\'" does not look like the"
diff -r 2b109fc895ae -r 2498e4f8c758 gst-gmyth/debian/control
--- a/gst-gmyth/debian/control	Tue Sep 18 18:19:39 2007 +0100
+++ b/gst-gmyth/debian/control	Tue Sep 18 18:20:50 2007 +0100
@@ -4,6 +4,7 @@
 Maintainer: Renato Araujo Oliveira Filho  <renato.filho@indt.org.br>
 Build-Depends: debhelper (>= 4.1.0), cdbs (>= 0.4.8), autotools-dev, pkg-config (>= 0.11.0), libgstreamer0.10-dev (>= 0.10.0), gmyth-dev (>= 0.3)
 Standards-Version: 3.6.2
+Section: user/library
 
 Package: gstreamer0.10-indt-nuvdemux
 Architecture: any
diff -r 2b109fc895ae -r 2498e4f8c758 gst-gmyth/mythsrc/Makefile.am
--- a/gst-gmyth/mythsrc/Makefile.am	Tue Sep 18 18:19:39 2007 +0100
+++ b/gst-gmyth/mythsrc/Makefile.am	Tue Sep 18 18:20:50 2007 +0100
@@ -22,8 +22,6 @@
 gstmythtvsrc.c: gstmythtvsrc.h
 	cvs -d:pserver:anoncvs@anoncvs.freedesktop.org:/cvs/gstreamer/ co gst-plugins-bad/ext/mythtv/gstmythtvsrc.c
 	mv gst-plugins-bad/ext/mythtv/gstmythtvsrc.c .
-
-gstmythtvsrc.h:
 	cvs -d:pserver:anoncvs@anoncvs.freedesktop.org:/cvs/gstreamer/ co gst-plugins-bad/ext/mythtv/gstmythtvsrc.h
 	mv gst-plugins-bad/ext/mythtv/gstmythtvsrc.h .
 
diff -r 2b109fc895ae -r 2498e4f8c758 gst-gmyth/playbinmaemo/gstplaybinmaemo.c
--- a/gst-gmyth/playbinmaemo/gstplaybinmaemo.c	Tue Sep 18 18:19:39 2007 +0100
+++ b/gst-gmyth/playbinmaemo/gstplaybinmaemo.c	Tue Sep 18 18:20:50 2007 +0100
@@ -74,7 +74,7 @@
                                                      const GstCaps *caps);
 static GstPad   *find_sink_pad                      (GstElement * element);
 static void     update_volume                       (GstPlayBinMaemo *pbm,
-                                                     gfloat volume);
+                                                     gdouble volume);
 static void     update_xid                          (GstPlayBinMaemo *pbm);
 static void     new_decoded_pad_cb                  (GstElement *object,
                                                      GstPad* pad,
@@ -87,9 +87,11 @@
                                                      GstPad *pad,
                                                      GstCaps *casp,
                                                      gpointer user_data);
+#if 0
 static gboolean autoplug_continue_cb                (GstElement* object,
                                                      GstCaps* caps,
                                                      gpointer user_data);
+#endif 
 static gboolean add_element                         (GstPlayBinMaemo *pbm,
                                                      GstElement *child);
 static void     clear_elements                      (GstPlayBinMaemo *pbm);
@@ -182,6 +184,7 @@
   play_bin_maemo = GST_PLAY_BIN_MAEMO (object);
   g_free (play_bin_maemo->uri);
   play_bin_maemo->uri = NULL;
+  clear_elements (GST_PLAY_BIN_MAEMO (object));
 
   G_OBJECT_CLASS (parent_class)->dispose (object);
 }
@@ -189,7 +192,6 @@
 static void
 gst_play_bin_maemo_finalize (GObject * object)
 {
-  clear_elements (GST_PLAY_BIN_MAEMO (object));
   G_OBJECT_CLASS (parent_class)->finalize (object);
 }
 
@@ -312,17 +314,62 @@
 }
 
 static void
+_setup_decoder (GstPlayBinMaemo *pbm, GstElement *element)
+{
+  GList *factories;
+  GstCaps *all_caps;
+  //GstCaps *decode_caps;
+
+
+//  all_caps = gst_caps_new_empty ();
+  g_object_get (element, "caps", &all_caps, NULL);
+  all_caps = gst_caps_copy (all_caps);
+//  gst_caps_append (all_caps, decode_caps);
+
+  /* loop over all the factories */
+  for (factories = pbm->factories; factories; factories = g_list_next (factories)) {
+    GstElementFactory *factory = GST_ELEMENT_FACTORY (factories->data);
+    const GList *templates;
+    GList *walk;
+
+    /* get the templates from the element factory */
+    templates = gst_element_factory_get_static_pad_templates (factory);
+    for (walk = (GList *) templates; walk; walk = g_list_next (walk)) {
+      GstStaticPadTemplate *templ = walk->data;
+
+      /* we only care about the sink templates */
+      if (templ->direction == GST_PAD_SINK) {
+        GstCaps *tmpl_caps;
+
+        /* try to intersect the caps with the caps of the template */
+        tmpl_caps = gst_static_caps_get (&templ->static_caps);
+        gst_caps_append (all_caps, gst_caps_copy (tmpl_caps));
+        gst_caps_ref (tmpl_caps);
+      }
+    }
+  }
+
+  g_object_set (element, "caps", all_caps, NULL);
+}
+
+static void
 prepare_elements (GstPlayBinMaemo *pbm)
 {
   GstElement *decoder;
   GstElement *queue;
 
+  queue = gst_element_factory_make ("queue", NULL);
+  add_element (pbm, queue);
+
   decoder = gst_element_factory_make ("decodebin2", "decode");
+  _setup_decoder (pbm, decoder);
   add_element (pbm, decoder);
+  /*
   g_signal_connect (G_OBJECT (decoder),
                     "autoplug-continue",
                     G_CALLBACK (autoplug_continue_cb),
                     pbm);
+                    */
 
   g_signal_connect (G_OBJECT (decoder),
                     "unknown-type",
@@ -340,9 +387,6 @@
                     pbm);
 
 
-  queue = gst_element_factory_make ("queue", NULL);
-  add_element (pbm, queue);
-
   if (gst_element_link_many (pbm->source, queue, decoder, NULL) == FALSE) {
     GST_WARNING ("FAIL TO LINK SRC WITH DECODEBIN2");
   }
@@ -609,6 +653,7 @@
   return to_try;
 }
 
+#if 0
 static gboolean
 autoplug_continue_cb (GstElement* object,
                       GstCaps* caps,
@@ -641,6 +686,7 @@
 
     return ret;
 }
+#endif
 
 static void
 unknown_type_cb (GstElement *object,
@@ -717,7 +763,7 @@
 
   } else if (strstr (gst_element_factory_get_klass (factory), "Sink/Audio") != NULL) {
     GParamSpec *vol_spec;
-    GstElement *prev;
+    GstElement *prev = NULL;
 
     prev = queue;
     vol_spec = g_object_class_find_property (G_OBJECT_GET_CLASS (element), "volume");
@@ -747,8 +793,6 @@
       }
 
       prev = volume;
-    } else {
-      g_param_spec_unref (vol_spec);
     }
 
     gst_bin_add (GST_BIN (bin), element);
@@ -768,6 +812,7 @@
   gst_element_add_pad (bin, gst_ghost_pad_new ("sink", pad));
   gst_object_unref (pad);
 
+
   return bin;
 
 error:
@@ -810,7 +855,7 @@
     GstElementFactory *factory = (GstElementFactory *) walk->data;
     GstElement *element;
     GstPad *sinkpad = NULL;
-    gint result;
+
 
     if ((element = create_element (pbm, factory)) == NULL) {
       GST_WARNING_OBJECT (pbm, "Could not create an element from %s",
@@ -861,7 +906,6 @@
 
   g_list_free (comp);
   if (linked == FALSE) {
-    g_debug ("GstFlow Error");
     GST_WARNING ("GstFlow ERROR");
   }
   GST_PAD_STREAM_UNLOCK (pad);
@@ -935,7 +979,7 @@
 }
 
 static void
-update_volume (GstPlayBinMaemo *pbm, gfloat volume)
+update_volume (GstPlayBinMaemo *pbm, gdouble volume)
 {
   pbm->volume = volume;
   if (pbm->volume_element) {
diff -r 2b109fc895ae -r 2498e4f8c758 gst-gmyth/playbinmaemo/gstplaybinmaemo.h
--- a/gst-gmyth/playbinmaemo/gstplaybinmaemo.h	Tue Sep 18 18:19:39 2007 +0100
+++ b/gst-gmyth/playbinmaemo/gstplaybinmaemo.h	Tue Sep 18 18:20:50 2007 +0100
@@ -48,7 +48,7 @@
   gboolean       is_stream;
   gboolean       parse_metadata;
   glong          xid;
-  gfloat         volume;
+  gdouble        volume;
 
   /* currently loaded media */
   gboolean      need_rebuild;
diff -r 2b109fc895ae -r 2498e4f8c758 libgnomevfs2-mythtv/debian/changelog
--- a/libgnomevfs2-mythtv/debian/changelog	Tue Sep 18 18:19:39 2007 +0100
+++ b/libgnomevfs2-mythtv/debian/changelog	Tue Sep 18 18:20:50 2007 +0100
@@ -1,4 +1,4 @@
-libgnomevfs2-mythtv (0.3) unstable; urgency=low
+libgnomevfs2-mythtv (0.3-indt1) unstable; urgency=low
 
   * Some bugs fixed
   * Livetv improved
diff -r 2b109fc895ae -r 2498e4f8c758 libgnomevfs2-mythtv/debian/control
--- a/libgnomevfs2-mythtv/debian/control	Tue Sep 18 18:19:39 2007 +0100
+++ b/libgnomevfs2-mythtv/debian/control	Tue Sep 18 18:20:50 2007 +0100
@@ -3,6 +3,7 @@
 Maintainer: Hallyson Melo <hallyson.melo@indt.org.br>
 Build-Depends: debhelper (>= 4.0.0), autotools-dev, cdbs (>= 0.4.0), libglib2.0-dev, gmyth-dev (>= 0.3)
 Standards-Version: 3.6.1
+Section: user/library
 
 Package: libgnomevfs2-mythtv
 Section: user/library