tree 007137fedfdfb7f51de7150e03d6e3a759cab2c1
parent b9e73d057572d4ba2584aa65b488e8b31b2e1017
author Edward Hervey <edward@centricular.com> 1510320733 +0100
committer Edward Hervey <bilboed@bilboed.com> 1518261850 +0100

playbin3: Implement gapless playback

Similar in vein to the playbin2 architecture except that uridecodebin3
are prerolled much earlier and all streams of the same type are
fed through a 'concat' element.

This keeps the philosphy of having all elements connected as soon
as possible.

The 'about-to-finish' signal is emitted whenever one of the uridecodebin
is about to finish, allowing the users to set the next uri/suburi.

The notion of a group being active has changed. It now means that the
uridecodebin3 has been activated, but doesn't mean it is the one
currently being outputted by the sinks (i.e. curr_group and next_group).
This is done via detecting GST_MESSAGE_STREAM_START emission by playsink
and figuring out which group is really playing.

When the current group changes, a new thread is started to deactivate
the previous one and optionnaly fire 'about-to-finish'.
