Skip to content

Streaming Driver Information

Types of Drivers

The Teledyne Spinnaker SDK offers three types of stream modes when acquiring images from a GigE camera depending on the platform and available hardware.

By default:

  • Windows: Spinnaker streams with the Teledyne GigE Vision Driver stream mode
  • Linux and macOS: Spinnaker streams with the Socket stream mode

Alternatively, the Light Weight Filter Driver can be selected on Windows for features such as multistream.

Stream Mode Platform
Teledyne GigE Vision Driver Windows
Light Weight Filter Driver (LWF) Windows
Socket Linux / macOS

Teledyne GigE Vision Stream Mode

The Teledyne GigE Vision Filter Driver checks all incoming packets from the network interface card to determine if they contain image data. If so, the packet is forwarded to the GigE Vision driver; otherwise it is passed through to the host.

Note

Teledyne GigE Vision stream mode is only supported starting with Spinnaker SDK 4.0. Users can stream with either the LWF or Teledyne GigE Vision stream mode on Windows, but we recommend the Teledyne GigE Vision Driver for most cases.

Light Weight Filter Driver Stream Mode

In this stream mode, images are filtered and processed through the light weight filter driver. On Windows, this mode utilizes the NDIS kernel driver architecture to accelerate performance with a single copy from the network stack to the user memory buffer.

Socket Stream Mode

For macOS and Linux users, the socket stream mode is available where images are received and processed through native operating system specific network sockets.

Setting Up Teledyne GigE Vision Stream Mode

There is no specific setup required. Spinnaker defaults to using the Teledyne GigE Vision driver. A GenICam GenTL Transport Layer DataStream node is available for GigE data streams to switch between stream modes manually.

Switching Stream Modes

CEnumerationPtr streamMode = camera->GetTLStreamNodeMap().GetNode("StreamMode");

// Select LWF Stream Mode
streamMode->SetIntValue(streamMode->GetEntryByName("LWF")->GetValue());

// Select Teledyne GigE Vision Stream Mode
streamMode->SetIntValue(streamMode->GetEntryByName("TeledyneGigEVision")->GetValue());

// Select Socket Stream Mode
streamMode->SetIntValue(streamMode->GetEntryByName("Socket")->GetValue());
// Select LWF Stream Mode
camera->TLStream.StreamMode.SetValue(StreamMode_LWF);

// Select Teledyne GigE Vision Stream Mode
camera->TLStream.StreamMode.SetValue(StreamMode_TeledyneGigEVision);

// Select Socket Stream Mode
camera->TLStream.StreamMode.SetValue(StreamMode_Socket);

In SpinView, navigate to the features tab, expand "Stream Parameters" and "Stream Information", then click on the drop-down menu for "StreamMode" to select the available modes.

Additional Documentation