streamsynchronizer: Handle stream switching
authorEdward Hervey <edward.hervey@collabora.co.uk>
Tue, 14 Aug 2012 16:53:52 +0000 (18:53 +0200)
committerEdward Hervey <edward.hervey@collabora.co.uk>
Tue, 14 Aug 2012 16:56:30 +0000 (18:56 +0200)
commitd86f6132ed606ad7e1f4d18221c0bb9b34472cca
tree42a781f236286d0c4f50d7ad32f1dc92df84625f
parent784ca61cede6b6f85be1c98ebe5b577d2f0155ba
streamsynchronizer: Handle stream switching

* Update outgoing segment.base with accumulated time, ensuring all
  streams are synchronized.
* Only consider streams as "new" is they have a STREAM_START event
  with a different seqnum.
* Use GstStream segment.base instead of separate variable to store
  the past running time.
* Disable passthrough
* Switch to glib 2.32 GMutex/GCond
* Avoid getting pad parent the expensive way
* Minor other fixes
gst/playback/gststreamsynchronizer.c
gst/playback/gststreamsynchronizer.h