How to provide data to RTSPClient wihout latency? [appsrc, buffering]

Andrey Sotnikov usaonmonday at gmail.com
Sat Aug 26 12:45:17 UTC 2023


Hi Michael,

AppSrc ignores max-buffers and max-time, it just issues a warning and 
continues buffering. Maybe it is intentional, or perhaps it is because 
gst_base_src_loop is blocked, waiting for a reply from 
gst_pad_peer_query. Leaky-type leads to a jerky, stuttering video. 
is_live is already set to true.

The scenario of events looks fundamentally wrong. So, I want to 
understand what is going on.

Andrey.

25.08.2023 16:37, Michael Gruner пишет:
> Hi Andrey,
>
> You can use the max-bytes, max-buffers or max-time along with the leaky-type properties in the appsrc to avoid queueing data. For example `appsrc max-buffers=3 leaky-type=downstream` will only keep the latest 3 camera buffers and discard older ones. Also, if your buffers come from a camera set the `is-live=true` property as well. If I recall correctly, that'll let the pipeline know you're pushing data from a live source and will not perform this delay (don't quote me on that :) ). An initial PTS of 1000 hours is expected in video encoders, and is to allow reordering of frames where the first DTS can be lower than the first PTS.
>
> Michael
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20230826/a0e5bb6f/attachment.htm>


More information about the gstreamer-devel mailing list