Split out documentation into subfolders.
[platform/upstream/gstreamer.git] / examples / tutorials / playback-tutorial-7.c
similarity index 95%
rename from tutorials/playback-tutorial-7.c
rename to examples/tutorials/playback-tutorial-7.c
index 4bdc66b..9c500de 100644 (file)
@@ -1,55 +1,55 @@
-#include <gst/gst.h>\r
-  \r
-int main(int argc, char *argv[]) {\r
-  GstElement *pipeline, *bin, *equalizer, *convert, *sink;\r
-  GstPad *pad, *ghost_pad;\r
-  GstBus *bus;\r
-  GstMessage *msg;\r
-  \r
-  /* Initialize GStreamer */\r
-  gst_init (&argc, &argv);\r
-  \r
-  /* Build the pipeline */\r
-  pipeline = gst_parse_launch ("playbin uri=https://www.freedesktop.org/software/gstreamer-sdk/data/media/sintel_trailer-480p.webm", NULL);\r
-  \r
-  /* Create the elements inside the sink bin */\r
-  equalizer = gst_element_factory_make ("equalizer-3bands", "equalizer");\r
-  convert = gst_element_factory_make ("audioconvert", "convert");\r
-  sink = gst_element_factory_make ("autoaudiosink", "audio_sink");\r
-  if (!equalizer || !convert || !sink) {\r
-    g_printerr ("Not all elements could be created.\n");\r
-    return -1;\r
-  }\r
-  \r
-  /* Create the sink bin, add the elements and link them */\r
-  bin = gst_bin_new ("audio_sink_bin");\r
-  gst_bin_add_many (GST_BIN (bin), equalizer, convert, sink, NULL);\r
-  gst_element_link_many (equalizer, convert, sink, NULL);\r
-  pad = gst_element_get_static_pad (equalizer, "sink");\r
-  ghost_pad = gst_ghost_pad_new ("sink", pad);\r
-  gst_pad_set_active (ghost_pad, TRUE);\r
-  gst_element_add_pad (bin, ghost_pad);\r
-  gst_object_unref (pad);\r
-  \r
-  /* Configure the equalizer */\r
-  g_object_set (G_OBJECT (equalizer), "band1", (gdouble)-24.0, NULL);\r
-  g_object_set (G_OBJECT (equalizer), "band2", (gdouble)-24.0, NULL);\r
-  \r
-  /* Set playbin2's audio sink to be our sink bin */\r
-  g_object_set (GST_OBJECT (pipeline), "audio-sink", bin, NULL);\r
-  \r
-  /* Start playing */\r
-  gst_element_set_state (pipeline, GST_STATE_PLAYING);\r
-  \r
-  /* Wait until error or EOS */\r
-  bus = gst_element_get_bus (pipeline);\r
-  msg = gst_bus_timed_pop_filtered (bus, GST_CLOCK_TIME_NONE, GST_MESSAGE_ERROR | GST_MESSAGE_EOS);\r
-  \r
-  /* Free resources */\r
-  if (msg != NULL)\r
-    gst_message_unref (msg);\r
-  gst_object_unref (bus);\r
-  gst_element_set_state (pipeline, GST_STATE_NULL);\r
-  gst_object_unref (pipeline);\r
-  return 0;\r
-}\r
+#include <gst/gst.h>
+
+int main(int argc, char *argv[]) {
+  GstElement *pipeline, *bin, *equalizer, *convert, *sink;
+  GstPad *pad, *ghost_pad;
+  GstBus *bus;
+  GstMessage *msg;
+
+  /* Initialize GStreamer */
+  gst_init (&argc, &argv);
+
+  /* Build the pipeline */
+  pipeline = gst_parse_launch ("playbin uri=https://www.freedesktop.org/software/gstreamer-sdk/data/media/sintel_trailer-480p.webm", NULL);
+
+  /* Create the elements inside the sink bin */
+  equalizer = gst_element_factory_make ("equalizer-3bands", "equalizer");
+  convert = gst_element_factory_make ("audioconvert", "convert");
+  sink = gst_element_factory_make ("autoaudiosink", "audio_sink");
+  if (!equalizer || !convert || !sink) {
+    g_printerr ("Not all elements could be created.\n");
+    return -1;
+  }
+
+  /* Create the sink bin, add the elements and link them */
+  bin = gst_bin_new ("audio_sink_bin");
+  gst_bin_add_many (GST_BIN (bin), equalizer, convert, sink, NULL);
+  gst_element_link_many (equalizer, convert, sink, NULL);
+  pad = gst_element_get_static_pad (equalizer, "sink");
+  ghost_pad = gst_ghost_pad_new ("sink", pad);
+  gst_pad_set_active (ghost_pad, TRUE);
+  gst_element_add_pad (bin, ghost_pad);
+  gst_object_unref (pad);
+
+  /* Configure the equalizer */
+  g_object_set (G_OBJECT (equalizer), "band1", (gdouble)-24.0, NULL);
+  g_object_set (G_OBJECT (equalizer), "band2", (gdouble)-24.0, NULL);
+
+  /* Set playbin2's audio sink to be our sink bin */
+  g_object_set (GST_OBJECT (pipeline), "audio-sink", bin, NULL);
+
+  /* Start playing */
+  gst_element_set_state (pipeline, GST_STATE_PLAYING);
+
+  /* Wait until error or EOS */
+  bus = gst_element_get_bus (pipeline);
+  msg = gst_bus_timed_pop_filtered (bus, GST_CLOCK_TIME_NONE, GST_MESSAGE_ERROR | GST_MESSAGE_EOS);
+
+  /* Free resources */
+  if (msg != NULL)
+    gst_message_unref (msg);
+  gst_object_unref (bus);
+  gst_element_set_state (pipeline, GST_STATE_NULL);
+  gst_object_unref (pipeline);
+  return 0;
+}