[aravis] Re: Aravissrc: Multi-camera Ethernet Network Performance

  • From: Emmanuel Pacaud <emmanuel.pacaud@xxxxxxxxxxxxx>
  • To: aravis@xxxxxxxxxxxxx
  • Date: Fri, 17 Nov 2017 08:40:54 +0100

Hi Ian,

Le jeu. 16 nov. 2017 à 18:06, Ian McCoy <immccoy78@xxxxxxxxx> a écrit :

I believe there is a significant performance issue with the way aravissrc is handling the processing of Gigabit packets when there is more than one camera streaming images simultaneously. I think this is preventing the cameras/network from operating well below their maximum capability. There have been a few posts in the past that mentioned this and it always dismissed as as bandwidth issue. But, I don't believe that's the case.

As a comparison, the second application uses two Blackfly Gigabit camera from Point Grey. The cameras are configured as follows: 1920x1200, Grey8 and at 5Hz. This application is operating well within the bandwidth requirements for gigabit network/camera system and I'm seeing ~70+ packet resends errors per second spread between the two cameras. Most packet resends are requesting more than one Ethernet packet which I think is causing significant performance issue when how the video is encoded and displayed locally. I used wireshark to get the capture and confirm the packet resends.

In both scenarios, the same processor is being used. Also, both applications the cameras are being simultaneously externally trigger.

That could be an issue, especially if you use a switch. When camera are synchronized, they both emit the video stream at the same time using their full bandwidth. That may lead to switch buffer overflow.

This is explained in a Basler document:

https://www.baslerweb.com/fp-1481127658/media/downloads/documents/application_notes/AW00064902000_Controlling_Packet_Timing_With_Delays.pdf

Aravis allow to set the inter packet delay, so you may want to try to tweak this value.

You can also try to increase the socket buffer size, or to enable packet sockets.

Cheers,

        Emmanuel.


Other related posts: