GNOME Bugzilla – Bug 679544
[playback] Post a message on stream/track change.
Last modified: 2014-09-01 09:33:19 UTC
+++ This bug was initially created as a clone of Bug #584987 +++ Original report: Media players care about when the user hears the start of the next track change. Currently when using playbin2 for gapless playback there is no way for the application to easily determine when the first sample of the next track is starting to play. It would be nice if playbin2 fired a track-changed message on the bus, or raised a track-changed signal, or both, when the first sample of the next track started playing on the audio hardware. ------------ I am reopening this bug for 1.0. There is a cleaner way to do this now that we have the STREAM_START event that all elements (that drive the stream) should post when a new stream starts. For most elements, this will be the first thing they push after being activated (READY=>PAUSED). It is already done automatically for sources, so push-based scenarios already handle this. The missing parts are: * Add a GST_MESSAGE_STREAM_START which is emitted by sinks when they receive the STREAM_START event * Add code in gstbin so that it accumulates the various GST_MESSAGE_STREAM_START posted by sinks and only posts it up when all sinks posted it * Remove code in gst-plugins-base/gst/playback regarding playbin2-stream-changed (it is now handled automatically). * Port elements that drive the pipeline to post it when first activated * Port elements that can *change* streams to post it when needed The last item is relevant for dvb/mpeg-ts program switching for example. You ideally want to switch programs without resetting the whole pipeline (i.e. doing it in PLAYING). This will allow applications to be informed when the program has *Actually* changed.
Isn't this fixed now ? If not, what bits are missing?
Eh, I'd forgotten this bug :) I'll have to look into it.
What's missing here? The stream-start messages should already do all this?
yah, this is done with. Closing