Hi All,
I am building an application that receives a udp stream with RTP data payload. I am on a private network with just the EVM dm648 and my workstation. I am using NDK ndk_2_20_06_35 with the NIMU compliant hal libraries released with NDK2.00.The UDP packets are streamed from my workstation via VLC media player. I am streaming a 10mbps clip 720x480 MPEG2 clip.
The issue I am facing is that when the UDP packets received in my application are parsed for the RTP payload sequence numbers, a packet drop is reported(some packet sequence number missing). This meant that some packets are dropped (50 packets of every 40000 received packets). Wireshark does not report any loss of packets on the network. To debug the issue further i did the following
- Increased UDP receive socket buffer to a comfortable large size(512k).
- Dumped the UDP statistics available in the NDK (udps). The statistics are as below
- RcvTotal = 0000034507
RcvShort = 0000000000
RcvBadLen = 0000000000
RcvBadSum = 0000000000
RcvFull = 0000000000
RcvNoPort = 0000000741
RcvNoPortB = 0000000000
SndTotal = 0000000000
SndNoPacket = 0000000000. As RcvFull is set to zero I am assuming that the UDP recv buffer size if not an issue. - the variable 'memory_squeeze_error' present in the ethernet hal library Ethdriver.c is not incremented, which led me to believe that the PBM is also not an issue.
- The finally the CPSW 3G register "RXSOFOVERRUNS" indicating start of frame overruns was read and the value turned out to be 207. (this value kept varying based on the bit-rate of the clip being streamed).
To debug this further started using the benchmark udp testee application (ndk_2_0_0\packages\ti\ndk\benchmarks\copyUDP\testee\dm648) and added the print of the "RXSOFOVERRUNS" register at the end of the application. The here also is set as a non-zero value.
The question I have is
- How can i avoid the RXSOFOVERRUNS errors ? (Please note I only receive in my app i do not transmit data over a socket).
- Is one 10mbps stream too much to handle for the CPSW 3g ? I am writing the application to receive 3 10mbps streams.
Regards
Krishna