Aligning Frame Timing in RTP Video Stream: Need Help with Buffering Configuration

Dennis Tunaev dennis.tunaev at gmail.com
Thu Aug 24 12:48:12 UTC 2023


Hi everyone,
I am receiving an RTP video stream and rendering it. Here's an example of
my pipeline:

        *udpsrc name=udpsrc_element uri=some_ip
caps=application/x-rtp,media=video,encoding-name=H264,payload=33 !
rtpmp2tdepay ! tsdemux ! h264parse ! avdec_h264 ! tee name=t ! videoconvert
! video/x-raw, format=(string)BGR ! queue ! appsink name=appsink_element
sync=false drop=true t. ! videoconvert ! d3d11videosink sync=false*

In my case, I receive 30 frames per second, but the timing between frames
varies from 200ms to 18ms. Specifically, one frame arrives with a delay
(iframe), the next few pframes arrive faster than 33ms, and then everything
levels out to 33ms, resulting in a consistent 30 frames per second. I need
to align this timing through buffering and subsequent retrieval of frames
from the buffer. How can I do this? The queue + videorate and
rtpjitterbuffer did not help me (although I may not have configured them
correctly).

Thank you for your assistance.

Dennis Tunaev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20230824/9d8c7467/attachment.htm>


More information about the gstreamer-devel mailing list