summaryrefslogtreecommitdiff
path: root/tests/autoplug3.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/autoplug3.c')
-rw-r--r--tests/autoplug3.c100
1 files changed, 100 insertions, 0 deletions
diff --git a/tests/autoplug3.c b/tests/autoplug3.c
new file mode 100644
index 0000000000..7d2c3ee2ea
--- /dev/null
+++ b/tests/autoplug3.c
@@ -0,0 +1,100 @@
+#include <gst/gst.h>
+
+int
+main (int argc, char *argv[])
+{
+ GstElement *element;
+ GstElement *sink1, *sink2;
+ GstAutoplug *autoplug;
+
+ gst_init(&argc,&argv);
+
+ sink1 = gst_elementfactory_make ("videosink", "videosink");
+ sink2 = gst_elementfactory_make ("audiosink", "audiosink");
+
+ autoplug = gst_autoplugfactory_make ("staticrender");
+
+ element = gst_autoplug_to_renderers (autoplug,
+ g_list_append (NULL, gst_caps_new ("mp3caps", "audio/mp3")), sink2, NULL);
+ xmlSaveFile ("autoplug3_1.gst", gst_xml_write (element));
+
+ element = gst_autoplug_to_renderers (autoplug,
+ g_list_append (NULL, gst_caps_new ("mpeg1caps", "video/mpeg")), sink1, NULL);
+ if (element) {
+ xmlSaveFile ("autoplug3_2.gst", gst_xml_write (element));
+ }
+
+ element = gst_autoplug_to_caps (autoplug,
+ g_list_append (NULL, gst_caps_new_with_props(
+ "testcaps3",
+ "video/mpeg",
+ gst_props_new (
+ "mpegversion", GST_PROPS_INT (1),
+ "systemstream", GST_PROPS_BOOLEAN (TRUE),
+ NULL))),
+ g_list_append (NULL, gst_caps_new("testcaps4","audio/raw")),
+ NULL);
+ if (element) {
+ xmlSaveFile ("autoplug3_3.gst", gst_xml_write (element));
+ }
+
+ element = gst_autoplug_to_caps (autoplug,
+ g_list_append (NULL, gst_caps_new_with_props(
+ "testcaps5",
+ "video/mpeg",
+ gst_props_new (
+ "mpegversion", GST_PROPS_INT (1),
+ "systemstream", GST_PROPS_BOOLEAN (FALSE),
+ NULL))),
+ g_list_append (NULL, gst_caps_new("testcaps6", "video/raw")),
+ NULL);
+ if (element) {
+ xmlSaveFile ("autoplug3_4.gst", gst_xml_write (element));
+ }
+
+ element = gst_autoplug_to_caps (autoplug,
+ g_list_append (NULL, gst_caps_new(
+ "testcaps7",
+ "video/avi")),
+ g_list_append (NULL, gst_caps_new("testcaps8", "video/raw")),
+ g_list_append (NULL, gst_caps_new("testcaps9", "audio/raw")),
+ NULL);
+ if (element) {
+ xmlSaveFile ("autoplug3_5.gst", gst_xml_write (element));
+ }
+
+ element = gst_autoplug_to_caps (autoplug,
+ g_list_append (NULL, gst_caps_new_with_props(
+ "testcaps10",
+ "video/mpeg",
+ gst_props_new (
+ "mpegversion", GST_PROPS_INT (1),
+ "systemstream", GST_PROPS_BOOLEAN (TRUE),
+ NULL))),
+ g_list_append (NULL, gst_caps_new("testcaps10", "video/raw")),
+ g_list_append (NULL, gst_caps_new("testcaps11", "audio/raw")),
+ NULL);
+ if (element) {
+ xmlSaveFile ("autoplug3_6.gst", gst_xml_write (element));
+ }
+
+ sink1 = gst_elementfactory_make ("videosink", "videosink");
+ sink2 = gst_elementfactory_make ("audiosink", "audiosink");
+
+ element = gst_autoplug_to_renderers (autoplug,
+ g_list_append (NULL, gst_caps_new_with_props(
+ "testcaps10",
+ "video/mpeg",
+ gst_props_new (
+ "mpegversion", GST_PROPS_INT (1),
+ "systemstream", GST_PROPS_BOOLEAN (TRUE),
+ NULL))),
+ sink1,
+ sink2,
+ NULL);
+ if (element) {
+ xmlSaveFile ("autoplug3_7.gst", gst_xml_write (element));
+ }
+
+ exit (0);
+}