RTPsource : h264/rtp packets not received (update_receiver_stats: probation)

Marc Leeman marc.leeman at gmail.com
Wed Mar 20 15:21:41 UTC 2019


Typically, RTP data should be send on even ports, while the RTCP
packet is sent to the port + 1 (RFC 3550)

I would also recommend muxing sps/pps in your output (rph264pay
config-interval=1)

If you do not hook up the ports correctly, RTCP will not help (since
RTCP is bidirectional on the same socket, it is not trivial to do
unless you use the 3-port non-standard example in the rtpbin
documentation).

I do not understand you you are getting sender reports from your
gstreamer sender device since you are not sending out RTCP.

You would see more if you dump the network information to pcap and
inspect it with wireshark.

You'll have to change the UDP detected format to RTP to see the RTP
packet information in a clean way.

You can see if the RTP packets are lost on the network or for some
other reason. If you bitstream is only 1 Mbps, GStreamer should be
able to handle it. If it is higher, you need to specify higher kernel
buffers with sysctl

sysctl -w net.core.wmem_max = 4194304
sysctl -w net.core.wmem_default = 4194304
sysctl -w net.core.rmem_max = 4194304
sysctl -w net.core.rmem_default = 4194304


On Wed, 20 Mar 2019 at 11:27, vk_gst <venkateshkuppan26 at gmail.com> wrote:
>
> Hi,
>
> Thanks for the hint.
>
> The bitrate on encoder and 'udpsink' was set to 1000 Kbps. Additionally, I
> tried varying the buffer size of 'udpsrc' to 50K - 100k as per  UDP_src
> <https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-good/html/gst-plugins-good-plugins-udpsrc.html#GstUDPSrc--buffer-size>
> .
>
> With the above changes there was no change in the behavior. I used wireshark
> to analyse the server and client device. Here is the output I receive at the
> server device:
>
> server = 192.168.5.222, client = 192.168.5.221 and I am using port 5001 at
> udpsink for video.
>
>
>    8 1.921299652      0.0.0.0 → 255.255.255.255 UDP 107 4712 → 4711 Len=65
>     9 1.921429997      0.0.0.0 → 255.255.255.255 UDP 99 4712 → 4711 Len=57
>    10 1.942681993 192.168.5.222 → 192.168.5.221 UDP 56 50833 → 5001 Len=14
>    11 2.054841859 192.168.5.222 → 192.168.5.221 UDP 63 50833 → 5001 Len=21
>    12 2.058376191 192.168.5.221 → 192.168.5.222 ICMP 84 Destination
> unreachable (Port unreachable)
>    13 2.169254947 192.168.5.221 → 192.168.5.222 ICMP 91 Destination
> unreachable (Port unreachable)
>    14 2.222870320 192.168.5.222 → 192.168.5.221 UDP 58 50833 → 5001 Len=16
>    15 2.246495208 192.168.5.21 → 192.168.5.255 UDP 774 51437 → 7000 Len=732
>    16 2.349279536 192.168.5.221 → 192.168.5.222 ICMP 86 Destination
> unreachable (Port unreachable)
>    17 2.350906356 192.168.5.222 → 192.168.5.221 UDP 1442 50833 → 5001
> Len=1400
>    18 2.351536082 192.168.5.222 → 192.168.5.221 UDP 1442 50833 → 5001
> Len=1400
>    19 2.352102802 192.168.5.222 → 192.168.5.221 UDP 1442 50833 → 5001
> Len=1400
>    20 2.352645519 192.168.5.222 → 192.168.5.221 UDP 1442 50833 → 5001
> Len=1400
>    21 2.353190237 192.168.5.222 → 192.168.5.221 UDP 1442 50833 → 5001
> Len=1400
>    22 2.353721287 192.168.5.222 → 192.168.5.221 UDP 1442 50833 → 5001
> Len=1400
>    23 2.354265005 192.168.5.222 → 192.168.5.221 UDP 1442 50833 → 5001
> Len=1400
>    24 2.354827391 192.168.5.222 → 192.168.5.221 UDP 1442 50833 → 5001
> Len=1400
>    25 2.355372109 192.168.5.222 → 192.168.5.221 UDP 1442 50833 → 5001
> Len=1400
>    26 2.355926161 192.168.5.222 → 192.168.5.221 UDP 1442 50833 → 5001
> Len=1400
>    27 2.356489547 192.168.5.222 → 192.168.5.221 UDP 1442 50833 → 5001
> Len=1400
>    28 2.357056267 192.168.5.222 → 192.168.5.221 UDP 1442 50833 → 5001
> Len=1400
>    29 2.357675659 192.168.5.222 → 192.168.5.221 UDP 1442 50833 → 5001
> Len=1400
>    30 2.358255047 192.168.5.222 → 192.168.5.221 UDP 1442 50833 → 5001
> Len=1400
>    31 2.358807432 192.168.5.222 → 192.168.5.221 UDP 1442 50833 → 5001
> Len=1400
>    32 2.359473161 192.168.5.222 → 192.168.5.221 UDP 1442 50833 → 5001
> Len=1400
>
>
> After this, there are no video packets sent to port 5001 from the server
> device (192.168.5.222). However the server regularly sends rtcp sender
> report (on port 5002) to the client device. eg:
>
> 836     159.050823685   192.168.5.222   192.168.5.221   UDP     102     40336 → 5002 Len=60
> 866     164.816046582   192.168.5.222   192.168.5.221   UDP     102     40336 → 5002 Len=60
> 882     168.335318185   192.168.5.222   192.168.5.221   UDP     102     40336 → 5002 Len=60
>
> What could be the reason that only sender reports are being sent by the
> server device and no rtp video packets. What I understand is that the error
> 'Port Unreachable' can be due to the client application not able to handle
> the received data.
>
> Can anyone point out where I am going wrong?
>
> Regards.
>
>
>
> --
> Sent from: http://gstreamer-devel.966125.n4.nabble.com/
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


More information about the gstreamer-devel mailing list