From 3b805b92090934ab4c24364e2c19811f0bc3951e Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Sat, 30 Dec 2000 16:13:17 +0000 Subject: [PATCH] Docs updates: remove sink, src, filter, connection added gstinfo to docs. Original commit message from CVS: Docs updates: remove sink, src, filter, connection added gstinfo to docs. Updated some core files for the docs gsttypefind did not include gst_private Added CFlags to Makefile.am in gst/elements --- docs/gst/.gitignore | 3 +- docs/gst/gstreamer-decl.txt | 3585 ----------------------------------- docs/gst/gstreamer-docs.sgml | 10 +- docs/gst/gstreamer-sections.txt | 96 +- docs/gst/gstreamer.hierarchy | 34 +- docs/gst/gstreamer.types.in | 4 - docs/gst/tmpl/gst.sgml | 60 - docs/gst/tmpl/gstautoplug.sgml | 54 + docs/gst/tmpl/gstbuffer.sgml | 1 + docs/gst/tmpl/gstcaps.sgml | 116 ++ docs/gst/tmpl/gstconnection.sgml | 33 - docs/gst/tmpl/gstelement.sgml | 15 + docs/gst/tmpl/gstfilter.sgml | 41 - docs/gst/tmpl/gstinfo.sgml | 217 +++ docs/gst/tmpl/gstobject.sgml | 9 + docs/gst/tmpl/gstprops.sgml | 149 ++ docs/gst/tmpl/gstreamer-unused.sgml | 209 +- docs/gst/tmpl/gstscheduler.sgml | 24 + docs/gst/tmpl/gstsink.sgml | 40 - docs/gst/tmpl/gstsrc.sgml | 59 - gst/elements/Makefile.am | 2 + gst/elements/gstqueue.c | 2 +- gst/gstautoplug.c | 18 +- gst/gstelement.c | 4 +- gst/gstobject.c | 14 +- gst/gstplugin.c | 3 +- plugins/elements/Makefile.am | 2 + plugins/elements/gstqueue.c | 2 +- 28 files changed, 856 insertions(+), 3950 deletions(-) delete mode 100644 docs/gst/gstreamer-decl.txt create mode 100644 docs/gst/tmpl/gstautoplug.sgml create mode 100644 docs/gst/tmpl/gstcaps.sgml delete mode 100644 docs/gst/tmpl/gstconnection.sgml delete mode 100644 docs/gst/tmpl/gstfilter.sgml create mode 100644 docs/gst/tmpl/gstinfo.sgml create mode 100644 docs/gst/tmpl/gstprops.sgml create mode 100644 docs/gst/tmpl/gstscheduler.sgml delete mode 100644 docs/gst/tmpl/gstsink.sgml delete mode 100644 docs/gst/tmpl/gstsrc.sgml diff --git a/docs/gst/.gitignore b/docs/gst/.gitignore index 6242ea3..fd66e72 100644 --- a/docs/gst/.gitignore +++ b/docs/gst/.gitignore @@ -7,5 +7,6 @@ gstreamer.types gstreamer.html gstreamer-unused.txt gstreamer-decl-list.txt +gstreamer-decl.txt gstreamer.args - +*.tgz diff --git a/docs/gst/gstreamer-decl.txt b/docs/gst/gstreamer-decl.txt deleted file mode 100644 index 0cc02dc..0000000 --- a/docs/gst/gstreamer-decl.txt +++ /dev/null @@ -1,3585 +0,0 @@ - -COTHREAD_STACKSIZE -#define COTHREAD_STACKSIZE 8192 - - -COTHREAD_MAXTHREADS -#define COTHREAD_MAXTHREADS 16 - - -STACK_SIZE -#define STACK_SIZE 0x200000 - - -CURRENT_STACK_FRAME -#define CURRENT_STACK_FRAME ({ char __csf; &__csf; }) - - -cothread_state - - -cothread_context - - -cothread_func -int -int argc,char **argv - - -COTHREAD_STARTED -#define COTHREAD_STARTED 0x01 - - -cothread_state -struct cothread_state { - cothread_context *ctx; - int threadnum; - - cothread_func func; - int argc; - char **argv; - - int flags; - int *sp; - int *top_sp; - int *pc; - jmp_buf jmp; -}; - - -cothread_context -struct cothread_context { - cothread_state *threads[COTHREAD_MAXTHREADS]; - int nthreads; - int current; - GHashTable *data; -}; - - -cothread_init -cothread_context * - - - -cothread_create -cothread_state * -cothread_context *ctx - - -cothread_setfunc -void -cothread_state *thread, cothread_func func,int argc, char **argv - - -cothread_getcurrent -int -void - - -cothread_switch -void -cothread_state *thread - - -cothread_set_data -void -cothread_state *thread, gchar *key, gpointer data - - -cothread_get_data -gpointer -cothread_state *thread, gchar *key - - -cothread_main -cothread_state * -cothread_context *ctx - - -gst_init -void -int *argc,char **argv[] - - -gst_main -void -void - - -gst_main_quit -void -void - - -gst_bin_details -extern GstElementDetails gst_bin_details; - - -GST_TYPE_BIN -#define GST_TYPE_BIN \ - (gst_bin_get_type()) - - -GST_BIN -#define GST_BIN(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_BIN,GstBin)) - - -GST_BIN_CLASS -#define GST_BIN_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_BIN,GstBinClass)) - - -GST_IS_BIN -#define GST_IS_BIN(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_BIN)) - - -GST_IS_BIN_CLASS -#define GST_IS_BIN_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_BIN)) - - -GstBinFlags -typedef enum { - /* this bin is a manager of child elements, i.e. a pipeline or thread */ - GST_BIN_FLAG_MANAGER = GST_ELEMENT_FLAG_LAST, - - /* we prefer to have cothreads when its an option, over chain-based */ - GST_BIN_FLAG_PREFER_COTHREADS, - - /* padding */ - GST_BIN_FLAG_LAST = GST_ELEMENT_FLAG_LAST + 4, -} GstBinFlags; - - -GstBin - - -GstBinClass - - -_GstBinChain - - -GstBin -struct GstBin { - GstElement element; - - /* our children */ - gint numchildren; - GList *children; - - /* iteration state */ - gboolean need_cothreads; - GList *managed_elements; - gint num_managed_elements; - - GList *chains; - gint num_chains; - GList *entries; - gint num_entries; - - cothread_context *threadcontext; - gboolean use_cothreads; -}; - - -_GstBinChain -struct _GstBinChain { - GList *elements; - gint num_elements; - - GList *entries; - - gboolean need_cothreads; -}; - - -gst_bin_get_type -GtkType -void - - -gst_bin_new -GstElement * -gchar *name - - -gst_bin_destroy -#define gst_bin_destroy(bin) gst_object_destroy(GST_OBJECT(bin)) - - -gst_bin_add -void -GstBin *bin,GstElement *element - - -gst_bin_remove -void -GstBin *bin,GstElement *element - - -gst_bin_get_by_name -GstElement * -GstBin *bin,gchar *name - - -gst_bin_get_list -GList * -GstBin *bin - - -gst_bin_create_plan -void -GstBin *bin - - -gst_bin_schedule -void -GstBin *bin - - -gst_bin_set_state_type -gboolean -GstBin *bin,GstElementState state,GtkType type - - -gst_bin_iterate -void -GstBin *bin - - -gst_bin_use_cothreads -void -GstBin *bin,gboolean enabled - - -GST_BUFFER -#define GST_BUFFER(buf) \ - ((GstBuffer *)(buf)) - - -GST_BUFFER_FLAGS -#define GST_BUFFER_FLAGS(buf) \ - (GST_BUFFER(buf)->flags) - - -GST_BUFFER_FLAG_IS_SET -#define GST_BUFFER_FLAG_IS_SET(buf,flag) \ - (GST_BUFFER_FLAGS(buf) & (flag)) - - -GST_BUFFER_FLAG_SET -#define GST_BUFFER_FLAG_SET(buf,flag) \ - G_STMT_START{ (GST_BUFFER_FLAGS(buf) |= (flag)); }G_STMT_END - - -GST_BUFFER_FLAG_UNSET -#define GST_BUFFER_FLAG_UNSET(buf,flag) \ - G_STMT_START{ (GST_BUFFER_FLAGS(buf) &= ~(flag)); }G_STMT_END - - -GST_BUFFER_TYPE -#define GST_BUFFER_TYPE(buf) (GST_BUFFER(buf)->type) - - -GST_BUFFER_DATA -#define GST_BUFFER_DATA(buf) (GST_BUFFER(buf)->data) - - -GST_BUFFER_SIZE -#define GST_BUFFER_SIZE(buf) (GST_BUFFER(buf)->size) - - -GST_BUFFER_OFFSET -#define GST_BUFFER_OFFSET(buf) (GST_BUFFER(buf)->offset) - - -GST_BUFFER_MAXSIZE -#define GST_BUFFER_MAXSIZE(buf) (GST_BUFFER(buf)->maxsize) - - -GST_BUFFER_TIMESTAMP -#define GST_BUFFER_TIMESTAMP(buf) (GST_BUFFER(buf)->timestamp) - - -GST_BUFFER_LOCK -#define GST_BUFFER_LOCK(buf) (g_mutex_lock(GST_BUFFER(buf)->lock)) - - -GST_BUFFER_TRYLOCK -#define GST_BUFFER_TRYLOCK(buf) (g_mutex_trylock(GST_BUFFER(buf)->lock)) - - -GST_BUFFER_UNLOCK -#define GST_BUFFER_UNLOCK(buf) (g_mutex_unlock(GST_BUFFER(buf)->lock)) - - -GstBufferFlags -typedef enum { - GST_BUFFER_READONLY, - GST_BUFFER_ORIGINAL, - GST_BUFFER_DONTFREE, - GST_BUFFER_FLUSH, - GST_BUFFER_EOS, -} GstBufferFlags; - - -GstBuffer - - -GstBuffer -struct GstBuffer { - /* locking */ - GMutex *lock; - - /* refcounting */ -#ifdef HAVE_ATOMIC_H - atomic_t refcount; -#define GST_BUFFER_REFCOUNT(buf) (atomic_read(&(GST_BUFFER((buf))->refcount))) -#else - int refcount; -#define GST_BUFFER_REFCOUNT(buf) (GST_BUFFER(buf)->refcount) -#endif - - /* data type of this buffer */ - guint16 type; - /* flags */ - guint16 flags; - - /* pointer to data, its size, and offset in original source if known */ - guchar *data; - guint32 size; - guint32 maxsize; - guint32 offset; - - /* timestamp */ - guint64 timestamp; - /* max age */ - guint64 maxage; - - /* pointer to metadata, is really lame right now */ - GSList *metas; - - /* subbuffer support, who's my parent? */ - GstBuffer *parent; - - /* this is a pointer to the buffer pool (if any) */ - GstBufferPool *pool; -}; - - -gst_buffer_new -GstBuffer * -void - - -gst_buffer_new_from_pool -GstBuffer * -GstBufferPool *pool - - -gst_buffer_create_sub -GstBuffer * -GstBuffer *parent, guint32 offset, guint32 size - - -gst_buffer_append -GstBuffer * -GstBuffer *buffer, GstBuffer *append - - -gst_buffer_ref -void -GstBuffer *buffer - - -gst_buffer_ref_by_count -void -GstBuffer *buffer, int count - - -gst_buffer_unref -void -GstBuffer *buffer - - -gst_buffer_destroy -void -GstBuffer *buffer - - -gst_buffer_add_meta -void -GstBuffer *buffer, GstMeta *meta - - -gst_buffer_remove_meta -void -GstBuffer *buffer, GstMeta *meta - - -gst_buffer_get_first_meta -GstMeta * -GstBuffer *buffer - - -gst_buffer_get_metas -GSList * -GstBuffer *buffer - - -GstClockTime -typedef guint64 GstClockTime; - - -GstClockTimeDiff -typedef gint64 GstClockTimeDiff; - - -GST_CLOCK_DIFF -#define GST_CLOCK_DIFF(s, e) (GstClockTimeDiff)((s)-(e)) - - -GstClock - - -GstClock -struct GstClock { - gchar *name; - GstClockTime start_time; - GstClockTime current_time; - GstClockTimeDiff adjust; - gboolean locking; - GList *sinkobjects; - gint num, num_locked; - GMutex *sinkmutex; - GMutex *lock; -}; - - -gst_clock_new -GstClock * -gchar *name - - -gst_clock_get_system -GstClock * -void - - -gst_clock_register -void -GstClock *clock, GstObject *obj - - -gst_clock_set -void -GstClock *clock, GstClockTime time - - -gst_clock_reset -void -GstClock *clock - - -gst_clock_wait -void -GstClock *clock, GstClockTime time, GstObject *obj - - -gst_clock_current_diff -GstClockTimeDiff -GstClock *clock, GstClockTime time - - -GST_TYPE_CONNECTION -#define GST_TYPE_CONNECTION \ - (gst_connection_get_type()) - - -GST_CONNECTION -#define GST_CONNECTION(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_CONNECTION,GstConnection)) - - -GST_CONNECTION_CLASS -#define GST_CONNECTION_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_CONNECTION,GstConnectionClass)) - - -GST_IS_CONNECTION -#define GST_IS_CONNECTION(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_CONNECTION)) - - -GST_IS_CONNECTION_CLASS -#define GST_IS_CONNECTION_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_CONNECTION)) - - -GstConnection - - -GstConnectionClass - - -GstConnection -struct GstConnection { - GstElement element; -}; - - -gst_connection_get_type -GtkType -void - - -gst_connection_new -GstElement * -gchar *name - - -GstElementState -typedef enum { - GST_STATE_NONE_PENDING = -1, - GST_STATE_NULL = 0, - GST_STATE_READY = 1, - GST_STATE_PLAYING = 2, - GST_STATE_PAUSED = 3, -} GstElementState; - - -GstElementStateReturn -typedef enum { - GST_STATE_FAILURE = 0, - GST_STATE_SUCCESS = 1, - GST_STATE_ASYNC = 2, -} GstElementStateReturn; - - -GST_STATE -#define GST_STATE(obj) (GST_ELEMENT(obj)->current_state) - - -GST_STATE_PENDING -#define GST_STATE_PENDING(obj) (GST_ELEMENT(obj)->pending_state) - - -GST_STATE_TRANSITION -#define GST_STATE_TRANSITION(obj) ((GST_STATE(obj)<<4) | GST_STATE_PENDING(obj)) - - -GST_STATE_NULL_TO_READY -#define GST_STATE_NULL_TO_READY ((GST_STATE_NULL<<4) | GST_STATE_READY) - - -GST_STATE_READY_TO_PLAYING -#define GST_STATE_READY_TO_PLAYING ((GST_STATE_READY<<4) | GST_STATE_PLAYING) - - -GST_STATE_PLAYING_TO_PAUSED -#define GST_STATE_PLAYING_TO_PAUSED ((GST_STATE_PLAYING<<4) | GST_STATE_PAUSED) - - -GST_STATE_PAUSED_TO_PLAYING -#define GST_STATE_PAUSED_TO_PLAYING ((GST_STATE_PAUSED<<4) | GST_STATE_PLAYING) - - -GST_STATE_PLAYING_TO_READY -#define GST_STATE_PLAYING_TO_READY ((GST_STATE_PLAYING<<4) | GST_STATE_READY) - - -GST_STATE_READY_TO_NULL -#define GST_STATE_READY_TO_NULL ((GST_STATE_READY<<4) | GST_STATE_NULL) - - -GST_TYPE_ELEMENT -#define GST_TYPE_ELEMENT \ - (gst_element_get_type()) - - -GST_ELEMENT -#define GST_ELEMENT(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_ELEMENT,GstElement)) - - -GST_ELEMENT_CLASS -#define GST_ELEMENT_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_ELEMENT,GstElementClass)) - - -GST_IS_ELEMENT -#define GST_IS_ELEMENT(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_ELEMENT)) - - -GST_IS_ELEMENT_CLASS -#define GST_IS_ELEMENT_CLASS(klass) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_ELEMENT)) - - -GstElementFlags -typedef enum { - /* element is complex (for some def.) and generally require a cothread */ - GST_ELEMENT_COMPLEX = GST_OBJECT_FLAG_LAST, - /* input and output pads aren't directly coupled to each other - examples: queues, multi-output async readers, etc. */ - GST_ELEMENT_DECOUPLED, - /* this element should be placed in a thread if at all possible */ - GST_ELEMENT_THREAD_SUGGESTED, - /* this element is incable of seeking (FIXME: does this apply to filters?) */ - GST_ELEMENT_NO_SEEK, - - /* there is a new loopfunction ready for placement */ - GST_ELEMENT_NEW_LOOPFUNC, - /* the cothread holding this element needs to be stopped */ - GST_ELEMENT_COTHREAD_STOPPING, - /* the element has to be scheduled as a cothread for any sanity */ - GST_ELEMENT_USE_COTHREAD, - - /* use some padding for future expansion */ - GST_ELEMENT_FLAG_LAST = GST_OBJECT_FLAG_LAST + 8, -} GstElementFlags; - - -GST_ELEMENT_IS_THREAD_SUGGESTED -#define GST_ELEMENT_IS_THREAD_SUGGESTED(obj) (GST_FLAG_IS_SET(obj,GST_ELEMENT_THREAD_SUGGESTED)) - - -GST_ELEMENT_IS_COTHREAD_STOPPING -#define GST_ELEMENT_IS_COTHREAD_STOPPING(obj) (GST_FLAG_IS_SET(obj,GST_ELEMENT_COTHREAD_STOPPING)) - - -GstElement - - -GstElementClass - - -GstElementDetails - - -GstElementFactory - - -GstElementLoopFunction -void -GstElement *element - - -GstElement -struct GstElement { - GstObject object; - - gchar *name; - - guint8 current_state; - guint8 pending_state; - - GstElementLoopFunction loopfunc; - cothread_state *threadstate; - - guint16 numpads; - guint16 numsrcpads; - guint16 numsinkpads; - GList *pads; - - GstElement *manager; -}; - - -GstElementDetails -struct GstElementDetails { - gchar *longname; /* long, english name */ - gchar *klass; /* type of element, kinda */ - gchar *description; /* insights of one form or another */ - gchar *version; /* version of the element */ - gchar *author; /* who wrote this thing? */ - gchar *copyright; /* copyright details (year, etc.) */ -}; - - -GstElementFactory -struct GstElementFactory { - gchar *name; /* name of element */ - GtkType type; /* unique GtkType of element */ - - GstElementDetails *details; /* pointer to details struct */ - - GList *padtemplates; -}; - - -gst_element_get_type -GtkType -void - - -gst_element_new -GstElement * -void - - -gst_element_destroy -#define gst_element_destroy(element) gst_object_destroy (GST_OBJECT (element)) - - -gst_element_set_loop_function -void -GstElement *element,GstElementLoopFunction loop - - -gst_element_set_name -void -GstElement *element, gchar *name - - -gst_element_get_name -const gchar * -GstElement *element - - -gst_element_set_manager -void -GstElement *element, GstElement *manager - - -gst_element_get_manager -GstElement * -GstElement *element - - -gst_element_add_pad -void -GstElement *element, GstPad *pad - - -gst_element_get_pad -GstPad * -GstElement *element, gchar *name - - -gst_element_get_pad_list -GList * -GstElement *element - - -gst_element_get_padtemplate_list -GList * -GstElement *element - - -gst_element_add_ghost_pad -void -GstElement *element, GstPad *pad - - -gst_element_connect -void -GstElement *src, gchar *srcpadname,GstElement *dest, gchar *destpadname - - -gst_element_set_state -gint -GstElement *element, GstElementState state - - -gst_element_error -void -GstElement *element, gchar *error - - -gst_element_get_factory -GstElementFactory * -GstElement *element - - -gst_element_save_thyself -xmlNodePtr -GstElement *element, xmlNodePtr parent - - -gst_element_load_thyself -GstElement * -xmlNodePtr parent, GHashTable *elements - - -gst_elementfactory_new -GstElementFactory * -gchar *name,GtkType type,GstElementDetails *details - - -gst_elementfactory_destroy -void -GstElementFactory *elementfactory - - -gst_elementfactory_add_padtemplate -void -GstElementFactory *elementfactory,GstPadTemplate *temp - - -gst_elementfactory_find -GstElementFactory * -gchar *name - - -gst_elementfactory_get_list -GList * -void - - -gst_elementfactory_can_src_caps -gboolean -GstElementFactory *factory,GstCaps *caps - - -gst_elementfactory_can_sink_caps -gboolean -GstElementFactory *factory,GstCaps *caps - - -gst_elementfactory_create -GstElement * -GstElementFactory *factory,gchar *name - - -gst_elementfactory_make -GstElement * -gchar *factoryname, gchar *name - - -gst_elementfactory_save_thyself -xmlNodePtr -GstElementFactory *factory, xmlNodePtr parent - - -gst_elementfactory_load_thyself -GstElementFactory * -xmlNodePtr parent - - -GST_TYPE_FILTER -#define GST_TYPE_FILTER \ - (gst_filter_get_type()) - - -GST_FILTER -#define GST_FILTER(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_FILTER,GstFilter)) - - -GST_FILTER_CLASS -#define GST_FILTER_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_FILTER,GstFilterClass)) - - -GST_IS_FILTER -#define GST_IS_FILTER(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_FILTER)) - - -GST_IS_FILTER_CLASS -#define GST_IS_FILTER_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_FILTER)) - - -GstFilter - - -GstFilterClass - - -GST_FILTER_FLAG_LAST -#define GST_FILTER_FLAG_LAST GST_ELEMENT_FLAG_LAST - - -GstFilter -struct GstFilter { - GstElement element; -}; - - -gst_filter_get_type -GtkType -void - - -gst_filter_new -GstElement * -gchar *name - - -GST_SHOW_INFO -#define GST_SHOW_INFO - - -gst_info -#define gst_info(format,args...) fprintf(stderr,format,##args) - - -gst_info -#define gst_info(format,args...) - - -GST_META -#define GST_META(meta) ((GstMeta *)(meta)) - - -GST_META_FLAGS -#define GST_META_FLAGS(meta) \ - (GST_META(meta)->flags) - - -GST_META_FLAG_IS_SET -#define GST_META_FLAG_IS_SET(meta,flag) \ - (GST_META_FLAGS(meta) & (flag)) - - -GST_META_FLAG_SET -#define GST_META_FLAG_SET(meta,flag) \ - G_STMT_START{ (GST_META_FLAGS(meta) |= (flag)); }G_STMT_END - - -GST_META_FLAG_UNSET -#define GST_META_FLAG_UNSET(meta,flag) \ - G_STMT_START{ (GST_META_FLAGS(meta) &= ~(flag)); }G_STMT_END - - -GstMetaFlags -typedef enum { - GST_META_FREEABLE = 1 << 0, -} GstMetaFlags; - - -GstMeta - - -GstMeta -struct GstMeta { - /* locking */ - GMutex *lock; - - /* refcounting */ -#ifdef HAVE_ATOMIC_H - atomic_t refcount; -#else - int refcount; -#endif - - guint16 type; - guint16 flags; - - void *data; - guint16 size; -}; - - -gst_meta_new_size -GstMeta * -gint size - - -gst_meta_new -#define gst_meta_new(type) (type *)gst_meta_new_size(sizeof(type)) - - -gst_meta_ref -void -GstMeta *meta - - -gst_meta_unref -void -GstMeta *meta - - -GST_TYPE_OBJECT -#define GST_TYPE_OBJECT \ - (gst_object_get_type()) - - -GST_OBJECT -#define GST_OBJECT(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_OBJECT,GstObject)) - - -GST_OBJECT_CLASS -#define GST_OBJECT_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_OBJECT,GstObjectClass)) - - -GST_IS_OBJECT -#define GST_IS_OBJECT(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_OBJECT)) - - -GST_IS_OBJECT_CLASS -#define GST_IS_OBJECT_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_OBJECT)) - - -GstObject - - -GstObjectClass - - -GST_OBJECT_FLAG_LAST -#define GST_OBJECT_FLAG_LAST 4 - - -GstObject -struct GstObject { - GtkObject object; - - /* have to have a refcount for the object */ -#ifdef HAVE_ATOMIC_H - atomic_t refcount; -#else - int refcount; -#endif - - /* locking for all sorts of things (like the refcount) */ - GMutex *lock; - - /* this objects parent */ - GstObject *parent; -}; - - -GST_FLAGS -#define GST_FLAGS(obj) GTK_OBJECT_FLAGS(obj) - - -GST_FLAG_IS_SET -#define GST_FLAG_IS_SET(obj,flag) (GST_FLAGS (obj) & (1<<(flag))) - - -GST_FLAG_SET -#define GST_FLAG_SET(obj,flag) G_STMT_START{ (GST_FLAGS (obj) |= (1<<(flag))); }G_STMT_END - - -GST_FLAG_UNSET -#define GST_FLAG_UNSET(obj,flag) G_STMT_START{ (GST_FLAGS (obj) &= ~(1<<(flag))); }G_STMT_END - - -GST_LOCK -#define GST_LOCK(obj) (g_mutex_lock(GST_OBJECT(obj)->lock)) - - -GST_TRYLOCK -#define GST_TRYLOCK(obj) (g_mutex_trylock(GST_OBJECT(obj)->lock)) - - -GST_UNLOCK -#define GST_UNLOCK(obj) (g_mutex_unlock(GST_OBJECT(obj)->lock)) - - -gst_object_get_type -GtkType -void - - -gst_object_new -GstObject * -void - - -gst_object_set_parent -void -GstObject *object,GstObject *parent - - -gst_object_get_parent -GstObject * -GstObject *object - - -gst_object_unparent -void -GstObject *object - - -gst_object_ref -#define gst_object_ref(object) gtk_object_ref(GTK_OBJECT(object)); - - -gst_object_unref -#define gst_object_unref(object) gtk_object_unref(GTK_OBJECT(object)); - - -gst_object_sink -#define gst_object_sink(object) gtk_object_sink(GTK_OBJECT(object)); - - -gst_object_destroy -#define gst_object_destroy(object) gtk_object_destroy(GTK_OBJECT(object)) - - -GST_TYPE_PAD -#define GST_TYPE_PAD (gst_pad_get_type ()) - - -GST_PAD -#define GST_PAD(obj) (GTK_CHECK_CAST ((obj), GST_TYPE_PAD,GstPad)) - - -GST_PAD_CLASS -#define GST_PAD_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GST_TYPE_PAD,GstPadClass)) - - -GST_IS_PAD -#define GST_IS_PAD(obj) (GTK_CHECK_TYPE ((obj), GST_TYPE_PAD)) - - -GST_IS_PAD_CLASS -#define GST_IS_PAD_CLASS(obj) (GTK_CHECK_CLASS_TYPE ((klass), GST_TYPE_PAD)) - - -GST_PAD_CONNECTED -#define GST_PAD_CONNECTED(pad) ((pad) && (pad)->peer != NULL) - - -GST_PAD_CAN_PULL -#define GST_PAD_CAN_PULL(pad) ((pad) && (pad)->pullfunc != NULL) - - -GstPad - - -GstPadClass - - -GstPadTemplate - - -GstPadTemplateClass - - -GstPadChainFunction -void -GstPad *pad,GstBuffer *buf - - -GstPadGetFunction -GstBuffer * -GstPad *pad - - -GstPadGetRegionFunction -GstBuffer * -GstPad *pad, gulong offset, gulong size - - -GstPadQoSFunction -void -GstPad *pad, glong qos_message - - -GstPadPushFunction -void -GstPad *pad, GstBuffer *buf - - -GstPadPullFunction -GstBuffer * -GstPad *pad - - -GstPadPullRegionFunction -GstBuffer * -GstPad *pad, gulong offset, gulong size - - -GstPadDirection -typedef enum { - GST_PAD_UNKNOWN, - GST_PAD_SRC, - GST_PAD_SINK, -} GstPadDirection; - - -GstPadFlags -typedef enum { - GST_PAD_DISABLED = GST_OBJECT_FLAG_LAST, - GST_PAD_EOS, - - GST_PAD_FLAG_LAST = GST_OBJECT_FLAG_LAST + 4, -} GstPadFlags; - - -GstPad -struct GstPad { - GstObject object; - - gchar *name; - GstCaps *caps; - - cothread_state *threadstate; - - GstPadDirection direction; - - GstPad *peer; - - GstBuffer *bufpen; - - GstPadChainFunction chainfunc; - GstPadGetFunction getfunc; - GstPadGetRegionFunction getregionfunc; - GstPadQoSFunction qosfunc; - - GstPadPushFunction pushfunc; - GstPadPullFunction pullfunc; - GstPadPullRegionFunction pullregionfunc; - - GstObject *parent; - GList *ghostparents; - - GstPadTemplate *padtemplate; /* the template for this pad */ -}; - - -GST_TYPE_PADTEMPLATE -#define GST_TYPE_PADTEMPLATE (gst_padtemplate_get_type ()) - - -GST_PADTEMPLATE -#define GST_PADTEMPLATE(obj) (GTK_CHECK_CAST ((obj), GST_TYPE_PADTEMPLATE,GstPad)) - - -GST_PADTEMPLATE_CLASS -#define GST_PADTEMPLATE_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GST_TYPE_PADTEMPLATE,GstPadClass)) - - -GST_IS_PADTEMPLATE -#define GST_IS_PADTEMPLATE(obj) (GTK_CHECK_TYPE ((obj), GST_TYPE_PADTEMPLATE)) - - -GST_IS_PADTEMPLATE_CLASS -#define GST_IS_PADTEMPLATE_CLASS(obj) (GTK_CHECK_CLASS_TYPE ((klass), GST_TYPE_PADTEMPLATE)) - - -GstPadPresence -typedef enum { - GST_PAD_ALWAYS, - GST_PAD_SOMETIMES, -} GstPadPresence; - - -GstPadTemplate -struct GstPadTemplate { - GstObject object; - - gchar *name_template; - GstPadDirection direction; - GstPadPresence presence; - GstCaps *caps; -}; - - -GstPadFactoryEntry -typedef gpointer GstPadFactoryEntry; - - -GstPadFactory[] -typedef GstPadFactoryEntry GstPadFactory[]; - - -GST_PAD_FACTORY_ALWAYS -#define GST_PAD_FACTORY_ALWAYS GINT_TO_POINTER(GST_PAD_ALWAYS) - - -GST_PAD_FACTORY_SOMETIMES -#define GST_PAD_FACTORY_SOMETIMES GINT_TO_POINTER(GST_PAD_SOMETIMES) - - -GST_PAD_FACTORY_SRC -#define GST_PAD_FACTORY_SRC GINT_TO_POINTER(GST_PAD_SRC) - - -GST_PAD_FACTORY_SINK -#define GST_PAD_FACTORY_SINK GINT_TO_POINTER(GST_PAD_SINK) - - -gst_pad_get_type -GtkType -void - - -gst_pad_new -GstPad * -gchar *name, GstPadDirection direction - - -gst_pad_destroy -#define gst_pad_destroy(pad) gst_object_destroy (GST_OBJECT (pad)) - - -gst_pad_new_from_template -GstPad * -GstPadTemplate *temp, gchar *name - - -gst_pad_get_direction -GstPadDirection -GstPad *pad - - -gst_pad_set_chain_function -void -GstPad *pad, GstPadChainFunction chain - - -gst_pad_set_get_function -void -GstPad *pad, GstPadGetFunction get - - -gst_pad_set_getregion_function -void -GstPad *pad, GstPadGetRegionFunction getregion - - -gst_pad_set_qos_function -void -GstPad *pad, GstPadQoSFunction qos - - -gst_pad_set_caps -void -GstPad *pad, GstCaps *caps - - -gst_pad_get_caps -GstCaps * -GstPad *pad - - -gst_pad_set_name -void -GstPad *pad, const gchar *name - - -gst_pad_get_name -const gchar * -GstPad *pad - - -gst_pad_set_parent -void -GstPad *pad, GstObject *parent - - -gst_pad_get_parent -GstObject * -GstPad *pad - - -gst_pad_add_ghost_parent -void -GstPad *pad, GstObject *parent - - -gst_pad_remove_ghost_parent -void -GstPad *pad, GstObject *parent - - -gst_pad_get_ghost_parents -GList * -GstPad *pad - - -gst_pad_get_peer -GstPad * -GstPad *pad - - -gst_pad_connect -void -GstPad *srcpad, GstPad *sinkpad - - -gst_pad_disconnect -void -GstPad *srcpad, GstPad *sinkpad - - -gst_pad_push -void -GstPad *pad, GstBuffer *buffer - - -gst_pad_push -#define gst_pad_push(pad,buf) G_STMT_START{ \ - if ((pad)->peer->pushfunc) ((pad)->peer->pushfunc)((pad)->peer,(buf)); \ -}G_STMT_END - - -gst_pad_pull -GstBuffer * -GstPad *pad - - -gst_pad_pull_region -GstBuffer * -GstPad *pad, gulong offset, gulong size - - -gst_pad_pull -#define gst_pad_pull(pad) \ - (((pad)->peer->pullfunc) ? ((pad)->peer->pullfunc)((pad)->peer) : NULL) - - -gst_pad_pullregion -#define gst_pad_pullregion(pad,offset,size) \ - (((pad)->peer->pullregionfunc) ? ((pad)->peer->pullregionfunc)((pad)->peer,(offset),(size)) : NULL) - - -gst_pad_handle_qos -void -GstPad *pad, glong qos_message - - -gst_pad_save_thyself -xmlNodePtr -GstPad *pad, xmlNodePtr parent - - -gst_pad_load_and_connect -void -xmlNodePtr parent, GstObject *element, GHashTable *elements - - -gst_padtemplate_get_type -GtkType -void - - -gst_padtemplate_new -GstPadTemplate * -GstPadFactory *factory - - -gst_padtemplate_create -GstPadTemplate * -gchar *name_template,GstPadDirection direction, GstPadPresence presence,GstCaps *caps - - -gst_padtemplate_save_thyself -xmlNodePtr -GstPadTemplate *pad, xmlNodePtr parent - - -gst_padtemplate_load_thyself -GstPadTemplate * -xmlNodePtr parent - - -gst_pipeline_details -extern GstElementDetails gst_pipeline_details; - - -GST_TYPE_PIPELINE -#define GST_TYPE_PIPELINE \ - (gst_pipeline_get_type()) - - -GST_PIPELINE -#define GST_PIPELINE(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_PIPELINE,GstPipeline)) - - -GST_PIPELINE_CLASS -#define GST_PIPELINE_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_PIPELINE,GstPipelineClass)) - - -GST_IS_PIPELINE -#define GST_IS_PIPELINE(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_PIPELINE)) - - -GST_IS_PIPELINE_CLASS -#define GST_IS_PIPELINE_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_PIPELINE)) - - -GstPipeline - - -GstPipelineClass - - -GstPipeline -struct GstPipeline { - GstBin bin; - - GstElement *src; /* we only allow one src element */ - GList *sinks; /* and multiple sinks */ -}; - - -gst_pipeline_get_type -GtkType -void - - -gst_pipeline_new -GstElement * -guchar *name - - -gst_pipeline_destroy -#define gst_pipeline_destroy(pipeline) gst_object_destroy(GST_OBJECT(pipeline)) - - -gst_pipeline_add_src -void -GstPipeline *pipeline, GstElement *src - - -gst_pipeline_add_sink -void -GstPipeline *pipeline, GstElement *sink - - -gst_pipeline_autoplug -gboolean -GstPipeline *pipeline - - -gst_pipeline_iterate -void -GstPipeline *pipeline - - -GstPlugin - - -GstPluginElement - - -GstPlugin -struct GstPlugin { - gchar *name; /* name of the plugin */ - gchar *longname; /* long name of plugin */ - gchar *filename; /* filename it came from */ - - GList *types; /* list of types provided */ - GList *elements; /* list of elements provided */ - - gboolean loaded; /* if the plugin is in memory */ -}; - - -GstPluginInitFunc -GstPlugin * -GModule *module - - -gst_plugin_new -GstPlugin * -gchar *name - - -gst_plugin_set_longname -void -GstPlugin *plugin, gchar *longname - - -gst_plugin_load_all -void -void - - -gst_plugin_load -gboolean -gchar *name - - -gst_plugin_load_absolute -gboolean -gchar *name - - -gst_library_load -gboolean -gchar *name - - -gst_plugin_add_factory -void -GstPlugin *plugin, GstElementFactory *factory - - -gst_plugin_add_type -void -GstPlugin *plugin, GstTypeFactory *factory - - -gst_plugin_find -GstPlugin * -const gchar *name - - -gst_plugin_get_list -GList * -void - - -gst_plugin_find_elementfactory -GstElementFactory * -gchar *name - - -gst_plugin_load_elementfactory -GstElementFactory * -gchar *name - - -gst_plugin_load_typefactory -void -gchar *mime - - -gst_plugin_save_thyself -xmlNodePtr -xmlNodePtr parent - - -gst_plugin_load_thyself -void -xmlNodePtr parent - - -GST_TYPE_SINK -#define GST_TYPE_SINK \ - (gst_sink_get_type()) - - -GST_SINK -#define GST_SINK(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_SINK,GstSink)) - - -GST_SINK_CLASS -#define GST_SINK_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_SINK,GstSinkClass)) - - -GST_IS_SINK -#define GST_IS_SINK(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_SINK)) - - -GST_IS_SINK_CLASS -#define GST_IS_SINK_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_SINK)) - - -GstSink - - -GstSinkClass - - -GST_SINK_FLAG_LAST -#define GST_SINK_FLAG_LAST GST_ELEMENT_FLAG_LAST - - -GstSink -struct GstSink { - GstElement element; -}; - - -gst_sink_get_type -GtkType -void - - -gst_sink_new -GstObject * -gchar *name - - -GST_TYPE_SRC -#define GST_TYPE_SRC \ - (gst_src_get_type()) - - -GST_SRC -#define GST_SRC(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_SRC,GstSrc)) - - -GST_SRC_CLASS -#define GST_SRC_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_SRC,GstSrcClass)) - - -GST_IS_SRC -#define GST_IS_SRC(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_SRC)) - - -GST_IS_SRC_CLASS -#define GST_IS_SRC_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_SRC)) - - -GstSrcFlags -typedef enum { - GST_SRC_ASYNC = GST_ELEMENT_FLAG_LAST, - - GST_SRC_FLAG_LAST = GST_ELEMENT_FLAG_LAST +2, -} GstSrcFlags; - - -GstSrc - - -GstSrcClass - - -GST_SRC_IS_ASYNC -#define GST_SRC_IS_ASYNC(obj) (GST_FLAG_IS_SET(obj,GST_SRC_ASYNC)) - - -GstSrc -struct GstSrc { - GstElement element; -}; - - -gst_src_get_type -GtkType -void - - -gst_src_signal_eos -void -GstSrc *src - - -GST_TYPE_TEE -#define GST_TYPE_TEE \ - (gst_tee_get_type()) - - -GST_TEE -#define GST_TEE(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_TEE,GstTee)) - - -GST_TEE_CLASS -#define GST_TEE_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_TEE,GstTeeClass)) - - -GST_IS_TEE -#define GST_IS_TEE(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_TEE)) - - -GST_IS_TEE_CLASS -#define GST_IS_TEE_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_TEE)) - - -GstTee - - -GstTeeClass - - -GstTee -struct GstTee { - GstFilter filter; - - GstPad *sinkpad; - - gint numsrcpads; - GSList *srcpads; -}; - - -gst_tee_get_type -GtkType -void - - -gst_tee_new -GstElement * -gchar *name - - -gst_tee_new_pad -gchar * -GstTee *tee - - -gst_tee_chain -void -GstPad *pad, GstBuffer *buf - - -gst_thread_details -extern GstElementDetails gst_thread_details; - - -GstThreadState -typedef enum { - GST_THREAD_CREATE = GST_BIN_FLAG_LAST, - GST_THREAD_STATE_SPINNING, - GST_THREAD_STATE_REAPING, - - /* padding */ - GST_THREAD_FLAG_LAST = GST_BIN_FLAG_LAST + 4, -} GstThreadState; - - -GST_TYPE_THREAD -#define GST_TYPE_THREAD \ - (gst_thread_get_type()) - - -GST_THREAD -#define GST_THREAD(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_THREAD,GstThread)) - - -GST_THREAD_CLASS -#define GST_THREAD_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_THREAD,GstThreadClass)) - - -GST_IS_THREAD -#define GST_IS_THREAD(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_THREAD)) - - -GST_IS_THREAD_CLASS -#define GST_IS_THREAD_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_THREAD)) - - -GstThread - - -GstThreadClass - - -GstThread -struct GstThread { - GstBin bin; - - pthread_t thread_id; /* id of the thread, if any */ - GMutex *lock; /* thread lock/condititon pair... */ - GCond *cond; /* used to control the thread */ -}; - - -gst_thread_get_type -GtkType -void - - -gst_thread_new -GstElement * -guchar *name - - -GstTrace - - -GstTraceEntry - - -GstTrace -struct GstTrace { - /* where this trace is going */ - gchar *filename; - int fd; - - /* current buffer, size, head offset */ - GstTraceEntry *buf; - gint bufsize; - gint bufoffset; -}; - - -GstTraceEntry -struct GstTraceEntry { - guint64 timestamp; - guint32 sequence; - guint32 data; - gchar message[112]; -}; - - -gst_trace_new -GstTrace * -guchar *filename, gint size - - -gst_trace_destroy -void -GstTrace *trace - - -gst_trace_flush -void -GstTrace *trace - - -gst_trace_get_size -#define gst_trace_get_size(trace) ((trace)->bufsize) - - -gst_trace_get_offset -#define gst_trace_get_offset(trace) ((trace)->bufoffset) - - -gst_trace_get_remaining -#define gst_trace_get_remaining(trace) ((trace)->bufsize - (trace)->bufoffset) - - -gst_trace_set_default -void -GstTrace *trace - - -gst_trace_read_tsc -void -guint64 *dst - - -TRACE_ENABLE -#define TRACE_ENABLE - - -gst_trace_add_entry -#define gst_trace_add_entry(trace,seq,data,msg) \ - if (_gst_trace_on) { \ - _gst_trace_add_entry(trace,(guint32)seq,(guint32)data,msg); \ - } - - -gst_trace_add_entry -#define gst_trace_add_entry(trace,seq,data,msg) - - -GstTypeFindFunc -GstCaps * -GstBuffer *buf,gpointer priv - - -GstType - - -GstTypeFactory - - -GstType -struct GstType { - guint16 id; /* type id (assigned) */ - - gchar *mime; /* MIME type */ - gchar *exts; /* space-delimited list of extensions */ - - GSList *typefindfuncs; /* typefind functions */ - -}; - - -GstTypeFactory -struct GstTypeFactory { - gchar *mime; - gchar *exts; - GstTypeFindFunc typefindfunc; -}; - - -gst_type_register -guint16 -GstTypeFactory *factory - - -gst_type_find_by_mime -guint16 -gchar *mime - - -gst_type_find_by_ext -guint16 -gchar *ext - - -gst_type_find_by_id -GstType * -guint16 id - - -gst_type_get_list -GList * -void - - -gst_typefactory_save_thyself -xmlNodePtr -GstTypeFactory *factory, xmlNodePtr parent - - -gst_typefactory_load_thyself -GstTypeFactory * -xmlNodePtr parent - - -gst_util_get_int_arg -gint -GtkObject *object, guchar *argname - - -gst_util_get_bool_arg -gboolean -GtkObject *object, guchar *argname - - -gst_util_get_long_arg -glong -GtkObject *object, guchar *argname - - -gst_util_get_float_arg -gfloat -GtkObject *object, guchar *argname - - -gst_util_get_double_arg -gdouble -GtkObject *object, guchar *argname - - -gst_util_get_string_arg -guchar * -GtkObject *object, guchar *argname - - -gst_util_get_pointer_arg -gpointer -GtkObject *object, guchar *argname - - -gst_util_get_widget_arg -GtkWidget * -GtkObject *object, guchar *argname - - -gst_util_dump_mem -void -guchar *mem, guint size - - -GST_TYPE_XML -#define GST_TYPE_XML \ - (gst_object_get_type()) - - -GST_XML -#define GST_XML(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_XML,GstXML)) - - -GST_XML_CLASS -#define GST_XML_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_XML,GstXMLClass)) - - -GST_IS_XML -#define GST_IS_XML(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_XML)) - - -GST_IS_XML_CLASS -#define GST_IS_XML_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_XML)) - - -GstXML - - -GstXMLClass - - -GstXML -struct GstXML { - GtkObject object; - - GHashTable *elements; - GList *topelements; -}; - - -gst_xml_get_type -GtkType -void - - -gst_xml_write -xmlDocPtr -GstElement *element - - -gst_xml_new -GstXML * -const guchar *fname, const guchar *root - - -gst_xml_get_element -GstElement * -GstXML *xml, const guchar *name - - -gst_xml_get_topelements -GList * -GstXML *xml - - -GstCaps - - -GstCapsFactoryEntry -typedef gpointer GstCapsFactoryEntry; - - -GstCapsFactory[] -typedef GstCapsFactoryEntry GstCapsFactory[]; - - -GstCaps -struct GstCaps { - guint16 id; /* type id (major type) */ - - GstProps *properties; /* properties for this capability */ -}; - - -gst_caps_new -GstCaps * -gchar *mime - - -gst_caps_new_with_props -GstCaps * -gchar *mime, GstProps *props - - -gst_caps_register -GstCaps * -GstCapsFactory *factory - - -gst_caps_set_props -GstCaps * -GstCaps *caps, GstProps *props - - -gst_caps_get_props -GstProps * -GstCaps *caps - - -gst_caps_check_compatibility -gboolean -GstCaps *fromcaps, GstCaps *tocaps - - -gst_caps_save_thyself -xmlNodePtr -GstCaps *caps, xmlNodePtr parent - - -gst_caps_load_thyself -GstCaps * -xmlNodePtr parent - - -GST_BUFFER_POOL -#define GST_BUFFER_POOL(buf) \ - ((GstBufferPool *)(buf)) - - -GstBufferPool - - -GstBufferPoolCreateFunction -GstBuffer * -GstBufferPool *pool, gpointer user_data - - -GstBufferPoolDestroyFunction -void -GstBufferPool *pool, GstBuffer *buffer, gpointer user_data - - -GstBufferPool -struct GstBufferPool { - /* will be called when a new buffer is to be created */ - GstBufferPoolCreateFunction new_buffer; - /* user data to pass with the new_buffer function */ - gpointer new_user_data; - - gpointer destroy_user_data; - GstBufferPoolDestroyFunction destroy_buffer; -}; - - -gst_buffer_pool_new -GstBufferPool * -void - - -gst_buffer_pool_new_buffer -GstBuffer * -GstBufferPool *pool - - -gst_buffer_pool_destroy_buffer -void -GstBufferPool *pool, GstBuffer *buffer - - -gst_buffer_pool_set_create_function -void -GstBufferPool *pool,GstBufferPoolCreateFunction create,gpointer user_data - - -gst_buffer_pool_set_destroy_function -void -GstBufferPool *pool,GstBufferPoolDestroyFunction destroy,gpointer user_data - - -gst_buffer_pool_destroy -void -GstBufferPool *pool - - -GstCPUFlags -typedef enum { - GST_CPU_FLAG_MMX = (1<<0), - GST_CPU_FLAG_SSE = (1<<1), -} GstCPUFlags; - - -gst_cpu_get_flags -GstCPUFlags -void - - -GET_SP -#define GET_SP(target) \ - __asm__("movl %%esp, %0" : "=m"(target) : : "esp", "ebp"); - - -SET_SP -#define SET_SP(source) \ - __asm__("movl %0, %%esp\n" : "=m"(thread->sp)); - - -JUMP -#define JUMP(target) \ - __asm__("jmp " SYMBOL_NAME_STR(cothread_stub)) - - -SETUP_STACK -#define SETUP_STACK(sp) do ; while(0) - - -GET_SP -#define GET_SP(target) \ - __asm__("stw 1,%0" : "=m"(target) : : "r1"); - - -SET_SP -#define SET_SP(source) \ - __asm__("lwz 1,%0" : "=m"(source)) - - -JUMP -#define JUMP(target) \ - __asm__("b " SYMBOL_NAME_STR(cothread_stub)) - - -SETUP_STACK -#define SETUP_STACK(sp) \ - sp = ((unsigned long *)(sp)) - 4; \ - ((struct minimal_ppc_stackframe *)sp)->back_chain = 0; - - -GST_TYPE_FILENAME -#define GST_TYPE_FILENAME (gst_extra_get_filename_type()) - - -gst_extra_get_filename_type -GtkType -void - - -GST_DEBUG_ENABLED -#define GST_DEBUG_ENABLED - - -GST_DEBUG_PREFIX -#define GST_DEBUG_PREFIX(format,args...) \ -"DEBUG(%d:%d)" __PRETTY_FUNCTION__ ":%d" format , getpid() , cothread_getcurrent() , __LINE__ , ## args - - -_debug_function_f -void - - - -DEBUG -#define DEBUG(format,args...) \ - (_debug_string != NULL) ? \ - fprintf(stderr,GST_DEBUG_PREFIX("%s: "format , _debug_string , ## args )) : \ - fprintf(stderr,GST_DEBUG_PREFIX(": "format , ## args )) - - -DEBUG_NOPREFIX -#define DEBUG_NOPREFIX(format,args...) fprintf(stderr,format , ## args ) - - -DEBUG_ENTER -#define DEBUG_ENTER(format, args...) \ - fprintf(stderr,GST_DEBUG_PREFIX(format": entering\n" , ## args )) - - -DEBUG_SET_STRING -#define DEBUG_SET_STRING(format, args...) \ - gchar *_debug_string = g_strdup_printf(format , ## args ) - - -DEBUG_ENTER_STRING -#define DEBUG_ENTER_STRING DEBUG_ENTER("%s",_debug_string) - - -DEBUG_LEAVE -#define DEBUG_LEAVE(format, args...) \ - if (_debug_string != NULL) g_free(_debug_string),\ - fprintf(stderr,GST_DEBUG_PREFIX(format": leaving\n" , ## args )) - - -DEBUG_LEAVE_STRING -#define DEBUG_LEAVE_STRING DEBUG_LEAVE("%s",_debug_string) - - -DEBUG -#define DEBUG(format, args...) - - -DEBUG_NOPREFIX -#define DEBUG_NOPREFIX(format, args...) - - -DEBUG_ENTER -#define DEBUG_ENTER(format, args...) - - -DEBUG_LEAVE -#define DEBUG_LEAVE(format, args...) - - -DEBUG_SET_STRING -#define DEBUG_SET_STRING(format, args...) - - -DEBUG_ENTER_STRING -#define DEBUG_ENTER_STRING - - -GST_DEBUG_PAD_NAME -#define GST_DEBUG_PAD_NAME(pad) \ - ((pad)->parent != NULL) ? gst_element_get_name(GST_ELEMENT((pad)->parent)) : "''", gst_pad_get_name(pad) - - -GST_DEBUG_FUNCPTR -#define GST_DEBUG_FUNCPTR(ptr) _gst_debug_register_funcptr((void *)(ptr), #ptr) - - -GST_DEBUG_FUNCPTR_NAME -#define GST_DEBUG_FUNCPTR_NAME(ptr) _gst_debug_nameof_funcptr((void *)ptr) - - -GST_DEBUG_FUNCPTR -#define GST_DEBUG_FUNCPTR(ptr) (ptr) - - -GST_DEBUG_FUNCPTR_NAME -#define GST_DEBUG_FUNCPTR_NAME(ptr) "" - - -GstProps - - -GstPropsFactoryEntry -typedef gpointer GstPropsFactoryEntry; - - -GstPropsFactory[] -typedef GstPropsFactoryEntry GstPropsFactory[]; - - -GstPropsListFactory[] -typedef GstPropsFactory *GstPropsListFactory[]; - - -GstPropsId -typedef enum { - GST_PROPS_END_ID_NUM = 0, - GST_PROPS_LIST_ID_NUM, - GST_PROPS_INT_ID_NUM, - GST_PROPS_INT_RANGE_ID_NUM, - GST_PROPS_FOURCC_ID_NUM, - GST_PROPS_BOOL_ID_NUM, -} GstPropsId; - - -GST_PROPS_LIST_ID -#define GST_PROPS_LIST_ID GINT_TO_POINTER(GST_PROPS_LIST_ID_NUM) - - -GST_PROPS_INT_ID -#define GST_PROPS_INT_ID GINT_TO_POINTER(GST_PROPS_INT_ID_NUM) - - -GST_PROPS_INT_RANGE_ID -#define GST_PROPS_INT_RANGE_ID GINT_TO_POINTER(GST_PROPS_INT_RANGE_ID_NUM) - - -GST_PROPS_FOURCC_ID -#define GST_PROPS_FOURCC_ID GINT_TO_POINTER(GST_PROPS_FOURCC_ID_NUM) - - -GST_PROPS_BOOL_ID -#define GST_PROPS_BOOL_ID GINT_TO_POINTER(GST_PROPS_BOOL_ID_NUM) - - -GST_PROPS_LIST -#define GST_PROPS_LIST(a...) GST_PROPS_LIST_ID,##a,NULL - - -GST_PROPS_INT -#define GST_PROPS_INT(a) GST_PROPS_INT_ID,(GINT_TO_POINTER(a)) - - -GST_PROPS_INT_RANGE -#define GST_PROPS_INT_RANGE(a,b) GST_PROPS_INT_RANGE_ID,(GINT_TO_POINTER(a)),(GINT_TO_POINTER(b)) - - -GST_PROPS_FOURCC -#define GST_PROPS_FOURCC(a,b,c,d) GST_PROPS_FOURCC_ID,(GINT_TO_POINTER((a)|(b)<<8|(c)<<16|(d)<<24)) - - -GST_PROPS_FOURCC_INT -#define GST_PROPS_FOURCC_INT(a) GST_PROPS_FOURCC_ID,(GINT_TO_POINTER(a)) - - -GST_PROPS_BOOLEAN -#define GST_PROPS_BOOLEAN(a) GST_PROPS_BOOL_ID,(GINT_TO_POINTER(a)) - - -GstProps -struct GstProps { - GSList *properties; /* real properties for this property */ -}; - - -gst_props_register -GstProps * -GstPropsFactory factory - - -gst_props_new -GstProps * -GstPropsFactoryEntry entry, ... - - -gst_props_merge -GstProps * -GstProps *props, GstProps *tomerge - - -gst_props_check_compatibility -gboolean -GstProps *fromprops, GstProps *toprops - - -gst_props_save_thyself -xmlNodePtr -GstProps *props, xmlNodePtr parent - - -gst_props_load_thyself -GstProps * -xmlNodePtr parent - - -GstPropsEntry - - -GstPropsEntry -struct GstPropsEntry { - GQuark propid; - GstPropsId propstype; - - union { - /* flat values */ - gboolean bool_data; - guint32 fourcc_data; - gint int_data; - - /* structured values */ - struct { - GList *entries; - } list_data; - struct { - gint min; - gint max; - } int_range_data; - } data; -}; - - -GST_TYPE_AUTOPLUG -#define GST_TYPE_AUTOPLUG \ - (gst_object_get_type()) - - -GST_AUTOPLUG -#define GST_AUTOPLUG(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_AUTOPLUG,GstAutoplug)) - - -GST_AUTOPLUG_CLASS -#define GST_AUTOPLUG_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_AUTOPLUG,GstAutoplugClass)) - - -GST_IS_AUTOPLUG -#define GST_IS_AUTOPLUG(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_AUTOPLUG)) - - -GST_IS_AUTOPLUG_CLASS -#define GST_IS_AUTOPLUG_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_AUTOPLUG)) - - -GstAutoplug - - -GstAutoplugClass - - -GST_AUTOPLUG_MAX_COST -#define GST_AUTOPLUG_MAX_COST 999999 - - -GstAutoplugCostFunction -guint -gpointer src, gpointer dest, gpointer data - - -GstAutoplugListFunction -GList * -gpointer data - - -GstAutoplug -struct GstAutoplug { - GtkObject object; -}; - - -gst_autoplug_get_type -GtkType -void - - -gst_autoplug_caps -GList * -GstCaps *srccaps, GstCaps *sinkcaps - - -gst_bin_schedule_func -void -GstBin *bin - - -GST_TYPE_ASYNCDISKSRC -#define GST_TYPE_ASYNCDISKSRC \ - (gst_asyncdisksrc_get_type()) - - -GST_ASYNCDISKSRC -#define GST_ASYNCDISKSRC(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_ASYNCDISKSRC,GstAsyncDiskSrc)) - - -GST_ASYNCDISKSRC_CLASS -#define GST_ASYNCDISKSRC_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_ASYNCDISKSRC,GstAsyncDiskSrcClass)) - - -GST_IS_ASYNCDISKSRC -#define GST_IS_ASYNCDISKSRC(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_ASYNCDISKSRC)) - - -GST_IS_ASYNCDISKSRC_CLASS -#define GST_IS_ASYNCDISKSRC_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_ASYNCDISKSRC)) - - -GstAsyncDiskSrcFlags -typedef enum { - GST_ASYNCDISKSRC_OPEN = GST_SRC_FLAG_LAST, - - GST_ASYNCDISKSRC_FLAG_LAST = GST_SRC_FLAG_LAST + 2, -} GstAsyncDiskSrcFlags; - - -GstAsyncDiskSrc - - -GstAsyncDiskSrcClass - - -GstAsyncDiskSrc -struct GstAsyncDiskSrc { - GstSrc src; - /* pads */ - GstPad *srcpad; - - /* filename */ - gchar *filename; - /* fd */ - gint fd; - - /* mapping parameters */ - gulong size; /* how long is the file? */ - guchar *map; /* where the file is mapped to */ - - /* details for fallback synchronous read */ - gulong curoffset; /* current offset in file */ - gulong bytes_per_read; /* bytes per read */ - gboolean new_seek; - - gulong seq; /* buffer sequence number */ -}; - - -gst_asyncdisksrc_get_type -GtkType -void - - -GST_TYPE_AUDIOSINK -#define GST_TYPE_AUDIOSINK \ - (gst_audiosink_get_type()) - - -GST_AUDIOSINK -#define GST_AUDIOSINK(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_AUDIOSINK,GstAudioSink)) - - -GST_AUDIOSINK_CLASS -#define GST_AUDIOSINK_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_AUDIOSINK,GstAudioSinkClass)) - - -GST_IS_AUDIOSINK -#define GST_IS_AUDIOSINK(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_AUDIOSINK)) - - -GST_IS_AUDIOSINK_CLASS -#define GST_IS_AUDIOSINK_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_AUDIOSINK)) - - -GstAudioSinkFlags -typedef enum { - GST_AUDIOSINK_OPEN = GST_SINK_FLAG_LAST, - - GST_AUDIOSINK_FLAG_LAST = GST_SINK_FLAG_LAST+2, -} GstAudioSinkFlags; - - -GstAudioSink - - -GstAudioSinkClass - - -GstAudioSink -struct GstAudioSink { - GstSink sink; - - GstPad *sinkpad; - - //GstClockTime clocktime; - GstClock *clock; - /* soundcard state */ - int fd; - int caps; /* the capabilities */ - gint format; - gint channels; - gint frequency; - gboolean mute; -}; - - -gst_audiosink_get_type -GtkType -void - - -gst_audiosink_factory_init -gboolean -GstElementFactory *factory - - -GST_TYPE_AUDIOSRC -#define GST_TYPE_AUDIOSRC \ - (gst_audiosrc_get_type()) - - -GST_AUDIOSRC -#define GST_AUDIOSRC(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_AUDIOSRC,GstAudioSrc)) - - -GST_AUDIOSRC_CLASS -#define GST_AUDIOSRC_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_AUDIOSRC,GstAudioSrcClass)) - - -GST_IS_AUDIOSRC -#define GST_IS_AUDIOSRC(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_AUDIOSRC)) - - -GST_IS_AUDIOSRC_CLASS -#define GST_IS_AUDIOSRC_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_AUDIOSRC)) - - -GstAudioSrcFlags -typedef enum { - GST_AUDIOSRC_OPEN = GST_SRC_FLAG_LAST, - - GST_AUDIOSRC_FLAG_LAST = GST_SRC_FLAG_LAST+2, -} GstAudioSrcFlags; - - -GstAudioSrc - - -GstAudioSrcClass - - -GstAudioSrc -struct GstAudioSrc { - GstSrc src; - - /* pads */ - GstPad *srcpad; - - /* sound card */ - gint fd; - - /* audio parameters */ - gint format; - gint channels; - gint frequency; - - /* blocking */ - gulong curoffset; - gulong bytes_per_read; - - gulong seq; - - MetaAudioRaw *meta; -}; - - -gst_audiosrc_get_type -GtkType -void - - -gst_disksrc_details -extern GstElementDetails gst_disksrc_details; - - -GST_TYPE_DISKSRC -#define GST_TYPE_DISKSRC \ - (gst_disksrc_get_type()) - - -GST_DISKSRC -#define GST_DISKSRC(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_DISKSRC,GstDiskSrc)) - - -GST_DISKSRC_CLASS -#define GST_DISKSRC_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_DISKSRC,GstDiskSrcClass)) - - -GST_IS_DISKSRC -#define GST_IS_DISKSRC(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_DISKSRC)) - - -GST_IS_DISKSRC_CLASS -#define GST_IS_DISKSRC_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_DISKSRC)) - - -GstDiskSrcFlags -typedef enum { - GST_DISKSRC_OPEN = GST_SRC_FLAG_LAST, - - GST_DISKSRC_FLAG_LAST = GST_SRC_FLAG_LAST+2, -} GstDiskSrcFlags; - - -GstDiskSrc - - -GstDiskSrcClass - - -GstDiskSrc -struct GstDiskSrc { - GstSrc src; - /* pads */ - GstPad *srcpad; - - /* file state */ - gchar *filename; - gint fd; - - gulong curoffset; /* current offset in file */ - gulong bytes_per_read; /* bytes per read */ - gboolean new_seek; - - gulong seq; /* buffer sequence number */ - gulong size; -}; - - -gst_disksrc_get_type -GtkType -void - - -GST_TYPE_ESDSINK -#define GST_TYPE_ESDSINK \ - (gst_esdsink_get_type()) - - -GST_ESDSINK -#define GST_ESDSINK(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_ESDSINK,GstEsdSink)) - - -GST_ESDSINK_CLASS -#define GST_ESDSINK_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_ESDSINK,GstEsdSinkClass)) - - -GST_IS_ESDSINK -#define GST_IS_ESDSINK(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_ESDSINK)) - - -GST_IS_ESDSINK_CLASS -#define GST_IS_ESDSINK_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_ESDSINK)) - - -GstEsdSink - - -GstEsdSinkClass - - -GstEsdSink -struct GstEsdSink { - GstFilter filter; - - GstPad *sinkpad; - - /* soundcard state */ - - int fd; - gint format; - gint channels; - gint frequency; -}; - - -gst_esdsink_get_type -GtkType -void - - -GST_TYPE_FAKESINK -#define GST_TYPE_FAKESINK \ - (gst_fakesink_get_type()) - - -GST_FAKESINK -#define GST_FAKESINK(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_FAKESINK,GstFakeSink)) - - -GST_FAKESINK_CLASS -#define GST_FAKESINK_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_FAKESINK,GstFakeSinkClass)) - - -GST_IS_FAKESINK -#define GST_IS_FAKESINK(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_FAKESINK)) - - -GST_IS_FAKESINK_CLASS -#define GST_IS_FAKESINK_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_FAKESINK)) - - -GstFakeSink - - -GstFakeSinkClass - - -GstFakeSink -struct GstFakeSink { - GstSink sink; - - GstPad *sinkpad; -}; - - -gst_fakesink_get_type -GtkType -void - - -GstFakeSrcOutputType -typedef enum { - FAKESRC_FIRST_LAST_LOOP = 1, - FAKESRC_LAST_FIRST_LOOP, - FAKESRC_PING_PONG, - FAKESRC_ORDERED_RANDOM, - FAKESRC_RANDOM, - FAKESRC_PATERN_LOOP, - FAKESRC_PING_PONG_PATERN, - FAKESRC_GET_ALWAYS_SUCEEDS, -} GstFakeSrcOutputType; - - -GST_TYPE_FAKESRC -#define GST_TYPE_FAKESRC \ - (gst_fakesrc_get_type()) - - -GST_FAKESRC -#define GST_FAKESRC(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_FAKESRC,GstFakeSrc)) - - -GST_FAKESRC_CLASS -#define GST_FAKESRC_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_FAKESRC,GstFakeSrcClass)) - - -GST_IS_FAKESRC -#define GST_IS_FAKESRC(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_FAKESRC)) - - -GST_IS_FAKESRC_CLASS -#define GST_IS_FAKESRC_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_FAKESRC)) - - -GstFakeSrc - - -GstFakeSrcClass - - -GstFakeSrc -struct GstFakeSrc { - GstSrc src; - - gboolean loop_based; - gint numsrcpads; - GSList *srcpads; - GstFakeSrcOutputType output; - gchar *patern; - GList *paternlist; -}; - - -gst_fakesrc_get_type -GtkType -void - - -GST_TYPE_FDSINK -#define GST_TYPE_FDSINK \ - (gst_fdsink_get_type()) - - -GST_FDSINK -#define GST_FDSINK(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_FDSINK,GstFdSink)) - - -GST_FDSINK_CLASS -#define GST_FDSINK_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_FDSINK,GstFdSinkClass)) - - -GST_IS_FDSINK -#define GST_IS_FDSINK(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_FDSINK)) - - -GST_IS_FDSINK_CLASS -#define GST_IS_FDSINK_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_FDSINK)) - - -GstFdSink - - -GstFdSinkClass - - -GstFdSink -struct GstFdSink { - GstSink sink; - - GstPad *sinkpad; - - int fd; -}; - - -gst_fdsink_get_type -GtkType -void - - -GST_TYPE_FDSRC -#define GST_TYPE_FDSRC \ - (gst_fdsrc_get_type()) - - -GST_FDSRC -#define GST_FDSRC(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_FDSRC,GstFdSrc)) - - -GST_FDSRC_CLASS -#define GST_FDSRC_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_FDSRC,GstFdSrcClass)) - - -GST_IS_FDSRC -#define GST_IS_FDSRC(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_FDSRC)) - - -GST_IS_FDSRC_CLASS -#define GST_IS_FDSRC_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_FDSRC)) - - -GstFdSrc - - -GstFdSrcClass - - -GstFdSrc -struct GstFdSrc { - GstSrc src; - /* pads */ - GstPad *srcpad; - - /* fd */ - gint fd; - - gulong curoffset; /* current offset in file */ - gulong bytes_per_read; /* bytes per read */ - - gulong seq; /* buffer sequence number */ -}; - - -gst_fdsrc_get_type -GtkType -void - - -GST_TYPE_HTTPSRC -#define GST_TYPE_HTTPSRC \ - (gst_httpsrc_get_type()) - - -GST_HTTPSRC -#define GST_HTTPSRC(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_HTTPSRC,GstHttpSrc)) - - -GST_HTTPSRC_CLASS -#define GST_HTTPSRC_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_HTTPSRC,GstHttpSrcClass)) - - -GST_IS_HTTPSRC -#define GST_IS_HTTPSRC(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_HTTPSRC)) - - -GST_IS_HTTPSRC_CLASS -#define GST_IS_HTTPSRC_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_HTTPSRC)) - - -GstHttpSrcFlags -typedef enum { - GST_HTTPSRC_OPEN = GST_SRC_FLAG_LAST, - - GST_HTTPSRC_FLAG_LAST = GST_SRC_FLAG_LAST+2, -} GstHttpSrcFlags; - - -GstHttpSrc - - -GstHttpSrcClass - - -GstHttpSrc -struct GstHttpSrc { - GstSrc src; - /* pads */ - GstPad *srcpad; - - gchar *url; - ghttp_request *request; - int fd; - - gulong curoffset; /* current offset in file */ - gulong bytes_per_read; /* bytes per read */ -}; - - -gst_httpsrc_get_type -GtkType -void - - -GST_TYPE_IDENTITY -#define GST_TYPE_IDENTITY \ - (gst_identity_get_type()) - - -GST_IDENTITY -#define GST_IDENTITY(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_IDENTITY,GstIdentity)) - - -GST_IDENTITY_CLASS -#define GST_IDENTITY_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_IDENTITY,GstIdentityClass)) - - -GST_IS_IDENTITY -#define GST_IS_IDENTITY(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_IDENTITY)) - - -GST_IS_IDENTITY_CLASS -#define GST_IS_IDENTITY_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_IDENTITY)) - - -GstIdentity - - -GstIdentityClass - - -GstIdentity -struct GstIdentity { - GstFilter filter; - - GstPad *sinkpad; - GstPad *srcpad; - - gboolean loop_based; -}; - - -gst_identity_get_type -GtkType -void - - -GST_TYPE_QUEUE -#define GST_TYPE_QUEUE \ - (gst_queue_get_type()) - - -GST_QUEUE -#define GST_QUEUE(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_QUEUE,GstQueue)) - - -GST_QUEUE_CLASS -#define GST_QUEUE_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_QUEUE,GstQueueClass)) - - -GST_IS_QUEUE -#define GST_IS_QUEUE(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_QUEUE)) - - -GST_IS_QUEUE_CLASS -#define GST_IS_QUEUE_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_QUEUE)) - - -GstQueue - - -GstQueueClass - - -GstQueue -struct GstQueue { - GstConnection Connection; - - GstPad *sinkpad; - GstPad *srcpad; - - /* the queue of buffers we're keeping our grubby hands on */ - GSList *queue; - - gint level_buffers; /* number of buffers queued here */ - gint max_buffers; /* maximum number of buffers queued here */ - gboolean block; /* if set to FALSE, _get returns NULL if queue empty */ - gint level_bytes; /* number of bytes queued here */ - gint size_buffers; /* size of queue in buffers */ - gint size_bytes; /* size of queue in bytes */ - - GMutex *emptylock; /* used when the queue is empty */ - GCond *emptycond; - GMutex *fulllock; /* used when the queue is full */ - GCond *fullcond; -}; - - -gst_queue_get_type -GtkType -void - - -GST_TYPE_SINESRC -#define GST_TYPE_SINESRC \ - (gst_sinesrc_get_type()) - - -GST_SINESRC -#define GST_SINESRC(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_SINESRC,GstSineSrc)) - - -GST_SINESRC_CLASS -#define GST_SINESRC_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_SINESRC,GstSineSrcClass)) - - -GST_IS_SINESRC -#define GST_IS_SINESRC(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_SINESRC)) - - -GST_IS_SINESRC_CLASS -#define GST_IS_SINESRC_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_SINESRC)) - - -GstSineSrc - - -GstSineSrcClass - - -GstSineSrc -struct GstSineSrc { - GstSrc src; - - /* pads */ - GstPad *srcpad; - - /* parameters */ - gdouble volume; - gint freq; - - /* audio parameters */ - gint format; - gint channels; - gint frequency; - - gulong seq; - - MetaAudioRaw meta; - gboolean sentmeta; -}; - - -gst_sinesrc_get_type -GtkType -void - - -GST_TYPE_TYPEFIND -#define GST_TYPE_TYPEFIND \ - (gst_typefind_get_type()) - - -GST_TYPEFIND -#define GST_TYPEFIND(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_TYPEFIND,GstTypeFind)) - - -GST_TYPEFIND_CLASS -#define GST_TYPEFIND_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_TYPEFIND,GstTypeFindClass)) - - -GST_IS_TYPEFIND -#define GST_IS_TYPEFIND(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_TYPEFIND)) - - -GST_IS_TYPEFIND_CLASS -#define GST_IS_TYPEFIND_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_TYPEFIND)) - - -GstTypeFind - - -GstTypeFindClass - - -GstTypeFind -struct GstTypeFind { - GstSink sink; - - GstPad *sinkpad; - - GstCaps *caps; -}; - - -gst_typefind_get_type -GtkType -void - - -GST_TYPE_PIPEFILTER -#define GST_TYPE_PIPEFILTER \ - (gst_pipefilter_get_type()) - - -GST_PIPEFILTER -#define GST_PIPEFILTER(obj) \ - (GTK_CHECK_CAST((obj),GST_TYPE_PIPEFILTER,GstPipefilter)) - - -GST_PIPEFILTER_CLASS -#define GST_PIPEFILTER_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST((klass),GST_TYPE_PIPEFILTER,GstPipefilterClass)) - - -GST_IS_PIPEFILTER -#define GST_IS_PIPEFILTER(obj) \ - (GTK_CHECK_TYPE((obj),GST_TYPE_PIPEFILTER)) - - -GST_IS_PIPEFILTER_CLASS -#define GST_IS_PIPEFILTER_CLASS(obj) \ - (GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_PIPEFILTER)) - - -GstPipeFilterFlags -typedef enum { - GST_PIPEFILTER_OPEN = GST_FILTER_FLAG_LAST, - - GST_PIPEFILTER_FLAG_LAST = GST_FILTER_FLAG_LAST, -} GstPipeFilterFlags; - - -GstPipefilter - - -GstPipefilterClass - - -GstPipefilter -struct GstPipefilter { - GstFilter filter; - - GstPad *sinkpad; - GstPad *srcpad; - - /* command */ - gchar **command; - gchar *orig_command; - /* fd */ - gint fdout[2]; - gint fdin[2]; - pid_t childpid; - - gulong curoffset; /* current offset in file */ - gulong bytes_per_read; /* bytes per read */ - - gulong seq; /* buffer sequence number */ -}; - - -gst_pipefilter_get_type -GtkType -void - - -MetaAudioRaw - - -MetaAudioRaw -struct MetaAudioRaw { - GstMeta meta; - - /* formatting information */ - gint format; - gint channels; - gint frequency; - gint bps; -}; - - -MetaAudioSpectrum - - -MetaAudioSpectrum -struct MetaAudioSpectrum { - GstMeta meta; - - /* data representation */ - gint16 bands; /* how many bands are represented */ - gint8 channels; /* how many audio channels are there? */ - gboolean interleaved; /* are the channels interleaved? */ - - /* spectrum details */ - gint16 lowfreq; - gint16 highfreq; - gint16 steps; -}; - - -MetaVideoRaw - - -MetaDGA - - -MetaOverlay - - -OverlayClip - - -OverlayClip -struct OverlayClip { - int x1, x2, y1, y2; -}; - - -MetaDGA -struct MetaDGA { - /* the base address of the screen */ - void *base; - /* the dimensions of the screen */ - int swidth, sheight; - /* the number of bytes in a line */ - int bytes_per_line; -}; - - -MetaOverlay -struct MetaOverlay { - /* the position of the window */ - int wx, wy; - /* a reference to the object sending overlay change events */ - GtkWidget *overlay_element; - /* the number of overlay regions */ - int clip_count; - /* the overlay regions of the display window */ - struct _OverlayClip overlay_clip[32]; - - gint width; - gint height; - - gboolean did_overlay; - gboolean fully_obscured; -}; - - -MetaVideoRaw -struct MetaVideoRaw { - GstMeta meta; - - /* formatting information */ - GstColorSpaceType format; - GdkVisual *visual; - /* dimensions of the video buffer */ - gint width; - gint height; - /* a pointer to the overlay info if the sink supports this */ - MetaOverlay *overlay_info; - /* a pointer to the DGA info if the sink supports this */ - MetaDGA *dga_info; -}; - diff --git a/docs/gst/gstreamer-docs.sgml b/docs/gst/gstreamer-docs.sgml index 1f26f94..923f987 100644 --- a/docs/gst/gstreamer-docs.sgml +++ b/docs/gst/gstreamer-docs.sgml @@ -2,13 +2,12 @@ + - - @@ -16,8 +15,6 @@ - - @@ -65,18 +62,15 @@ well as the object hiarchy that defines elements and bins, along with some more specialized elements. &Gst; + &GstInfo; &GstObject; &GstElement; &GstBin; &GstPipeline; &GstAutoplug; - &GstFilter; - &GstSink; - &GstSrc; &GstBuffer; &GstBufferPool; &GstPad; - &GstConnection; &GstPlugin; &GstThread; &GstTee; diff --git a/docs/gst/gstreamer-sections.txt b/docs/gst/gstreamer-sections.txt index 35bbcac..44f1ebe 100644 --- a/docs/gst/gstreamer-sections.txt +++ b/docs/gst/gstreamer-sections.txt @@ -19,6 +19,7 @@ cothread_main cothread_set_data cothread_get_data +SETUP_STACK GET_SP JUMP SET_SP @@ -30,15 +31,32 @@ SET_SP gst_init gst_main gst_main_quit -DEBUG + + + +
+gstinfo +gstinfo GST_DEBUG_ENABLED +GST_DEBUG_PREFIX +DEBUG +DEBUG_NOPREFIX +DEBUG_ENTER DEBUG_SET_STRING DEBUG_ENTER_STRING -DEBUG_ENTER -DEBUG_LEAVE_STRING DEBUG_LEAVE - -SETUP_STACK +DEBUG_LEAVE_STRING +GST_DEBUG_PAD_NAME +GST_DEBUG_FUNCPTR +GST_DEBUG_FUNCPTR_NAME +GstInfoHandler +gst_default_info_handler +INFO +INFO_ELEMENT +GstErrorHandler +gst_default_error_handler +ERROR +ERROR_OBJECT
@@ -133,22 +151,6 @@ GST_BUFFER_POOL
-gstconnection -GstConnection -GstConnection -gst_connection_new -gst_connection_push - -GST_TYPE_CONNECTION -gst_connection_get_type -GST_CONNECTION -GST_CONNECTION_CLASS -GST_IS_CONNECTION -GST_IS_CONNECTION_CLASS -GstConnectionClass -
- -
gstelement GstElement GstElementState @@ -185,6 +187,7 @@ gst_element_connect gst_element_set_state gst_element_error gst_element_get_factory +gst_element_signal_eos gst_element_save_thyself gst_element_load_thyself gst_elementfactory_new @@ -209,22 +212,6 @@ gst_element_get_type
-gstfilter -GstFilter -GstFilter -GST_FILTER_FLAG_LAST -gst_filter_new - -GstFilterClass -gst_filter_get_type -GST_TYPE_FILTER -GST_FILTER -GST_FILTER_CLASS -GST_IS_FILTER -GST_IS_FILTER_CLASS -
- -
gstclock GstClockTime GstClockTimeDiff @@ -282,6 +269,7 @@ gst_object_ref gst_object_unref gst_object_sink gst_object_destroy +gst_object_get_path_string gst_object_get_type GstObjectClass @@ -432,39 +420,6 @@ gst_plugin_save_thyself
-gstsink -GstSink -GstSink -GST_SINK_FLAG_LAST -gst_sink_new - -GstSinkClass -gst_sink_get_type -GST_TYPE_SINK -GST_SINK -GST_SINK_CLASS -GST_IS_SINK -GST_IS_SINK_CLASS -
- -
-gstsrc -GstSrc -GstSrcFlags -GST_SRC_IS_ASYNC -GstSrc -gst_src_signal_eos - -gst_src_get_type -GstSrcClass -GST_TYPE_SRC -GST_SRC -GST_SRC_CLASS -GST_IS_SRC -GST_IS_SRC_CLASS -
- -
gsttee GstTee GstTee @@ -571,6 +526,7 @@ gst_props_load_thyself GstPropsEntry GstPropsListFactory[] GstPropsId +GST_PROPS_END_ID GST_PROPS_LIST_ID GST_PROPS_INT_ID GST_PROPS_INT_RANGE_ID diff --git a/docs/gst/gstreamer.hierarchy b/docs/gst/gstreamer.hierarchy index ae16d48..f31a135 100644 --- a/docs/gst/gstreamer.hierarchy +++ b/docs/gst/gstreamer.hierarchy @@ -4,23 +4,19 @@ GtkObject GstBin GstPipeline GstThread - GstFilter - GstTee - GstPipefilter - GstIdentity - GstSink - GstFakeSink - GstAudioSink - GstFdSink - GstTypeFind - GstSrc - GstFakeSrc - GstDiskSrc - GstAsyncDiskSrc - GstHttpSrc - GstFdSrc - GstAudioSrc - GstSineSrc - GstConnection - GstQueue + GstTee + GstFakeSrc + GstFakeSink + GstDiskSrc + GstAsyncDiskSrc + GstHttpSrc + GstFdSrc + GstAudioSrc + GstSineSrc + GstAudioSink + GstFdSink + GstPipefilter + GstIdentity + GstQueue + GstTypeFind GstPad diff --git a/docs/gst/gstreamer.types.in b/docs/gst/gstreamer.types.in index c83eae6..b72e458 100644 --- a/docs/gst/gstreamer.types.in +++ b/docs/gst/gstreamer.types.in @@ -7,11 +7,7 @@ gst_object_get_type gst_element_get_type gst_bin_get_type gst_pipeline_get_type -gst_filter_get_type -gst_sink_get_type -gst_src_get_type gst_pad_get_type -gst_connection_get_type gst_thread_get_type gst_tee_get_type diff --git a/docs/gst/tmpl/gst.sgml b/docs/gst/tmpl/gst.sgml index f33e65d..c254b77 100644 --- a/docs/gst/tmpl/gst.sgml +++ b/docs/gst/tmpl/gst.sgml @@ -53,63 +53,3 @@ pipeline and Microsoft's DirectShow for some background. - - -Use this macro to show debugging info. This is only usefull when developing new -plugin elements. -If you #define DEBUG_ENABLED before including gst/gst.h, this macro will produce -g_print messages. - - -@format: the format specification as in g_print -@args...: arguments - - - - - - - - - - - - - - -@format: -@args...: - - - - - - - - - - - - - - -@format: -@args...: - - - - - - - - - - - - - - -@format: -@args...: - - diff --git a/docs/gst/tmpl/gstautoplug.sgml b/docs/gst/tmpl/gstautoplug.sgml new file mode 100644 index 0000000..d96f6d9 --- /dev/null +++ b/docs/gst/tmpl/gstautoplug.sgml @@ -0,0 +1,54 @@ + +GstAutoplug + + +Provide automatic element selection + + + +The autoplugger can select a list of elements that are needed +to convert a certain GstCaps to another one. + + + + + + + + + +The max cost of a certain connection + + + + + + +Calculate the cost between two elements + + +@src: the source element +@dest: the destination element +@data: optional user data +@Returns: the cost for a connection between the two elements + + + + +Get a list of all elements. These elements will be used in autoplugging + + +@data: user data +@Returns: a GList of elements + + + + +Perform autoplugging between the two given caps. + + +@srccaps: the source capability structure +@sinkcaps: the sink capability structure +@Returns: th GList of elements that convert srccaps into sinkcaps. + + diff --git a/docs/gst/tmpl/gstbuffer.sgml b/docs/gst/tmpl/gstbuffer.sgml index eb36dfa..e86ad7b 100644 --- a/docs/gst/tmpl/gstbuffer.sgml +++ b/docs/gst/tmpl/gstbuffer.sgml @@ -173,6 +173,7 @@ used when data in a stream has been skipped @GST_BUFFER_FLUSH: this buffer is not related to previous buffers. This flag is mainly used when data in a stream has been skipped @GST_BUFFER_EOS: this buffer is the last one in the stream +@GST_BUFFER_DISCONTINUOUS: diff --git a/docs/gst/tmpl/gstcaps.sgml b/docs/gst/tmpl/gstcaps.sgml new file mode 100644 index 0000000..4cb6721 --- /dev/null +++ b/docs/gst/tmpl/gstcaps.sgml @@ -0,0 +1,116 @@ + +GstCaps + + +Capabilities of pads + + + +GstCaps is used to attach capabilities to a pad. Capabilities are made of +a mime-type and a set of properties. + + + + + + + + + + + + +@id: the typeid of the capability +@properties: the properties of the capability + + + + + + + + + + + + + + + + + + +@mime: +@Returns: + + + + + + + +@mime: +@props: +@Returns: + + + + + + + +@factory: +@Returns: + + + + + + + +@caps: +@props: +@Returns: + + + + + + + +@caps: +@Returns: + + + + + + + +@fromcaps: +@tocaps: +@Returns: + +@caps1: +@caps2: + + + + + + + +@caps: +@parent: +@Returns: + + + + + + + +@parent: +@Returns: + + diff --git a/docs/gst/tmpl/gstconnection.sgml b/docs/gst/tmpl/gstconnection.sgml deleted file mode 100644 index 5871a3c..0000000 --- a/docs/gst/tmpl/gstconnection.sgml +++ /dev/null @@ -1,33 +0,0 @@ - -GstConnection - - -Generic connection between elements. - - - -A connection is a bas class for a generic connection between -elements. A connection is typically a bas class for queues. - - - - - - - - - - - - - - - - - - - -@name: -@Returns: - - diff --git a/docs/gst/tmpl/gstelement.sgml b/docs/gst/tmpl/gstelement.sgml index 25cf267..e3b0c19 100644 --- a/docs/gst/tmpl/gstelement.sgml +++ b/docs/gst/tmpl/gstelement.sgml @@ -337,6 +337,14 @@ circumstances. @Returns: + + + + + +@element: + + @@ -497,3 +505,10 @@ Is trigered whenever an error occured @gstelement: the object which received the signal. @arg1: the error message + + + + + +@gstelement: the object which received the signal. + diff --git a/docs/gst/tmpl/gstfilter.sgml b/docs/gst/tmpl/gstfilter.sgml deleted file mode 100644 index 850b0a9..0000000 --- a/docs/gst/tmpl/gstfilter.sgml +++ /dev/null @@ -1,41 +0,0 @@ - -GstFilter - - -Take data in and spit data out - - - -Filters take data in and spit data out. They are the main Element in a filter graph. -Filters have zero or more inputs and zero or more outputs. Filters are connected -together to form filter graphs. A GstFilter is the base class and is not very usefull -on its own. - - - - - - - - - - - - - - - -subclass use this to start their flag enumeration - - - - - - - - - -@name: -@Returns: - - diff --git a/docs/gst/tmpl/gstinfo.sgml b/docs/gst/tmpl/gstinfo.sgml new file mode 100644 index 0000000..3e6916c --- /dev/null +++ b/docs/gst/tmpl/gstinfo.sgml @@ -0,0 +1,217 @@ + +gstinfo + + +info/debugging/error handling + + + +GstInfo contains a lot of functions to add debugging information +to your application. + + + + + + + + + + + + + + + + + + + +@format: +@args...: + + + + +Use this macro to show debugging info. This is only usefull when developing new +plugin elements. +If you #define DEBUG_ENABLED before including gst/gst.h, this macro will produce +g_print messages. + + +@format: the format specification as in g_print +@args...: arguments + + + + + + + +@format: +@args...: + + + + + + + +@format: +@args...: + + + + + + + +@format: +@args...: + + + + + + + + + + + + + + +@format: +@args...: + + + + + + + + + + + + + + +@pad: + + + + + + + +@ptr: + + + + + + + +@ptr: + + + + + + + +@category: +@file: +@function: +@line: +@debug_string: +@element: +@string: + + + + + + + +@category: +@file: +@function: +@line: +@debug_string: +@element: +@string: + + + + + + + +@cat: +@format: +@args...: + + + + + + + +@cat: +@element: +@format: +@args...: + + + + + + + +@file: +@function: +@line: +@debug_string: +@element: +@object: +@string: + + + + + + + +@file: +@function: +@line: +@debug_string: +@element: +@object: +@string: + + + + + + + +@element: +@format: +@args...: + + + + + + + +@element: +@object: +@format: +@args...: + + diff --git a/docs/gst/tmpl/gstobject.sgml b/docs/gst/tmpl/gstobject.sgml index 889d8d7..27f67cf 100644 --- a/docs/gst/tmpl/gstobject.sgml +++ b/docs/gst/tmpl/gstobject.sgml @@ -165,6 +165,15 @@ This macro releases a lock on the object. @object: the object + + + + + +@object: +@Returns: + + diff --git a/docs/gst/tmpl/gstprops.sgml b/docs/gst/tmpl/gstprops.sgml new file mode 100644 index 0000000..e3f3eb4 --- /dev/null +++ b/docs/gst/tmpl/gstprops.sgml @@ -0,0 +1,149 @@ + +GstProps + + +Properties + + + +GstProps is used to attach certain properties to a pad. Properties +are usually used in conjunction with GstCaps. + + + + +GstCaps + + + + + + + +@properties: the properties + + + + + + + + + + + + + + + +Create a list of properties + + +@a...: the list of GstProps + + + + +Create an integer property + + +@a: the integer property + + + + +Create an integer range property + + +@a: the min value for the range +@b: the max value for the range + + + + +Construct a fourcc property out of four bytes + + +@a: first byte +@b: second byte +@c: third byte +@d: fourth byte + + + + +Create a fourcc property out of an integer value + + +@a: the integer value + + + + +Create a boolean property + + +@a: the boolean property + + + + + + + +@factory: +@Returns: + + + + + + + +@entry: +@Varargs: +@Returns: + + + + + + + +@props: +@tomerge: +@Returns: + + + + + + + +@fromprops: +@toprops: +@Returns: + +@props1: +@props2: + + + + + + + +@props: +@parent: +@Returns: + + + + + + + +@parent: +@Returns: + + diff --git a/docs/gst/tmpl/gstreamer-unused.sgml b/docs/gst/tmpl/gstreamer-unused.sgml index f64ef7e..99280f4 100644 --- a/docs/gst/tmpl/gstreamer-unused.sgml +++ b/docs/gst/tmpl/gstreamer-unused.sgml @@ -53,6 +53,16 @@ @obj: + + +An eos signal is triggered whenever the GstSrc has reached the end of +the stream. + + + +@gstsrc: the object which received the signal. +@arg1: the object which received the signal + @@ -86,6 +96,12 @@ + + + + + + @@ -205,6 +221,13 @@ + + + + + +@Returns: + @@ -212,12 +235,11 @@ @klass: - + -@Returns: @@ -226,6 +248,14 @@ @obj: + + +The sink is the end of the filter graph. A typical sink would be an audio +or a video card. + + + + @@ -288,6 +318,12 @@ This macro checks to see if the GST_SRC_ASYNC flag is set. @obj: GstSrc to check for flag in. + + + + + + @@ -327,6 +363,14 @@ This macro checks to see if the GST_SRC_ASYNC flag is set. + + +A connection is a bas class for a generic connection between +elements. A connection is typically a bas class for queues. + + + + @@ -469,6 +513,12 @@ GstColorSpace @obj: + + + + + + @@ -476,6 +526,12 @@ GstColorSpace @obj: + + + + + + @@ -484,6 +540,19 @@ GstColorSpace @id: @Returns: + + +Filters take data in and spit data out. They are the main Element in a filter graph. +Filters have zero or more inputs and zero or more outputs. Filters are connected +together to form filter graphs. A GstFilter is the base class and is not very usefull +on its own. + + + + +Take data in and spit data out + + @@ -535,6 +604,14 @@ GstColorSpace @src: + + + + + +@name: +@Returns: + @@ -575,6 +652,13 @@ GstGetbits @offset: @size: + + + + + +@src: + @@ -589,6 +673,22 @@ GstGetbits @obj: + + + + + +@name: +@Returns: + + + + + + +@name: +@Returns: + @@ -596,6 +696,14 @@ GstGetbits @klass: + + +A GstSrc is the start of a filter graph. It typically is a file or an +audio source. It provides data for the next element in the graph. + + + + @@ -639,6 +747,10 @@ GstGetbits + +GstSrc + + @@ -740,6 +852,10 @@ This macro returns the entire set of flags for the object. @klass: + +The start point of a filter graph + + @@ -791,14 +907,14 @@ This macro returns the entire set of flags for the object. - + @klass: - + @@ -832,6 +948,10 @@ This macro returns the entire set of flags for the object. @obj: + +GstConnection + + @@ -880,6 +1000,10 @@ This macro sets the given state on the element. @obj: + +Generic connection between elements. + + @@ -1082,6 +1206,10 @@ A flag indicating that SSE instructions are supported. + +The end point of a filter graph + + @@ -1204,6 +1332,13 @@ This macro sets the given flags. @Returns: + + +Query a GstSrc for the ASYNC flag + + +@obj: The GstSrc to query + @@ -1236,6 +1371,10 @@ This macro sets the given flags. + +GstSink + + @@ -1251,6 +1390,12 @@ This macro sets the given flags. + + + + + + @@ -1258,6 +1403,12 @@ This macro sets the given flags. @Returns: + + + + + + @@ -1271,6 +1422,12 @@ This macro sets the given flags. + + + + + + @@ -1387,6 +1544,20 @@ Get the size of the current file. + + +subclass use this to start their flag enumeration + + + + + +Flags for the GstSrc element + + +@GST_SRC_ASYNC: Indicates that this src is asynchronous +@GST_SRC_FLAG_LAST: subclasses can use this to number their flags + @@ -1490,6 +1661,12 @@ Get the size of the current file. @pad: @Returns: + + + + + + @@ -1567,32 +1744,32 @@ Get the size of the current file. @audiosink: @frequency: - + -@elementfactory: - + +@elementfactory: - + -@Returns: +@meta: - + -@meta: +@Returns: @@ -1635,18 +1812,18 @@ Get the size of the current file. - + +@obj: - + -@obj: @@ -1808,6 +1985,10 @@ Query whether this object has multiple input pads. @fd: @Returns: + +GstFilter + + diff --git a/docs/gst/tmpl/gstscheduler.sgml b/docs/gst/tmpl/gstscheduler.sgml new file mode 100644 index 0000000..5fc0411 --- /dev/null +++ b/docs/gst/tmpl/gstscheduler.sgml @@ -0,0 +1,24 @@ + +GstScheduler + + + + + + + + + + + + + + + + + + + +@bin: + + diff --git a/docs/gst/tmpl/gstsink.sgml b/docs/gst/tmpl/gstsink.sgml deleted file mode 100644 index d137fba..0000000 --- a/docs/gst/tmpl/gstsink.sgml +++ /dev/null @@ -1,40 +0,0 @@ - -GstSink - - -The end point of a filter graph - - - -The sink is the end of the filter graph. A typical sink would be an audio -or a video card. - - - - - - - - - - - - - - - - - - - - - - - - - - -@name: -@Returns: - - diff --git a/docs/gst/tmpl/gstsrc.sgml b/docs/gst/tmpl/gstsrc.sgml deleted file mode 100644 index f9725af..0000000 --- a/docs/gst/tmpl/gstsrc.sgml +++ /dev/null @@ -1,59 +0,0 @@ - -GstSrc - - -The start point of a filter graph - - - -A GstSrc is the start of a filter graph. It typically is a file or an -audio source. It provides data for the next element in the graph. - - - - - - - - - - -Flags for the GstSrc element - - -@GST_SRC_ASYNC: Indicates that this src is asynchronous -@GST_SRC_FLAG_LAST: subclasses can use this to number their flags - - - -Query a GstSrc for the ASYNC flag - - -@obj: The GstSrc to query - - - - - - - - - - - - - -@src: - - - - -An eos signal is triggered whenever the GstSrc has reached the end of -the stream. - - - -@gstsrc: the object which received the signal. - -@arg1: the object which received the signal - diff --git a/gst/elements/Makefile.am b/gst/elements/Makefile.am index ac3b284..420b551 100644 --- a/gst/elements/Makefile.am +++ b/gst/elements/Makefile.am @@ -42,5 +42,7 @@ noinst_HEADERS = \ gsttypefind.h \ gstsinesrc.h +CFLAGS += -O2 -Wall + libgstelements_la_LIBADD = $(GLIB_LIBS) $(GTK_LIBS) $(GHTTP_LIBS) libgstelements_la_LDFLAGS = -version-info $(STREAMER_CURRENT):$(STREAMER_REVISION):$(STREAMER_AGE) diff --git a/gst/elements/gstqueue.c b/gst/elements/gstqueue.c index 98ef8c2..5cf4d32 100644 --- a/gst/elements/gstqueue.c +++ b/gst/elements/gstqueue.c @@ -28,7 +28,7 @@ #define STATUS(A) #endif -#include +#include "gstqueue.h" #include diff --git a/gst/gstautoplug.c b/gst/gstautoplug.c index 8b05e2b..618b93f 100644 --- a/gst/gstautoplug.c +++ b/gst/gstautoplug.c @@ -89,18 +89,16 @@ gst_autoplug_can_match (GstElementFactory *src, GstElementFactory *dest) if (srctemp->direction == GST_PAD_SRC && desttemp->direction == GST_PAD_SINK) { if (gst_caps_check_compatibility (srctemp->caps, desttemp->caps)) { - DEBUG ("gstautoplug: \"%s\" connects with \"%s\"\n", src->name, dest->name); + INFO(0,"factory \"%s\" can connect with factory \"%s\"", src->name, dest->name); return TRUE; } - else { - DEBUG ("gstautoplug: \"%s\" does not connect with \"%s\"\n", src->name, dest->name); - } } desttemps = g_list_next (desttemps); } srctemps = g_list_next (srctemps); } + INFO(0,"factory \"%s\" cannot connect with factory \"%s\"", src->name, dest->name); return FALSE; } @@ -125,15 +123,15 @@ gst_autoplug_caps_find_cost (gpointer src, gpointer dest, gpointer data) if (IS_CAPS (src) && IS_CAPS (dest)) { res = gst_caps_check_compatibility ((GstCaps *)src, (GstCaps *)dest); - DEBUG ("caps %d to caps %d %d\n", ((GstCaps *)src)->id, ((GstCaps *)dest)->id, res); + INFO (0,"caps %d to caps %d %d", ((GstCaps *)src)->id, ((GstCaps *)dest)->id, res); } else if (IS_CAPS (src)) { res = gst_elementfactory_can_sink_caps ((GstElementFactory *)dest, src); - DEBUG ("factory %s to sink caps %d %d\n", ((GstElementFactory *)dest)->name, ((GstCaps *)src)->id, res); + INFO (0,"factory %s to sink caps %d %d", ((GstElementFactory *)dest)->name, ((GstCaps *)src)->id, res); } else if (IS_CAPS (dest)) { res = gst_elementfactory_can_src_caps ((GstElementFactory *)src, dest); - DEBUG ("factory %s to src caps %d %d\n", ((GstElementFactory *)src)->name, ((GstCaps *)dest)->id, res); + INFO (0,"factory %s to src caps %d %d", ((GstElementFactory *)src)->name, ((GstCaps *)dest)->id, res); } else { res = gst_autoplug_can_match ((GstElementFactory *)src, (GstElementFactory *)dest); @@ -153,6 +151,8 @@ gst_autoplug_caps (GstCaps *srccaps, GstCaps *sinkcaps) caps.src = srccaps; caps.sink = sinkcaps; + INFO (0,"autoplugging two caps structures"); + return gst_autoplug_func (srccaps, sinkcaps, gst_autoplug_elementfactory_get_list, gst_autoplug_caps_find_cost, @@ -179,6 +179,8 @@ construct_path (gst_autoplug_node *rgnNodes, gpointer factory) current = rgnNodes[find_factory(rgnNodes, factory)].iPrev; + INFO (0,"factories found in autoplugging (reversed order)"); + while (current != NULL) { gpointer next = NULL; @@ -186,7 +188,7 @@ construct_path (gst_autoplug_node *rgnNodes, gpointer factory) next = rgnNodes[find_factory(rgnNodes, current)].iPrev; if (next) { factories = g_list_prepend (factories, current); - DEBUG ("%s %p\n", current->name, next); + INFO (0,"factory: \"%s\"", current->name); } current = next; } diff --git a/gst/gstelement.c b/gst/gstelement.c index c3c33e4..e0a5824 100644 --- a/gst/gstelement.c +++ b/gst/gstelement.c @@ -840,8 +840,8 @@ gst_element_set_loop_function(GstElement *element, } /** - * gst_src_signal_eos: - * @src: source to trigger the eos signal of + * gst_element_signal_eos: + * @element: element to trigger the eos signal of * * singals the eos signal to indicate that the end of the stream * is reached. diff --git a/gst/gstobject.c b/gst/gstobject.c index 3516f91..b86603a 100644 --- a/gst/gstobject.c +++ b/gst/gstobject.c @@ -252,8 +252,18 @@ void gst_object_sink(GstObject *object) { #endif /* gst_object_sink */ - -gchar *gst_object_get_path_string(GstObject *object) { +/** + * gst_object_get_path_string: + * @object: GstObject to get the path from + * + * Generates a string describing the path of the object in + * the object hierarchy. Usefull for debugging + * + * Returns: a string describing the path of the object + */ +gchar* +gst_object_get_path_string(GstObject *object) +{ GSList *parentage = NULL; GSList *parents; void *parent; diff --git a/gst/gstplugin.c b/gst/gstplugin.c index 660d9ac..3f29ca7 100644 --- a/gst/gstplugin.c +++ b/gst/gstplugin.c @@ -259,7 +259,7 @@ gst_plugin_load_absolute (gchar *name) if (module != NULL) { if (g_module_symbol(module,"plugin_init",(gpointer *)&initfunc)) { if ((plugin = (initfunc)(module))) { - INFO(0,"plugin %s loaded", plugin->name); + INFO(GST_INFO_PLUGIN_LOADING,"plugin %s loaded", plugin->name); plugin->filename = g_strdup(name); plugin->loaded = TRUE; _gst_modules = g_list_prepend(_gst_modules,module); @@ -628,7 +628,6 @@ gst_plugin_load_thyself (xmlNodePtr parent) kinderen = kinderen->next; } -// DEBUG("gstplugin: added %d registered factories and %d types\n", elementcount, typecount); INFO(GST_INFO_PLUGIN_LOADING,"added %d registered factories and %d types",elementcount,typecount); } diff --git a/plugins/elements/Makefile.am b/plugins/elements/Makefile.am index ac3b284..420b551 100644 --- a/plugins/elements/Makefile.am +++ b/plugins/elements/Makefile.am @@ -42,5 +42,7 @@ noinst_HEADERS = \ gsttypefind.h \ gstsinesrc.h +CFLAGS += -O2 -Wall + libgstelements_la_LIBADD = $(GLIB_LIBS) $(GTK_LIBS) $(GHTTP_LIBS) libgstelements_la_LDFLAGS = -version-info $(STREAMER_CURRENT):$(STREAMER_REVISION):$(STREAMER_AGE) diff --git a/plugins/elements/gstqueue.c b/plugins/elements/gstqueue.c index 98ef8c2..5cf4d32 100644 --- a/plugins/elements/gstqueue.c +++ b/plugins/elements/gstqueue.c @@ -28,7 +28,7 @@ #define STATUS(A) #endif -#include +#include "gstqueue.h" #include -- 2.7.4