⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 createxml.c

📁 gnash 在pc和嵌入式下开发需要的源码
💻 C
字号:
#include <stdlib.h>#include <gst/gst.h>gboolean playing;static voidobject_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);}intmain (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);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -