amazon-kinesis-video-streams-producer-sdk-cpp: Stuck with RTSP Audio + Video
Hello!
Below is my gts command:
gst-launch-1.0 rtspsrc name=src location="rtsp://192.168.14.5:5554/playlist.m3u" short-header=true do-timestamp=true ! rtph264depay ! h264parse ! kvssink name=sink stream-name="name" access-key="key" secret-key="secret" aws-region="sa-east-1" src. ! rtpmpadepay ! mpg123audiodec ! audioresample ! audioconvert ! voaacenc ! aacparse ! queue ! sink.
however, i’m getting this error:
...Setting pipeline to PLAYING ... New clock: GstSystemClock Progress: (request) Sending PLAY request Progress: (request) Sending PLAY request Progress: (request) Sent PLAY request WARNING: from element /GstPipeline:pipeline0/GstRTSPSrc:src/GstUDPSink:udpsink3: Error sending UDP packets Additional debug info: gstmultiudpsink.c(726): gst_multiudpsink_send_messages (): /GstPipeline:pipeline0/GstRTSPSrc:src/GstUDPSink:udpsink3: client 192.168.15.3:0, reason: Error sending message: Invalid argument INFO - kinesisVideoStreamFormatChanged(): Stream format changed. 2021-11-22 18:26:31 [140587632580352] WARNING: from element /GstPipeline:pipeline0/GstRTSPSrc:src: Delayed linking failed. Additional debug info: ./grammar.y(506): gst_parse_no_more_pads (): /GstPipeline:pipeline0/GstRTSPSrc:src: failed delayed linking some pad of GstRTSPSrc named src to some pad of GstRtpPcmaDepay named rtppcmadepay0 WARNING: from element /GstPipeline:pipeline0/GstRTSPSrc:src/GstUDPSink:udpsink1: Error sending UDP packets Additional debug info: gstmultiudpsink.c(726): gst_multiudpsink_send_messages (): /GstPipeline:pipeline0/GstRTSPSrc:src/GstUDPSink:udpsink1: client 192.168.14.5:0, reason: Error sending message: Invalid argument
And I’ve got stuck in this part… Anyone could help me?
Thanks!!
About this issue
- Original URL
- State: closed
- Created 3 years ago
- Comments: 19 (10 by maintainers)
Yes we’re back to the original problem you have to figure out your video source and why it’s not producing frames with the proper pts values and why they are all over the place and not consistent. If it’s 24fps your frames should be ~approx 42ms apart. Here it looks like you’re feeding from some publicly available test video source, what is your actual production use case where will the video come from, if the video source there doesn’t have this issue then we might be wasting time debugging why this public source doesn’t have correct pts/dts values.
One way to correct it is to have an
appsinkelement then in your code you implement a callback (you will not be able to do this with gst-launch you have to write some code to do it) which modifies the pts values and then anappsrcto pick up the changed timestamp in the buffer, the callback would be trivial all it does is set a correct pts. That’s ok if you want to test but really your source needs to produce the correct pts value. You can probably use ffmpeg to rewrite those values as well.The error you’re seeing
0x30000005meansSTATUS_CONTENT_VIEW_INVALID_TIMESTAMPand looking at your DTS and PTS values they are not in the correct scale, please correct your timestamps that should resolve this issue.