[Bug 705835] New: Sticky event misordering: 'caps' before 'stream-start'

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Mon Aug 12 05:32:54 PDT 2013


https://bugzilla.gnome.org/show_bug.cgi?id=705835
  GStreamer | gstreamer (core) | 1.0.6

           Summary: Sticky event misordering: 'caps' before 'stream-start'
    Classification: Platform
           Product: GStreamer
           Version: 1.0.6
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gstreamer (core)
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: patricia at axis.com
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


Run the following test in a loop (in gdb):

GST_START_TEST (b)
{
  gboolean have_queue = TRUE;
  GstElement *pipeline, *src, *queue, *sink;

  pipeline = gst_pipeline_new ("pipeline");

  src = gst_check_setup_element ("videotestsrc");
  queue = gst_check_setup_element ("queue");
  sink = gst_check_setup_element ("fakesink");
  gst_bin_add_many (GST_BIN (pipeline), src, queue, sink, NULL);
  g_object_set (src, "num-buffers", 3, NULL);

  if (have_queue) {
    fail_unless (gst_element_link (src, queue));
    fail_unless (gst_element_link (queue, sink));
  } else 
    fail_unless (gst_element_link (src, sink));

  gst_element_set_state (pipeline, GST_STATE_PLAYING);
  sleep (0.1);
  gst_element_set_state (pipeline, GST_STATE_NULL);
  sleep (0.1);

  if (1) {
    gst_element_set_state (pipeline, GST_STATE_PLAYING);
    sleep (0.1);
    gst_element_set_state (pipeline, GST_STATE_NULL);
  }

  gst_object_unref (pipeline);
}

GST_END_TEST;

After a couple of loops the the test results in the following error:
GStreamer-WARNING **: gstpad.c:4506:store_sticky_event:<queue:src> Sticky event
misordering, got 'caps' before 'stream-start'

Debugging further, it seems that the queue is not empty when changing the state
of the pipeline from READY to NULL. Flushing the queue in this state seems to
solve the problem.

Some observations:
1. the problem is not reproducible without the queue element
2. replacing the queue element with the queue2 does not result in
sticky-event-problem

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list