Support

Why does the GigE SampleViewer work but the example code, or my code, does not?

SampleViewer calls PvCaptureAdjustPacketSize, which is an essential call for your own code, especially if running the camera on a network which does not support Jumbo Frames (i.e. the max packet size is 1500).

On power up, Prosilica cameras have a packet size of 8228. If your network does not support this packet size, and you haven’t called PvCaptureAdjustPacketSize to detect and set the maximum possible packet size, you will see dropped frames.

Because of the following Vista limitation, we haven't explicitly called PvCaptureAdjustPacketSize in the example codes, choosing to include the call, but comment it out.

VISTA USERS NOTE: This call may cause problems on certain brands of network cards. Internally, PvCaptureAdjustPacketSize determines the maximum packet size by sending out test packets of increasing packet sizes, up to the MaximumPacketSize function parameter (typically set to 8228).

However on some Vista network card drivers, if the driver receives a test packet of size greater than what the network card supports, the driver fails, requiring you to manually disable and re-enable the card in the Start Menu->Settings->Network Connections menu (see image below). The Intel Pro 1000 GT is known to do this, whereas the Intel Pro 1000 PT is fine. Other brands or models may also do this.

 

Therefore, in Vista you should manually set the PacketSize to what the card is capable of, using the following call: pvAttrUint32Set(camHandle, “PacketSize”, value);



 

Categories: GigE Cameras, GE-Series, GC-Series, GB-Series, GS-Series, GX-Series, GigE Software

 

Back to overview