diff --git a/tests/.gitignore b/tests/.gitignore index e1867ee465..a471d16e13 100644 --- a/tests/.gitignore +++ b/tests/.gitignore @@ -15,3 +15,6 @@ queue registry rip paranoia +props +autoplug +mp3encode diff --git a/tests/props.c b/tests/props.c new file mode 100644 index 0000000000..5fac483095 --- /dev/null +++ b/tests/props.c @@ -0,0 +1,61 @@ +#include + +static GstPropsFactory mpeg2dec_sink_props = { + "mpegtype", GST_PROPS_LIST ( + GST_PROPS_INT(1), + GST_PROPS_INT(2) + ), + NULL +}; + +static GstPropsFactory mpeg2dec_src_props = { + "fourcc", GST_PROPS_LIST ( + GST_PROPS_FOURCC ('Y','V','1','2'), + GST_PROPS_FOURCC_INT (0x56595559) + ), + "width", GST_PROPS_INT_RANGE (16, 4096), + "height", GST_PROPS_INT_RANGE (16, 4096), + NULL +}; + +static GstProps *sinkprops = NULL, + *rawprops = NULL, + *testprops = NULL; + +int main(int argc,char *argv[]) +{ + xmlDocPtr doc; + xmlNodePtr parent; + gint i; + + doc = xmlNewDoc ("1.0"); + doc->root = xmlNewDocNode (doc, NULL, "Properties", NULL); + + _gst_type_initialize (); + + sinkprops = gst_props_register (mpeg2dec_sink_props); + parent = xmlNewChild (doc->root, NULL, "Props1", NULL); + gst_props_save_thyself (sinkprops, parent); + + rawprops = gst_props_register (mpeg2dec_src_props); + parent = xmlNewChild (doc->root, NULL, "Props2", NULL); + gst_props_save_thyself (rawprops, parent); + + i=argc; + + testprops = gst_props_new ("layer", GST_PROPS_INT (i), + "bitrate", GST_PROPS_INT_RANGE (i*300, i*10000), + NULL); + if (i==3) { + testprops = gst_props_merge (testprops, + gst_props_new ("framed", GST_PROPS_BOOLEAN (TRUE), + NULL)); + } + + parent = xmlNewChild (doc->root, NULL, "Props3", NULL); + gst_props_save_thyself (testprops, parent); + + xmlDocDump(stdout, doc); + + return 0; +}