[Bug 768995] New API: StreamGroupDone event

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Mon Jul 25 09:42:36 UTC 2016


https://bugzilla.gnome.org/show_bug.cgi?id=768995

--- Comment #14 from Jan Schmidt <thaytan at noraisin.net> ---

(In reply to Sebastian Dröge (slomo) from comment #7)
> Review of attachment 331823 [details] [review]:
> 
> Generally seems good to me
> 
> ::: plugins/elements/gstinputselector.c
> @@ +485,3 @@
> +       * running time, as this pad just switched to EOS and
> +       * may enable others to progress */
> +      GST_INPUT_SELECTOR_BROADCAST (self);
> 
> This seems like a separate bugfix that can go into another commit? What does
> it fix? :)

Thanks, you're right - separated out.

> @@ +638,3 @@
> +      selpad->group_done = TRUE;
> +      if (sel->sync_streams && active_sinkpad == pad)
> +        GST_INPUT_SELECTOR_BROADCAST (sel);
> 
> It's usually a good idea to take the lock before you change variables and
> broadcast/signal for those variable changes

The whole function takes the lock and releases it outside the switch().



(In reply to Sebastian Dröge (slomo) from comment #9)
> Review of attachment 331822 [details] [review]:
> 
> ::: gst/gstevent.h
> @@ +155,3 @@
>    GST_EVENT_BUFFERSIZE            = GST_EVENT_MAKE_TYPE (90,
> FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)),
>    GST_EVENT_SINK_MESSAGE          = GST_EVENT_MAKE_TYPE (100,
> FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY) | FLAG(STICKY_MULTI)),
> +  GST_EVENT_STREAM_GROUP_DONE     = GST_EVENT_MAKE_TYPE (105,
> FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)),
> 
> As this is sticky, should there be some new code in gstpad.c to remove the
> event again when a new stream-start is received. Maybe with a different
> group id?

Done, in the same places EOS is cleared.

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