Hi, I'm doing some testing with gst-launch to get a live stream with as low
latency as possible. I have a working H.264 stream with about 100ms latency. I'm trying to send raw video instead of H.264 to get the latency closer to 0. When doing a command like this on the receiver: gst-launch-1.0 -v udpsrc port=5004 retrieve-sender-address=false ! \ application/x-rtp, media=video, encoding-name=RAW, sampling=YCbCr-4:2:2, depth=8, payload=96, colorimetry=BT601-5, payload=96, a-framerate=30 ! \ rtpvrawdepay ! videoconvert ! fbdevsink I get the error message: WARNING: erroneous pipeline: could not link udpsrc0 to rtpvrawdepay0, rtpvrawdepay0 can't handle caps application/x-rtp, media=(string)video, encoding-name=(string)RAW, sampling=(string)YCbCr-4:2:2, depth=(int)8, payload=(int)96, colorimetry=(string)BT601-5, a-framerate=(int)30 Removing "depth" will let me run without this error, but when I start sending the stream from the other end I instead get this error on the receiving end: Output caps are unfixed: application/x-rtp, media=(string)video, encoding-name=(string)RAW, sampling=(string)YCbCr-4:2:2, payload=(int)96, colorimetry=(string)BT601-5, a-framerate=(int)30, clock-rate=(int)90000, depth=(string){ 8, 10, 12, 16 } I'm a bit lost on how to proceed. I've found older examples that have been posted on various forums, but none work for my setup. -- Sent from: http://gstreamer-devel.966125.n4.nabble.com/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Le mardi 27 avril 2021 à 14:24 -0500, Pinadi via gstreamer-devel a écrit :
> Hi, I'm doing some testing with gst-launch to get a live stream with as low > latency as possible. I have a working H.264 stream with about 100ms latency. > I'm trying to send raw video instead of H.264 to get the latency closer to > 0. > > > When doing a command like this on the receiver: > gst-launch-1.0 -v udpsrc port=5004 retrieve-sender-address=false ! \ > application/x-rtp, media=video, encoding-name=RAW, sampling=YCbCr-4:2:2, > depth=8, payload=96, colorimetry=BT601-5, payload=96, a-framerate=30 ! \ > rtpvrawdepay ! videoconvert ! fbdevsink > > I get the error message: > WARNING: erroneous pipeline: could not link udpsrc0 to rtpvrawdepay0, > rtpvrawdepay0 can't handle caps application/x-rtp, media=(string)video, > encoding-name=(string)RAW, sampling=(string)YCbCr-4:2:2, depth=(int)8, > payload=(int)96, colorimetry=(string)BT601-5, a-framerate=(int)30 The support name shortcut colorimetry must be exact to what gstreamer support, BT601-5 is not recognized. Here's the list of defined names: #define GST_VIDEO_COLORIMETRY_BT601 "bt601" #define GST_VIDEO_COLORIMETRY_BT709 "bt709" #define GST_VIDEO_COLORIMETRY_SMPTE240M "smpte240m" #define GST_VIDEO_COLORIMETRY_SRGB "sRGB" #define GST_VIDEO_COLORIMETRY_BT2020 "bt2020" #define GST_VIDEO_COLORIMETRY_BT2020_10 "bt2020-10" #define GST_VIDEO_COLORIMETRY_BT2100_PQ "bt2100-pq" #define GST_VIDEO_COLORIMETRY_BT2100_HLG "bt2100-hlg" > > > Removing "depth" will let me run without this error, but when I start > sending the stream from the other end I instead get this error on the > receiving end: > > Output caps are unfixed: application/x-rtp, media=(string)video, > encoding-name=(string)RAW, sampling=(string)YCbCr-4:2:2, payload=(int)96, > colorimetry=(string)BT601-5, a-framerate=(int)30, clock-rate=(int)90000, > depth=(string){ 8, 10, 12, 16 } > > > I'm a bit lost on how to proceed. I've found older examples that have been > posted on various forums, but none work for my setup. > > > > > -- > Sent from: http://gstreamer-devel.966125.n4.nabble.com/ > _______________________________________________ > gstreamer-devel mailing list > [hidden email] > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Thank you for the suggestion, unfortunately it does not solve the problem. I
noticed that rtprawdepay accepts "depth: { (string)8, (string)10, (string)12, (string)16 }", but in the error message it says "depth=(int)8". Putting single or double quotation marks around the 8 does not change the error message. Is it possible there is some sort of data type mismatch here? -- Sent from: http://gstreamer-devel.966125.n4.nabble.com/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Free forum by Nabble | Edit this page |