Ensuring consistent framerate with videorate

Nimi Wariboko Jr. nimiwaribokoj at gmail.com
Tue Jun 7 23:47:22 UTC 2022


So I've done some more digging and it turns out this problematic source
sets ends up with a cap of `framerate=0/1` before videorate, then after
videorate the framerate is also 0/1. (While other sources will have
framerate=25/1, then framerate=15/1). This still doesn't explain why
videorate doesn't respect my `max-rate` setting.

I trying to add a capsfilter to my pipeline with framerate=15/1, but that
seems to blow up with not-negotiated at the appsrc counterintuitively.

On Tue, Jun 7, 2022 at 2:12 PM Nimi Wariboko Jr. <nimiwaribokoj at gmail.com>
wrote:

> Hi,
>
> I'm developing an application with gstreamer 1.16.2 (Ubuntu 20 LTS) and I
> have a pipeline the starts with NAL units fed into an AppSrc, then to
> h264parse, then nvv4l2decoder, and then videorate to a final AppSink with
> `sync=false`. On the video rate element I've set:
>
>      videorate.set_property("drop-only", true);
>      videorate.set_property("max-rate", 15);
>      videorate.set_property("skip-to-first", true);
>      videorate.set_property("average-period", 3 * 1_000_000_000);
>
> And what I expect to see is a consistent rate of frames at 15fps. In my
> test bed, for streams that are 25fps I get 15fps as expected. However I
> have one camera that is 20fps and for some reason:
>
> 1. I am seeing an FPS that varies from 18-19fps.
> 2. There is considerable lag in the stream from real time. After a couple
> hours the videorate stream is behind the original stream.
>
> The properties in the documentation aren't clear how these pieces work and
> most examples online exclusively use the capsfilter. Any reason why I could
> be seeing this behavior?
>
> Thanks
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20220607/d73f761a/attachment.htm>


More information about the gstreamer-devel mailing list