[GStreamer][MSE] Add GstFlowCombiner to handle non-linked inactive branches
authorcalvaris@igalia.com <calvaris@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 13 Jul 2018 10:47:10 +0000 (10:47 +0000)
committercalvaris@igalia.com <calvaris@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 13 Jul 2018 10:47:10 +0000 (10:47 +0000)
commit57058a008077e42b36e39d8d4ee42ea8edd2569a
tree93fa69161a377650d39ea0a2b4b612990c856f16
parent34e1526b29d0c75a06b3e380bb3f7633c662b6f4
[GStreamer][MSE] Add GstFlowCombiner to handle non-linked inactive branches
https://bugs.webkit.org/show_bug.cgi?id=187636

Reviewed by Carlos Garcia Campos.

When we have more than one source buffer, only one will be
rendered and the inactive branch will report linking errors that
we have to deal with.

* platform/graphics/gstreamer/GUniquePtrGStreamer.h: Added GstFlowCombiner.
* platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp:
(webkitMediaSrcChain): Combine the flow in the flow combiner.
(webkit_media_src_init): Initialize the flow combiner.
(webKitMediaSrcLinkStreamToSrcPad): Add the proxypad to the
combiner and set the chain function.
* platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamerPrivate.h:
Declare the flow combiner.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@233797 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore/ChangeLog
Source/WebCore/platform/graphics/gstreamer/GUniquePtrGStreamer.h
Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp
Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamerPrivate.h