Hi,
I am trying to overlay a buffer of PNG images in real-time to a h264 encoded video stream. I am testing with the following pipeline:
gst-launch-1.0 -v videotestsrc ! video/x-raw, width=800, height=480, framerate=30/1 ! \ ducatih264enc ! decodebin ! \ video/x-raw, format=NV12 ! vpe ! video/x-raw, format=RGB ! \ videomixer name=mix sink_0::alpha=1 sink_1::alpha=0.7 ! \ waylandsink sync=true \ multifilesrc location="img.%04d.png" index=0 stop-index=1 loop=true caps="image/png,framerate=\(fraction\)30/1" ! pngdec ! videorate ! mix.
When waylandsink sync=true, the video stream framerate on the EVM is very low and the message appears:
There may be a timestamping problem, or this computer is too slow.
When waylandsink sync=false, the video stream framerate is still very low, but it seems to capture every frame and remove the message above, but display it with extremely high latency.
I was not able to successfully change decodebin to use ducatih264dec, not sure why. The CPU usage between the two cores is about 50/50, so I think the issue may be with timestamping. Am I missing some caps, or what can I add to resolve the timestamping issue?
Thanks,
Vishal