mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-17 11:45:25 +00:00
examples: remove xml example build system bits and purge from tree
Fixes make distcheck.
This commit is contained in:
parent
00697e8529
commit
bdcb5fec0f
6 changed files with 3 additions and 209 deletions
|
@ -197,6 +197,9 @@ CRUFT_FILES = \
|
||||||
$(top_builddir)/common/m4/wint_t.m4 \
|
$(top_builddir)/common/m4/wint_t.m4 \
|
||||||
$(top_builddir)/common/m4/xsize.m4
|
$(top_builddir)/common/m4/xsize.m4
|
||||||
|
|
||||||
|
CRUFT_DIRS = \
|
||||||
|
$(top_builddir)/tests/examples/xml
|
||||||
|
|
||||||
include $(top_srcdir)/common/cruft.mak
|
include $(top_srcdir)/common/cruft.mak
|
||||||
|
|
||||||
all-local: gst-element-check-@GST_MAJORMINOR@.m4 check-cruft
|
all-local: gst-element-check-@GST_MAJORMINOR@.m4 check-cruft
|
||||||
|
|
|
@ -711,7 +711,6 @@ tests/examples/metadata/Makefile
|
||||||
tests/examples/queue/Makefile
|
tests/examples/queue/Makefile
|
||||||
tests/examples/streams/Makefile
|
tests/examples/streams/Makefile
|
||||||
tests/examples/typefind/Makefile
|
tests/examples/typefind/Makefile
|
||||||
tests/examples/xml/Makefile
|
|
||||||
tools/Makefile
|
tools/Makefile
|
||||||
common/Makefile
|
common/Makefile
|
||||||
common/m4/Makefile
|
common/m4/Makefile
|
||||||
|
|
8
tests/examples/xml/.gitignore
vendored
8
tests/examples/xml/.gitignore
vendored
|
@ -1,8 +0,0 @@
|
||||||
createxml
|
|
||||||
runxml
|
|
||||||
xmlTest.gst
|
|
||||||
*.bb
|
|
||||||
*.bbg
|
|
||||||
*.da
|
|
||||||
createxml-createxml.gcno
|
|
||||||
runxml-runxml.gcno
|
|
|
@ -1,7 +0,0 @@
|
||||||
noinst_PROGRAMS = createxml runxml
|
|
||||||
|
|
||||||
createxml_LDADD = $(GST_OBJ_LIBS) $(XML_LIBS)
|
|
||||||
createxml_CFLAGS = $(GST_OBJ_CFLAGS)
|
|
||||||
runxml_LDADD = $(GST_OBJ_LIBS) $(XML_LIBS)
|
|
||||||
runxml_CFLAGS = $(GST_OBJ_CFLAGS)
|
|
||||||
|
|
|
@ -1,91 +0,0 @@
|
||||||
#include <stdlib.h>
|
|
||||||
#include <gst/gst.h>
|
|
||||||
|
|
||||||
static void
|
|
||||||
object_saved (GstObject * object, xmlNodePtr parent, gpointer data)
|
|
||||||
{
|
|
||||||
xmlNodePtr child;
|
|
||||||
xmlNsPtr ns;
|
|
||||||
|
|
||||||
/* first see if the namespace is already known */
|
|
||||||
ns = xmlSearchNsByHref (parent->doc, parent,
|
|
||||||
(xmlChar *) "http://gstreamer.net/gst-test/1.0/");
|
|
||||||
if (ns == NULL) {
|
|
||||||
xmlNodePtr root = xmlDocGetRootElement (parent->doc);
|
|
||||||
|
|
||||||
/* add namespace to root node */
|
|
||||||
ns = xmlNewNs (root, (xmlChar *) "http://gstreamer.net/gst-test/1.0/",
|
|
||||||
(xmlChar *) "test");
|
|
||||||
}
|
|
||||||
child = xmlNewChild (parent, ns, (xmlChar *) "comment", NULL);
|
|
||||||
|
|
||||||
xmlNewChild (child, NULL, (xmlChar *) "text", (xmlChar *) data);
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
|
||||||
main (int argc, char *argv[])
|
|
||||||
{
|
|
||||||
GstElement *filesrc, *osssink, *queue, *queue2, *decode;
|
|
||||||
GstElement *pipeline;
|
|
||||||
GstElement *thread, *thread2;
|
|
||||||
|
|
||||||
gst_init (&argc, &argv);
|
|
||||||
|
|
||||||
if (argc != 2) {
|
|
||||||
g_print ("usage: %s <filename>\n", argv[0]);
|
|
||||||
exit (-1);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* create new threads to hold the elements */
|
|
||||||
thread = gst_element_factory_make ("thread", "thread");
|
|
||||||
g_assert (thread != NULL);
|
|
||||||
thread2 = gst_element_factory_make ("thread", "thread2");
|
|
||||||
g_assert (thread2 != NULL);
|
|
||||||
|
|
||||||
/* these signals will allow us to save custom tags with the gst xml output */
|
|
||||||
g_signal_connect (G_OBJECT (thread), "object_saved",
|
|
||||||
G_CALLBACK (object_saved), g_strdup ("decoder thread"));
|
|
||||||
g_signal_connect (G_OBJECT (thread2), "object_saved",
|
|
||||||
G_CALLBACK (object_saved), g_strdup ("render thread"));
|
|
||||||
|
|
||||||
/* create a new bin to hold the elements */
|
|
||||||
pipeline = gst_pipeline_new ("pipeline");
|
|
||||||
g_assert (pipeline != NULL);
|
|
||||||
|
|
||||||
/* create a disk reader */
|
|
||||||
filesrc = gst_element_factory_make ("filesrc", "disk_source");
|
|
||||||
g_assert (filesrc != NULL);
|
|
||||||
g_object_set (G_OBJECT (filesrc), "location", argv[1], NULL);
|
|
||||||
|
|
||||||
queue = gst_element_factory_make ("queue", "queue");
|
|
||||||
queue2 = gst_element_factory_make ("queue", "queue2");
|
|
||||||
|
|
||||||
/* and an audio sink */
|
|
||||||
osssink = gst_element_factory_make ("osssink", "play_audio");
|
|
||||||
g_assert (osssink != NULL);
|
|
||||||
|
|
||||||
decode = gst_element_factory_make ("mad", "decode");
|
|
||||||
g_assert (decode != NULL);
|
|
||||||
|
|
||||||
/* add objects to the main pipeline */
|
|
||||||
gst_bin_add (GST_BIN (pipeline), filesrc);
|
|
||||||
gst_bin_add (GST_BIN (pipeline), queue);
|
|
||||||
|
|
||||||
gst_bin_add (GST_BIN (thread), decode);
|
|
||||||
gst_bin_add (GST_BIN (thread), queue2);
|
|
||||||
|
|
||||||
gst_bin_add (GST_BIN (thread2), osssink);
|
|
||||||
|
|
||||||
gst_element_link_many (filesrc, queue, decode, queue2, osssink, NULL);
|
|
||||||
|
|
||||||
gst_bin_add (GST_BIN (pipeline), thread);
|
|
||||||
gst_bin_add (GST_BIN (pipeline), thread2);
|
|
||||||
|
|
||||||
/* write the bin to stdout */
|
|
||||||
gst_xml_write_file (GST_ELEMENT (pipeline), stdout);
|
|
||||||
|
|
||||||
/* write the bin to a file */
|
|
||||||
gst_xml_write_file (GST_ELEMENT (pipeline), fopen ("xmlTest.gst", "w"));
|
|
||||||
|
|
||||||
exit (0);
|
|
||||||
}
|
|
|
@ -1,102 +0,0 @@
|
||||||
#include <string.h>
|
|
||||||
#include <stdlib.h>
|
|
||||||
#include <gst/gst.h>
|
|
||||||
|
|
||||||
G_GNUC_UNUSED static void
|
|
||||||
xml_loaded (GstXML * xml, GstObject * object, xmlNodePtr self, gpointer data)
|
|
||||||
{
|
|
||||||
xmlNodePtr children = self->xmlChildrenNode;
|
|
||||||
|
|
||||||
while (children) {
|
|
||||||
if (!strcmp ((const char *) children->name, "comment")) {
|
|
||||||
xmlNodePtr nodes = children->xmlChildrenNode;
|
|
||||||
|
|
||||||
while (nodes) {
|
|
||||||
if (!strcmp ((const char *) nodes->name, "text")) {
|
|
||||||
gchar *name = g_strdup ((gchar *) xmlNodeGetContent (nodes));
|
|
||||||
gchar *obj_name = gst_object_get_name (object);
|
|
||||||
|
|
||||||
g_print ("object %s loaded with comment '%s'\n", obj_name, name);
|
|
||||||
|
|
||||||
g_free (obj_name);
|
|
||||||
g_free (name);
|
|
||||||
}
|
|
||||||
nodes = nodes->next;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
children = children->next;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
event_loop (GstElement * pipe)
|
|
||||||
{
|
|
||||||
GstBus *bus;
|
|
||||||
GstMessage *message = NULL;
|
|
||||||
|
|
||||||
bus = gst_element_get_bus (GST_ELEMENT (pipe));
|
|
||||||
|
|
||||||
while (TRUE) {
|
|
||||||
message = gst_bus_poll (bus, GST_MESSAGE_ANY, -1);
|
|
||||||
|
|
||||||
g_assert (message != NULL);
|
|
||||||
|
|
||||||
switch (message->type) {
|
|
||||||
case GST_MESSAGE_EOS:
|
|
||||||
gst_message_unref (message);
|
|
||||||
return;
|
|
||||||
case GST_MESSAGE_WARNING:
|
|
||||||
case GST_MESSAGE_ERROR:{
|
|
||||||
GError *gerror;
|
|
||||||
gchar *debug;
|
|
||||||
|
|
||||||
gst_message_parse_error (message, &gerror, &debug);
|
|
||||||
gst_object_default_error (GST_MESSAGE_SRC (message), gerror, debug);
|
|
||||||
gst_message_unref (message);
|
|
||||||
g_error_free (gerror);
|
|
||||||
g_free (debug);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
default:
|
|
||||||
gst_message_unref (message);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
|
||||||
main (int argc, char *argv[])
|
|
||||||
{
|
|
||||||
GstXML *xml;
|
|
||||||
GstElement *bin;
|
|
||||||
gboolean ret;
|
|
||||||
|
|
||||||
gst_init (&argc, &argv);
|
|
||||||
|
|
||||||
if (argc != 2) {
|
|
||||||
g_print ("usage: %s <xml pipeline description>\n", argv[0]);
|
|
||||||
exit (-1);
|
|
||||||
}
|
|
||||||
|
|
||||||
xml = gst_xml_new ();
|
|
||||||
|
|
||||||
/* g_signal_connect (G_OBJECT (xml), "object_loaded", */
|
|
||||||
/* G_CALLBACK (xml_loaded), xml); */
|
|
||||||
|
|
||||||
ret = gst_xml_parse_file (xml, (xmlChar *) argv[1], NULL);
|
|
||||||
g_assert (ret == TRUE);
|
|
||||||
|
|
||||||
bin = gst_xml_get_element (xml, (xmlChar *) "pipeline");
|
|
||||||
g_assert (bin != NULL);
|
|
||||||
|
|
||||||
/* start playing */
|
|
||||||
gst_element_set_state (bin, GST_STATE_PLAYING);
|
|
||||||
|
|
||||||
/* Run event loop listening for bus messages until EOS or ERROR */
|
|
||||||
event_loop (bin);
|
|
||||||
|
|
||||||
/* stop the bin */
|
|
||||||
gst_element_set_state (bin, GST_STATE_NULL);
|
|
||||||
|
|
||||||
exit (0);
|
|
||||||
}
|
|
Loading…
Reference in a new issue