I'm trying to use the Pi to grab a unicast UDP stream (video) on one NIC, and send it out as a uni- or multicast on a different NIC. I have two working NICs and by using socat I can get data to flow through the Pi between the two machines.

My problem is that the Pi is dropping a lot of the UDP packets, so the resulting stream isn't all that to look at. VLC is able to show a picture, but it's very obvious that the packet-loss is quite high.

The data-rate for the video stream will be between 3500kb/s and 8000kb/s with an average around 6500kb/s. I have a feeling that this can be a problem since both NICs will be on the same USB controller, but I'm not sure that's my only problem.

cat /proc/net/udp

show that there is a lot of dropped packets. Is it possible to tune the Pi to handle a live video stream like this?


I've realised that I might be able to do this using iptables or other mechanisms, but I'm not familiar with any of these.

Edit 2: I had to give up the Pi, two NICs over the Pis USB controller just can't handle the amount of data I'm trying to push. Bought a slightly larger (and much more expensive) unit instead.

  • Possibly the Pi just cant handle that amount of raw data being multicasted? try lowering the bitrates and see if it improoves. Is it just reading a file or transcoding too? Because the NIC is on USB "multicast" might be software emulated causing issues. – Piotr Kula Jan 25 '13 at 8:39
  • I've tried using unicast too, with no luck. Unfortunately I can't change the source (it's from a proprietary system), and no transcoding. All I want to do is accept UDP/IP packets on one NIC in promiscuous mode and resend the exact same packets on the other NIC. – Håkon K. Olafsen Jan 25 '13 at 12:59
  • Yes - Sometimes things so trivial but so difficult to implement. I have learnt over time. If it seems to complicated or difficult to do - It is the wrong way to do it. I know you know what you want to do but possibly it is not the correct way to do it with a Pi because of limitations? like hardware bridges etc. – Piotr Kula Jan 25 '13 at 13:07