title: Gstreamer basic pipeline running but not displaying on windows 7 virtualbox
body: <p>I am currently working with Gstreamer on Windows 7 (x86_64) as a VM (Virtualbox) and I wanted to run a basic pipeline:</p>
  
  <pre><code>gst-launch-1.0 -v videotestsrc pattern=snow ! autovideosync
  </code></pre>
  
  <p>When I run this pipeline I get:</p>
  
  <pre><code>Setting pipeline to PAUSED...
  Pipeline is PREROLLING
  </code></pre>
  
  <p>And then an error occurs:</p>
  
  <pre><code>Pipeline doesn't want to preroll
  </code></pre>
  
  <p>I solved this error by adding async-handling=true at the end of the pipeline but nothing is still displaying...</p>
  
  <p>I tried to run the same pipeline writing C++ code. Here is a simple main you can run. When I run this code, I get no error but nothing is displaying.</p>
  
  <pre><code>#include &lt;gst/gst.h&gt;
  #include &lt;glib.h&gt;
  #include &lt;stdio.h&gt;
  
  int main(int argc, char* argv[]) {
  GMainLoop *loop;
  GstElement *pipeline, *source, *sink;
  
  g_print("Starting...");
  /* Initialisation */
  gst_init(&amp;argc, &amp;argv);
  
  g_print("Loop is created...");
  loop = g_main_loop_new(NULL, FALSE);
  
  /* Create gstreamer elements */
  pipeline = gst_pipeline_new("gst-app-sink");
  source = gst_element_factory_make("videotestsrc", "src");
  sink = gst_element_factory_make("autovideosink", "sink");
  
  if (!pipeline || !source || !sink) {
      g_printerr("One element could not be created. Exiting.\n");
      return -1;
  }
  
  /* Set up the pipeline */
  
  /* we add all elements into the pipeline */
  /* source | sink */
  gst_bin_add_many(GST_BIN(pipeline), source, sink, NULL);
  
  /* we link the elements together */
  /* src -&gt; sink */
  gst_element_link(source, sink);
  
  /* Set the pipeline to "playing" state*/
  gst_element_set_state(pipeline, GST_STATE_PLAYING);
  
  /* Iterate */
  g_print("Running...\n");
  g_main_loop_run(loop);
  
  /* Out of the main loop, clean up nicely */
  g_print("Returned, stopping playback\n");
  gst_element_set_state(pipeline, GST_STATE_NULL);
  
  g_print("Deleting pipeline\n");
  gst_object_unref(GST_OBJECT(pipeline));
  g_main_loop_unref(loop);
  
  return 0;
  </code></pre>
  
  <p>}</p>
  
  <p>I really don't know where it could come from. Any ideas?</p>