gstreamer/tests/props.c
Richard Boulton 82769bcae9 Some more fixes for libxml.
Original commit message from CVS:
Some more fixes for libxml.
Also, some code formatting changes in esdsink, some further fixes to
vumeter, and some work on synaesthesia to make it closer to working
(it doesn't fully work yet, though. :( )
2001-01-18 15:29:46 +00:00

67 lines
1.7 KiB
C

#include <gst/gst.h>
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->xmlRootNode = xmlNewDocNode (doc, NULL, "Properties", NULL);
_gst_type_initialize ();
sinkprops = gst_props_register (mpeg2dec_sink_props);
parent = xmlNewChild (doc->xmlRootNode, NULL, "Props1", NULL);
gst_props_save_thyself (sinkprops, parent);
rawprops = gst_props_register (mpeg2dec_src_props);
parent = xmlNewChild (doc->xmlRootNode, 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),
"mpegtest", GST_PROPS_BOOLEAN (FALSE),
"hello", GST_PROPS_LIST (
GST_PROPS_FOURCC_INT (0X5555),
GST_PROPS_FOURCC_INT (0X6666)
),
NULL));
}
parent = xmlNewChild (doc->xmlRootNode, NULL, "Props3", NULL);
gst_props_save_thyself (testprops, parent);
xmlDocDump(stdout, doc);
return 0;
}