timeoverlay stuck
Describe your issue
Hi! I use timeoverlay for debugging purposes and it stucks on one of streams. Source of data is rtsp stream. If I use udp protocol it works, but when transport is tcp it gets stuck. timeoverlay stucks, but video is running and clockoverlay works correctly. Am I doing something wrong? Is it timeoverlay's issue or my pipeline is incorrect? Please help!
Expected Behavior
Time rendered by timeoverlay changing
Observed Behavior
Time rendered by timeoverlay not changing
Setup
- docker, ubuntu 22.04.2
- x86-64 server
- GStreamer Core Library version 1.20.3; Plugin Details: Name pango, Description Pango-based text rendering and overlay, Version 1.20.1
- Pipeline runs as a part of our application thus I am unable to provide commandline. Pipelines are:
- working udp:
rtspsrc do-retransmission=false latency=0 drop-on-latency=true buffer-mode=none name=src location="***" user-id="***" user-pw="***" ! application/x-rtp, media=(string)video ! decodebin ! queue max-size-buffers=1 leaky=downstream ! videoconvert ! timeoverlay time-mode=running-time ypad=0 ! clockoverlay ypad=50 ! videoconvert ! videoconvert ! videoscale ! appsink name=sink sync=true max-buffers=1 drop=true caps="video/x-raw,format=BGR,pixel-aspect-ratio=1/1"
- problematic tcp:
rtspsrc do-retransmission=true latency=0 drop-on-latency=true buffer-mode=none name=src protocols=tcp location="***" user-id="***" user-pw="***" ! rtpjitterbuffer latency=100 mode=0 ! application/x-rtp, media=(string)video ! decodebin ! queue max-size-buffers=1 leaky=downstream ! videoconvert ! timeoverlay time-mode=running-time ypad=0 ! clockoverlay ypad=50 ! videoconvert ! videoconvert ! videoscale ! appsink name=sink sync=true max-buffers=1 drop=true caps="video/x-raw,format=BGR,pixel-aspect-ratio=1/1"
- working udp:
Steps to reproduce the bug
- Run pipeline
- Wait for 7 hours
How reproducible is the bug?
Issue happens after 7 hours of working, happened twice in a row.
Screenshots if relevant
First is rtsp tcp pipeline, second is rtsp udp pipeline, both run simultaneously.