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

Dennis Tunaev via gstreamer-devel <[email protected]>
Newsgroups gmane.comp.video.gstreamer.devel
Message-ID <CAK+C3T1ABPTDi-6mDALiGSEJoB6nGi+PQkKiGTEq9vqSWHYwZg@mail.gmail.com>
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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.