Aggregator (glvideomixer) in force-live mode "runs ahead" of pipeline clock
Michiel Konstapel
michiel at aanmelder.nl
Sat Sep 30 14:48:46 UTC 2023
Hi Mathieu,
On Wednesday 27 September 2023 13:30:53 (+02:00), Mathieu Duponchelle
wrote:
> Hey Michiel,
>
> What you describe does not sound like the intended behavior, indeed
> with force-live you should not even need to have any source connected
> to a sink pad of the element to have it act as live source, pushing out
> data at the expected pace.
>
> Can you try this first perhaps? Just use the element as a source with
> no source upstream and see what happens? Perhaps there is some bug with
> having all-eos inputs in force-live mode?
I think that might be it.
> Can you also try with a different subclass (eg compositor) just to rule
> out any unlikely error with glvideomixer ?
Both of these pipelines run at hundreds of fps, rather than the expected
framerate:
gst-launch-1.0 filesrc location=some.png ! pngdec ! glupload !
glvideomixerelement force-live=true sink_0::repeat-on-eos=true !
"video/x-raw(memory:GLMemory), width=1920, height=1080, framerate=25/1" !
glcolorconvert ! gldownload ! fpsdisplaysink sync=false
gst-launch-1.0 filesrc location=some.png ! pngdec ! compositor
force-live=true sink_0::repeat-on-eos=true ! "video/x-raw, width=1920,
height=1080, framerate=25/1" ! videoconvert ! fpsdisplaysink sync=false
whereas a pipeline with no inputs at all does run at the expected/requested
framerate:
gst-launch-1.0 glvideomixerelement force-live=true
sink_0::repeat-on-eos=true ! "video/x-raw(memory:GLMemory), width=1920,
height=1080, framerate=25/1" ! glcolorconvert ! gldownload ! fpsdisplaysink
sync=false
gst-launch-1.0 compositor force-live=true sink_0::repeat-on-eos=true !
"video/x-raw, width=1920, height=1080, framerate=25/1" ! videoconvert !
fpsdisplaysink sync=false
Best,
Michiel
More information about the gstreamer-devel
mailing list