AW: PushSrc Framerate Synchronization

Thornton, Keith keith.thornton at zeiss.com
Mon Aug 16 14:15:28 UTC 2021


Hi,
The create / alloc /fill loop is a never ending loop which doesn't possess any timing i.e. it is called as often as it can be. In your code, you pass the alloc function a frame and in the fill function you set a PTS or DTS timestamp. The sink then determines how often it will display the provided frames.
Gruesse

-----Ursprüngliche Nachricht-----
Von: gstreamer-devel <gstreamer-devel-bounces at lists.freedesktop.org> Im Auftrag von Maurice Ackel via gstreamer-devel
Gesendet: Montag, 16. August 2021 13:21
An: gstreamer-devel at lists.freedesktop.org
Cc: Maurice Ackel <maurice.ackel at students.uni-mannheim.de>
Betreff: PushSrc Framerate Synchronization

Hi there,

I’m fairly new to GStreamer and currently trying to build a live PushSrc element. I’m a bit confused about the synchronization of the „fill“ function to the frame rate of the pipeline. I thought that it might be enough to negotiate a certain frame rate and then the PushSrc base class would call the fill function in this interval. However, this seems not to be the case. So what I am wondering now is two things:

1. How does an element determine when to call the fill/alloc/create function?
2. What do I need to do in order to sync my fill function to the pipeline frame rate (i.e. wait for a new frame time to do my capturing, etc.)

Thanks!
Maurice


More information about the gstreamer-devel mailing list