diff --git a/tests/.gitignore b/tests/.gitignore index 9af6a43bef..8d0cd0b737 100644 --- a/tests/.gitignore +++ b/tests/.gitignore @@ -23,3 +23,4 @@ case4 markup load padfactory +tee diff --git a/tests/Makefile.am b/tests/Makefile.am index c6b3a4f1e2..f116e177bf 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -1,7 +1,7 @@ -SUBDIRS = sched eos +SUBDIRS = sched eos noinst_PROGRAMS = init loadall simplefake states caps queue registry \ -paranoia rip mp3encode autoplug props case4 markup load +paranoia rip mp3encode autoplug props case4 markup load tee # we have nothing but apps here, we can do this safely LIBS += $(GST_LIBS) diff --git a/tests/eos/Makefile.am b/tests/eos/Makefile.am index 0c0d7ab4fd..7a6a621391 100644 --- a/tests/eos/Makefile.am +++ b/tests/eos/Makefile.am @@ -1,4 +1,4 @@ -noinst_PROGRAMS = case1 +noinst_PROGRAMS = case1 case2 case3 # jsut apps here, this is safe LIBS += $(GST_LIBS) diff --git a/tests/tee.c b/tests/tee.c new file mode 100644 index 0000000000..c6c4b86d16 --- /dev/null +++ b/tests/tee.c @@ -0,0 +1,36 @@ +#include + +int +main(int argc, char *argv[]) +{ + GstElement *element, *mp3parse; + GstPadTemplate *templ; + GstPad *pad; + xmlDocPtr doc; + xmlNodePtr parent; + + doc = xmlNewDoc ("1.0"); + doc->xmlRootNode = xmlNewDocNode (doc, NULL, "Capabilities", NULL); + + gst_init(&argc,&argv); + + element = gst_elementfactory_make("tee","element"); + mp3parse = gst_elementfactory_make("mp3parse","mp3parse"); + + pad = gst_element_request_pad_by_name (element, "src%d"); + g_print ("new pad %s\n", gst_pad_get_name (pad)); + + templ = gst_element_get_padtemplate_by_name (mp3parse, "sink"); + + templ = gst_padtemplate_create ("src%d", GST_PAD_SRC, GST_PAD_REQUEST, templ->caps); + pad = gst_element_request_pad (element, templ); + g_print ("new pad %s\n", gst_pad_get_name (pad)); + + parent = xmlNewChild (doc->xmlRootNode, NULL, "Padtemplate", NULL); + + gst_padtemplate_save_thyself (pad->padtemplate, parent); + + xmlDocDump(stdout, doc); + + return 0; +}