docs/random/ensonic/media-device-daemon.txt: wild idea, can this be done?
authorStefan Kost <ensonic@users.sourceforge.net>
Mon, 21 Nov 2005 14:50:22 +0000 (14:50 +0000)
committerStefan Kost <ensonic@users.sourceforge.net>
Mon, 21 Nov 2005 14:50:22 +0000 (14:50 +0000)
Original commit message from CVS:
* docs/random/ensonic/media-device-daemon.txt:
wild idea, can this be done?
* docs/gst/gstreamer-sections.txt:
* gst/gsterror.h:
* gst/gstfilter.c:
* gst/gstfilter.h:
* gst/gstplugin.h:
* gst/gstpluginfeature.c:
* gst/gsttrace.c:
* gst/gstvalue.c:
* gst/gstvalue.h:
doc fixes and additions

ChangeLog
docs/gst/gstreamer-sections.txt
docs/random/ensonic/media-device-daemon.txt [new file with mode: 0644]
gst/gsterror.h
gst/gstfilter.c
gst/gstfilter.h
gst/gstplugin.h
gst/gstpluginfeature.c
gst/gsttrace.c
gst/gstvalue.c
gst/gstvalue.h

index b361dc2..a6fb824 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+2005-11-21  Stefan Kost  <ensonic@users.sf.net>
+
+       * docs/random/ensonic/media-device-daemon.txt:
+         wild idea, can this be done?
+       * docs/gst/gstreamer-sections.txt:
+       * gst/gsterror.h:
+       * gst/gstfilter.c:
+       * gst/gstfilter.h:
+       * gst/gstplugin.h:
+       * gst/gstpluginfeature.c:
+       * gst/gsttrace.c:
+       * gst/gstvalue.c:
+       * gst/gstvalue.h:
+         doc fixes and additions
+
 2005-11-21  Andy Wingo  <wingo@pobox.com>
 
        * gst/base/gstbasesrc.c (GST_LIVE_BROADCAST, GST_LIVE_SIGNAL) 
index cfb0117..8464988 100644 (file)
@@ -360,8 +360,6 @@ gst_clock_get_internal_time
 gst_clock_adjust_unlocked
 gst_clock_get_calibration
 gst_clock_set_calibration
-gst_clock_get_master
-gst_clock_set_master
 gst_clock_id_get_time
 gst_clock_id_wait
 gst_clock_id_wait_async
@@ -1476,7 +1474,6 @@ gst_plugin_get_version
 gst_plugin_get_module
 gst_plugin_is_loaded
 gst_plugin_name_filter
-gst_plugin_check_file
 gst_plugin_load_file
 gst_plugin_load
 gst_plugin_load_by_name
@@ -1911,6 +1908,7 @@ gst_trace_new
 gst_trace_destroy
 gst_trace_flush
 gst_trace_text_flush
+gst_trace_add_entry
 gst_trace_get_size
 gst_trace_get_offset
 gst_trace_get_remaining
@@ -1930,7 +1928,6 @@ gst_alloc_trace_set_flags
 gst_alloc_trace_register
 gst_alloc_trace_new
 gst_alloc_trace_free
-gst_trace_add_entry
 <SUBSECTION Standard>
 GST_TYPE_ALLOC_TRACE_FLAGS
 <SUBSECTION Private>
diff --git a/docs/random/ensonic/media-device-daemon.txt b/docs/random/ensonic/media-device-daemon.txt
new file mode 100644 (file)
index 0000000..46e3d61
--- /dev/null
@@ -0,0 +1,26 @@
+$Id$
+
+- 4 new elements
+  virtual-audiosink, virtual-videosink
+  virtual-audiosrc, virtual-videosrc
+
+- daemon that holds list of instances
+- gui app that lists instances as mixing-desk like channelstrips
+- channelstrips would contain
+  - audio
+    - volume, panorama, 3-band eq
+  - video
+    - brightness, contrast, alpha-level
+- user can
+  - add insert-fx
+  - route channel to targets, where targets can be real sinks or more
+    virtual-sinks (sub-groups)
+- virtual sinks need queues to decouple application processes
+- interfaces
+  - expose child-elements via child-proxy
+    - then e.g. the applications volume-control could directly access the
+      channelstrip
+  - state-control (play, pause/mute)
+    - it would be useful if one app could pause/mute others
+    - think of a voip-client, if there is an incomming call, if pauses your
+      media-player, or mutes the monitoring of your recording app
index fedccba..e200c88 100644 (file)
@@ -220,7 +220,7 @@ typedef enum
 /**
  * GST_ERROR_SYSTEM:
  *
- * Returns a string using errno describing the previously failed system
+ * Builds a string using errno describing the previously failed system
  * call.  To be used as the debug argument in #GST_ELEMENT_ERROR.
  */
 #define GST_ERROR_SYSTEM    ("system error: %s", g_strerror (errno))
index a63c451..18f6a41 100644 (file)
  * SECTION:gstfilter
  * @short_description: A utility function to filter GLists.
  *
+ * <example>
+ * <title>Filtering a list</title>
+ *   <programlisting>
+ *     GList *node;
+ *     GstObject *result = NULL;
+ *     
+ *     node = gst_filter_run (list, (GstFilterFunc) my_filter, TRUE, NULL);
+ *     if (node) {
+ *       result = GST_OBJECT (node->data);
+ *       gst_object_ref (result);
+ *       gst_list_free (node);
+ *     }
+ *   </programlisting>
+ * </example>
  */
 #include "gst_private.h"
 #include <gst/gstfilter.h>
index 6ecb6a1..c52de15 100644 (file)
 
 G_BEGIN_DECLS
 
+/**
+ * GstFilterFunc:
+ * @obj: the object
+ * @user_data: filter data
+ *
+ * Function prototype for a filter callback taht can be use in gst_filter_run().
+ * The function should apply its filtering to @obj. Additional data passed to
+ * gst_filter_run() are in @data.
+ *
+ * Returns: %TRUE for success.
+ */
 typedef gboolean (*GstFilterFunc)      (gpointer obj, gpointer user_data);
 
 GList* gst_filter_run  (const GList *list, GstFilterFunc func, gboolean first, gpointer user_data);
index 3a78758..96a3a72 100644 (file)
@@ -269,7 +269,9 @@ gboolean            gst_plugin_is_loaded            (GstPlugin *plugin);
 
 gboolean               gst_plugin_name_filter          (GstPlugin *plugin, const gchar *name);
 
+/* This is not implemented (yet|anymore)
 gboolean               gst_plugin_check_file           (const gchar *filename, GError** error);
+*/
 GstPlugin *            gst_plugin_load_file            (const gchar *filename, GError** error);
 
 GstPlugin *             gst_plugin_load                 (GstPlugin *plugin);
index 01c28b5..86071a3 100644 (file)
@@ -133,6 +133,15 @@ gst_plugin_feature_load (GstPluginFeature * feature)
   return real_feature;
 }
 
+/**
+ * gst_plugin_feature_type_name_filter:
+ * @feature: the #GstPluginFeature
+ * @data: the type and name to check against
+ *
+ * Compares type and name of plugin feature. Can be used with gst_filter_run().
+ *
+ * Returns: TRUE if equal.
+ */
 gboolean
 gst_plugin_feature_type_name_filter (GstPluginFeature * feature,
     GstTypeNameData * data)
index 3e3deec..82a8be6 100644 (file)
  * #GType. The counter is incremented for each object allocated and decremented
  * it when it's freed.
  *
- * (FIXME: add example - see jamboree/tests/read-tags.c)
+ * <example>
+ * <title>Tracing object instances</title>
+ *   <programlisting>
+ *     // trace un-freed object instances
+ *     gst_alloc_trace_set_flags_all (GST_ALLOC_TRACE_LIVE);
+ *     if (!gst_alloc_trace_available ()) {
+ *       g_warning ("Trace not available (recompile with trace enabled).");
+ *     }
+ *     gst_alloc_trace_print_live ();
+ *     // do something here
+ *     gst_alloc_trace_print_live ();
+ *   </programlisting>
+ * </example>
  *
- * Last reviewed on 2005-11-18 (0.9.5)
+ * Last reviewed on 2005-11-21 (0.9.5)
  */
 
 #ifdef HAVE_CONFIG_H
index 5267079..8979366 100644 (file)
@@ -2385,7 +2385,7 @@ gst_value_intersect (GValue * dest, const GValue * value1,
 }
 
 /**
- * gst_value_register_intersection_func:
+ * gst_value_register_intersect_func:
  * @type1: the first type to intersect
  * @type2: the second type to intersect
  * @func: the intersection function
@@ -2393,20 +2393,6 @@ gst_value_intersect (GValue * dest, const GValue * value1,
  * Registers a function that is called to calculate the intersection
  * of the values having the types @type1 and @type2.
  */
-/**
- * GstValueIntersectFunc:
- * @dest: a uninitialized #GValue that will hold the calculated
- * intersection value
- * @value1: a value to intersect
- * @value2: another value to intersect
- *
- * Functions having this type calculate the intersection of @value1
- * and @value2.  If the intersection is non-empty, the result is
- * placed in @dest and TRUE is returned.  If the intersection is
- * empty, @dest is unmodified and FALSE is returned.
- *
- * Returns: TRUE if the intersection is non-empty, FALSE otherwise
- */
 void
 gst_value_register_intersect_func (GType type1, GType type2,
     GstValueIntersectFunc func)
index 30c17ec..cb2cbd3 100644 (file)
@@ -312,7 +312,10 @@ typedef int      (* GstValueUnionFunc)       (GValue       *dest,
  * @value2: a #GValue operand
  *
  * Used by gst_value_intersect() to perform intersection for a specific #GValue
- * type. Register a new implementation with gst_value_register_intersection_func().
+ * type. If the intersection is non-empty, the result is
+ * placed in @dest and TRUE is returned.  If the intersection is
+ * empty, @dest is unmodified and FALSE is returned.
+ * Register a new implementation with gst_value_register_intersection_func().
  *
  * Returns: %TRUE if the values can intersect
  */