GNOME Bugzilla – Bug 797128
videoaggregator: Notify drained status of a videoaggregator pad
Last modified: 2018-11-03 14:31:44 UTC
Add GstVideoAggregatorPad::drained property and GstVideoAggregator::pad-drained signal to help monitoring composing status. Some complex use cases (such as dynamic add/remove composing images), application might want to know when a stream is completely consumed. The issue is that EOS event cannot respect the consumed status of a stream, because a buffer followed by the EOS might have long duration and therefore the buffer will be alive until running time of the other stream is reached to the buffer's running time.
Created attachment 373612 [details] [review] videoaggregator: Notify drained status of a videoaggregator pad
Created attachment 373613 [details] [review] tests: compositor: Add test drained property and pad-drained signal
This has to be added to the base class aggregator, or not? It also has a queue of buffers that is in addition to the one buffer in videoaggregator.
(In reply to Sebastian Dröge (slomo) from comment #3) > This has to be added to the base class aggregator, or not? It also has a > queue of buffers that is in addition to the one buffer in videoaggregator. Probably "drained" information could be useful for every subclass of aggregator, and therefore adding new property/signal to aggregator seems to be more reasonable. But we need vfunc for checking "drained (i.e., EOSed and also empty queue)" since most subclass has their own queue in addition to queue of baseclass... I'll take a look at more
Created attachment 373634 [details] [review] aggregator: Add signal pad-drained to notify actual drained status of pad
Created attachment 373635 [details] [review] audioaggregator: Add has_internal_buffer vfunc
Created attachment 373636 [details] [review] tests: audiomixer: Add test pad-drained signal
Created attachment 373637 [details] [review] videoaggregator: Add has_internal_buffer vfunc
Created attachment 373638 [details] [review] tests: compositor: Add test pad-drained signal
"pad-drained" signal seems to be enough, so I removed "drained" read only property from last patch.
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/786.