Aggregator (glvideomixer) in force-live mode "runs ahead" of pipeline clock
Michiel Konstapel via gstreamer-devel <[email protected]>
| Newsgroups | gmane.comp.video.gstreamer.devel |
|---|---|
| Message-ID | <[email protected]> |
I am using a glvideomixer to switch between a placeholder image and a live source that's initially not connected. Instead of an imagefreeze on the placeholder image, I am trying to use force-live mode on the mixer, and sending it just a single frame on a repeat-after-eos pad. However, in this initial state (no actual live input connected) the glvideomixer appears to be generating output buffers as far as downstream will take them, without any regard for the pipeline clock. It looks like gst_aggregator_wait_and_check will always see gst_aggregator_check_pads_ready return TRUE because the only sinkpad is EOS, and never gets to any of the consideration of latency and clock time: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/blob/main/subprojects/gstreamer/libs/gst/base/gstaggregator.c#L841 Am I interpreting this correctly, and is it intended behaviour? If so, how do I get *my* intended behaviour, having the mixer behave (from downstream's point of view) like a proper live source whether or not a network input is connected? Kind regards, Michiel