Hi
As mentioned by Tim, I tried the pipeline with the queues and a buffer-size of 10MB. Client: gst-launch-1.0 v4l2src device=/dev/video0 ! "video/x-raw,width=640,height=480,format=GRAY8" ! queue ! videoconvert ! video/x-raw,width=640,height=480,format=I420 ! rtpvrawpay ! queue ! udpsink host=192.168.2.110 port=5004 Server: gst-launch-1.0 udpsrc buffer-size=10000000 port=5004 ! queue ! "application/x-rtp,media=(string)video, clock-rate=(int)90000, encoding-name=(string)RAW,samp ling=(string)YCbCr-4:2:0, depth=(string)8, width=(string)640,height=(string)480, colorimetry=(string)BT601-5, payload=(int)96" ! rtpjitterbuffer ! rtpvrawdepay ! videoconvert ! autovideosink The video freezes after 3 frames. I rare cases, a frame will come through. I'm using a 1 Gigabits connection without a switch in between. What else can I try to get the stream running? blad ----------------------- > Hi, > > > Results: > > 1. When I don't use rtpjitterbuffer, there are no lacerations in the > > video or video tearing, but the sink displays a still frame in 70% of > > the window, and a continuous video stream on 30% of the sink window. > > I thought that was a sink issue and tested it out on a custom > > appsink, which converts it to RGB and renders it onto a Qt display. > > This improved the video a lot. I got a continuous stream with minor > > data loss which is tolerable I think in case of RTP/UDP, but I'm not > > entirely sure if even that should be there. This was the best result > > that I got. > > > > 2. There is a lot of video tearing (maybe because of data loss) using > > rtpjitterbuffer. It plays for some time but eventually stops the > > stream completely. > > > > 3. Then I tried increasing buffer-size of udpsrc to 100, 1000, 50000 > > but I'm getting green lines on most of the video. > > > > Is there anything wrong in the pipelines I'm using? Is there a > > working example of multicast send and receive using rtpvrawpay/depay > > or using sdp file? Appreciate any help on this! > > These buffer-size values are waaaay too small. You want them as big as > possible, try multiple MB. > > > You may also need to do something like this: > > sudo /sbin/sysctl -w net.core.rmem_max=33554432 > sudo /sbin/sysctl -w net.core.wmem_max=33554432 > > to allow larger values for the udp send/receive buffers. > > On the sender side I would also recommend a queue between payloader and > udpsink, and v4l2src and the converters/payloader. > > On the receiver side I would also recommend a queue right after udpsrc > if there's no jitterbuffer (make it unlimited with queue max-size- > bytes=0 max-size-buffers=0 max-size-time=0). > > Cheers > -Tim > > -- > Tim Müller, Centricular Ltd - http://www.centricular.com _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Free forum by Nabble | Edit this page |