smart-mixer: Use the new 'samples-selected' signal to handle queuing in aggregator...
authorThibault Saunier <tsaunier@igalia.com>
Sun, 12 Jul 2020 17:51:42 +0000 (13:51 -0400)
committerThibault Saunier <tsaunier@igalia.com>
Thu, 13 Aug 2020 22:34:48 +0000 (18:34 -0400)
commit046e609a89f5fec4a97b7782251443418abb3a20
tree6de83dd638180a12e1692a34ac38d3652869e628
parenta3a4fb1a3dfe3fa4405a0bfe50a7b1e0f536feec
smart-mixer: Use the new 'samples-selected' signal to handle queuing in aggregator pads

Since aggregator introduced queueing in its sinkpads the way we set
properties on the pads is incorrect as it doesn't take it into account.
This fixes the issue by using the newly introduced `samples-selected`
signal in aggregator to set the properties right before the compositing
is done.

Also require the compositor we use to be an aggregator.

And add a validate test for it.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/204>
ges/ges-smart-video-mixer.c
ges/ges-timeline.c
ges/ges-utils.c
tests/check/meson.build
tests/check/scenarios/check_keyframes_in_compositor_two_sources.validatetest [new file with mode: 0644]
tests/check/scenarios/check_keyframes_in_compositor_two_sources/flow-expectations/log-videosink-sink-expected [new file with mode: 0644]