[Bug 703267] funnel: Needs to be usable in playbin

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Mon Jul 1 14:03:19 PDT 2013


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

--- Comment #8 from Brendan Long <self at brendanlong.com> 2013-07-01 21:03:16 UTC ---
(In reply to comment #7)
The lockup seems to be because of this code in
`gst_stream_synchronizer_sink_event`:

      if (stream) {
        if (stream->wait) {
          GST_DEBUG_OBJECT (pad, "Stream %d is waiting",
stream->stream_number);
          g_cond_wait (&stream->stream_finish_cond, &self->lock);
          stream = gst_pad_get_element_private (pad);
          if (stream)
            stream->wait = FALSE;
        }
      }

If I comment it out, the funnel works. I'm not sure why the stream is waiting
though. It looks like if the stream changes, it waits, but for some reason it
doesn't stop waiting.

If I change a couple relevant log messages to INFO, I get:

0:00:00.174538788  4031 0x7f9a58013990 INFO      streamsynchronizer
gststreamsynchronizer.c:276:gst_stream_synchronizer_sink_event:<streamsynchronizer0:sink_0>
Stream 0 changed
0:00:00.174584992  4031 0x7f9a5802e2d0 INFO      streamsynchronizer
gststreamsynchronizer.c:276:gst_stream_synchronizer_sink_event:<streamsynchronizer0:sink_2>
Stream 2 changed
0:00:00.174619845  4031 0x7f9a600b4140 INFO      streamsynchronizer
gststreamsynchronizer.c:276:gst_stream_synchronizer_sink_event:<streamsynchronizer0:sink_1>
Stream 1 changed
0:00:00.174649543  4031 0x7f9a600b4140 INFO      streamsynchronizer
gststreamsynchronizer.c:291:gst_stream_synchronizer_sink_event:<streamsynchronizer0>
All streams have changed -- unblocking
0:00:00.174710411  4031 0x7f9a5802e2d0 INFO      streamsynchronizer
gststreamsynchronizer.c:276:gst_stream_synchronizer_sink_event:<streamsynchronizer0:sink_2>
Stream 2 changed
0:00:00.174780529  4031 0x7f9a58039140 INFO      streamsynchronizer
gststreamsynchronizer.c:276:gst_stream_synchronizer_sink_event:<streamsynchronizer0:sink_2>
Stream 2 changed
0:00:00.174823157  4031 0x7f9a5802e630 INFO      streamsynchronizer
gststreamsynchronizer.c:276:gst_stream_synchronizer_sink_event:<streamsynchronizer0:sink_2>
Stream 2 changed
0:00:00.175018287  4031 0x7f9a5802e1e0 INFO      streamsynchronizer
gststreamsynchronizer.c:276:gst_stream_synchronizer_sink_event:<streamsynchronizer0:sink_2>
Stream 2 changed
0:00:00.175082229  4031 0x7f9a58039370 INFO      streamsynchronizer
gststreamsynchronizer.c:276:gst_stream_synchronizer_sink_event:<streamsynchronizer0:sink_2>
Stream 2 changed
0:00:00.175137989  4031 0x7f9a5802e0a0 INFO      streamsynchronizer
gststreamsynchronizer.c:276:gst_stream_synchronizer_sink_event:<streamsynchronizer0:sink_2>
Stream 2 changed
0:00:00.175322636  4031 0x7f9a580390a0 INFO      streamsynchronizer
gststreamsynchronizer.c:276:gst_stream_synchronizer_sink_event:<streamsynchronizer0:sink_2>
Stream 2 changed
0:00:00.175366048  4031 0x7f9a58039320 INFO      streamsynchronizer
gststreamsynchronizer.c:276:gst_stream_synchronizer_sink_event:<streamsynchronizer0:sink_2>
Stream 2 changed
0:00:00.206073080  4031 0x7f9a5802e2d0 INFO      streamsynchronizer
gststreamsynchronizer.c:341:gst_stream_synchronizer_sink_event:<streamsynchronizer0:sink_2>
Stream 2 is waiting

-- 
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