3 gboolean playing = TRUE;
6 eos_signal_element (GstElement *element)
8 g_print ("element eos received from \"%s\"\n", gst_element_get_name (element));
12 eos_signal (GstElement *element)
14 g_print ("eos received from \"%s\"\n", gst_element_get_name (element));
20 main(int argc,char *argv[])
23 GstElement *src,*identity,*sink;
25 gst_init(&argc,&argv);
27 pipeline = GST_BIN(gst_pipeline_new("pipeline"));
28 g_return_val_if_fail(pipeline != NULL, 1);
30 src = gst_elementfactory_make("fakesrc","src");
31 gtk_object_set (GTK_OBJECT (src), "num_buffers", 1, NULL);
32 g_return_val_if_fail(src != NULL, 2);
34 identity = gst_elementfactory_make("identity","identity");
35 g_return_val_if_fail(identity != NULL, 3);
36 sink = gst_elementfactory_make("fakesink","sink");
37 g_return_val_if_fail(sink != NULL, 4);
39 gst_bin_add(pipeline,GST_ELEMENT(src));
40 gst_bin_add(pipeline,GST_ELEMENT(identity));
41 gst_bin_add(pipeline,GST_ELEMENT(sink));
43 gst_element_connect(src,"src",identity,"sink");
44 gst_element_connect(identity,"src",sink,"sink");
46 gtk_signal_connect (GTK_OBJECT (src), "eos", eos_signal_element, NULL);
47 gtk_signal_connect (GTK_OBJECT (pipeline), "eos", eos_signal, NULL);
49 gst_element_set_state(GST_ELEMENT(pipeline),GST_STATE_PLAYING);
52 gst_bin_iterate(pipeline);