Broadcasting TS File Issue: "Buffers without PTS" Error in GStreamer

Hi everyone,

I’m facing an issue when trying to broadcast TS files that I created using GStreamer. Below are the details:

  1. File Creation Pipeline:

gst-launch-1.0 udpsrc address=239.202.122.214 port=6310 do-timestamp=true timeout=60000000000 buffer-size=0 caps="application/x-rtp,media=(string)video,clock-rate=(int)90000,encoding-name=(string)MP2T,payload=(int)103" ! rtpbin name=recv_rtp ! watchdog timeout=300000 ! tee name=raw_stream raw_stream. ! rtpmp2tdepay2 ! tsparse set-timestamps=true ! video/mpegts,packetsize=192 ! queue ! multifilesink post-messages=true next-file=5 max-file-duration=200000000000 location=/tmp/record_repo/stream_%05d.ts
  1. Broadcasting Pipeline:

GST_DEBUG=3 gst-launch-1.0 splitfilesrc location=filename.tts ! tsparse set-timestamps=true ! rtpmp2tpay2 pt=103 ! .send_rtp_sink_0 rtpbin ! udpsink host=239.202.0.4 port=4000
  1. Error:

ERROR rtpbasepay2 net/rtp/src/basepay/imp.rs:1581:gstrsrtp::basepay::imp::RtpBasePay2::handle_buffer:<rtpmp2tpay2-0> Buffers without PTS

Even though the logs show that the PTS (Presentation Time Stamp) is valid, the DTS (Decoding Time Stamp) is invalid.
Some files broadcast successfully without showing errors, while others don’t.
Both successful and unsuccessful files have similar log outputs.

Here are some log entries showing valid PTS and invalid DTS:

Valid Buffer - PTS: 0:00:01.033964719 Invalid Buffer - DTS: 99:99:99.999999999 Valid Buffer - PTS: 0:00:01.067331205 Invalid Buffer - DTS: 99:99:99.999999999 Valid Buffer - PTS: 0:00:01.100695418 Invalid Buffer - DTS: 99:99:99.999999999 Valid Buffer - PTS: 0:00:01.134055273 Invalid Buffer - DTS: 99:99:99.999999999

Does anyone have suggestions on how to resolve the “Buffers without PTS” error, or any insights on why some files broadcast successfully while others do not? Any help would be appreciated!
Thanks in advance!