GstXML

Name

GstXML -- Convert Elements into an XML presentation.

Synopsis


#include <gst/gst.h>


GstXML*     gst_xml_new                     (void);
gboolean    gst_xml_parse_doc               (GstXML *xml,
                                             xmlDocPtr doc,
                                             const guchar *root);
gboolean    gst_xml_parse_memory            (GstXML *xml,
                                             guchar *buffer,
                                             guint size,
                                             const gchar *root);
gboolean    gst_xml_parse_file              (GstXML *xml,
                                             const guchar *fname,
                                             const guchar *root);
xmlDocPtr   gst_xml_write                   (GstElement *element);
gint        gst_xml_write_file              (GstElement *element,
                                             FILE *out);
GstElement* gst_xml_get_element             (GstXML *xml,
                                             const guchar *name);
GList*      gst_xml_get_topelements         (GstXML *xml);
GstElement* gst_xml_make_element            (xmlNodePtr cur,
                                             GstObject *parent);

Object Hierarchy


  GObject
   +----GstObject
         +----GstXML

Signal Prototypes


"object-loaded"
            void        user_function      (GstXML *gstxml,
                                            GstObject *arg1,
                                            gpointer arg2,
                                            gpointer user_data);
"object-loaded"
            void        user_function      (GstXML *gstxml,
                                            GstObject *arg1,
                                            gpointer arg2,
                                            gpointer user_data);

Description

All GstElements can be serialized to an XML presentation and subsequently loaded back.

Details

gst_xml_new ()

GstXML*     gst_xml_new                     (void);

Create a new GstXML parser object.


gst_xml_parse_doc ()

gboolean    gst_xml_parse_doc               (GstXML *xml,
                                             xmlDocPtr doc,
                                             const guchar *root);

Fills the GstXML object with the elements from the xmlDocPtr.


gst_xml_parse_memory ()

gboolean    gst_xml_parse_memory            (GstXML *xml,
                                             guchar *buffer,
                                             guint size,
                                             const gchar *root);

Fills the GstXML object with the corresponding elements from an in memory XML buffer.


gst_xml_parse_file ()

gboolean    gst_xml_parse_file              (GstXML *xml,
                                             const guchar *fname,
                                             const guchar *root);

Fills the GstXML object with the corresponding elements from the XML file fname. Optionally it will only build the element from the element node root (if it is not NULL). This feature is useful if you only want to build a specific element from an XML file but not the pipeline it is embedded in.

Pass "-" as fname to read from stdin. You can also pass a URI of any format that libxml supports, including http.


gst_xml_write ()

xmlDocPtr   gst_xml_write                   (GstElement *element);

Converts the given element into an XML presentation.


gst_xml_write_file ()

gint        gst_xml_write_file              (GstElement *element,
                                             FILE *out);

Converts the given element into XML and writes the formatted XML to an open file.


gst_xml_get_element ()

GstElement* gst_xml_get_element             (GstXML *xml,
                                             const guchar *name);

This function is used to get a pointer to the GstElement corresponding to name in the pipeline description. You would use this if you have to do anything to the element after loading.


gst_xml_get_topelements ()

GList*      gst_xml_get_topelements         (GstXML *xml);

Retrive a list of toplevel elements.


gst_xml_make_element ()

GstElement* gst_xml_make_element            (xmlNodePtr cur,
                                             GstObject *parent);

Load the element from the XML description

Signals

The "object-loaded" signal

void        user_function                  (GstXML *gstxml,
                                            GstObject *arg1,
                                            gpointer arg2,
                                            gpointer user_data);


The "object-loaded" signal

void        user_function                  (GstXML *gstxml,
                                            GstObject *arg1,
                                            gpointer arg2,
                                            gpointer user_data);