IDS Peak comfortSDK, genericSDK, IPL, and AFL developer manuals are external documents. Please contact us if you need them.
Limits the maximum bandwidth of data sent from the camera.
Name |
DeviceLinkThroughputLimit |
Category |
|
Interface |
Integer |
Access |
Read/Write |
Unit |
Bps |
Visibility |
Expert |
Values |
≥ 0 |
Standard |
SFNC |
Availability uEye+ |
|
Availability uEye |
- |
The access changes to read-only during an acquisition. |
GigE Vision cameras
For GigE Vision cameras a corresponding delay between the stream channel packets is calculated, which is then used as the GevSCPD value.
Using DeviceLinkThroughputLimit is the recommended way to control your bandwidth. The unit in bytes per second allows a quite precise and intuitive control of the data throughput. By entering a throughput limit, the camera firmware calculates the required packet delays GevSCPD and the maximum possible frame rate (DeviceLinkAcquisitionFrameRateLimit), which can be reached with the current throughput limit. In addition, the calculated throughput (DeviceLinkCalculatedThroughput) provides information about the theoretic bandwidth of the device, which would be used without the restriction.
uEye+ XC USB 3, uEye+ XCP USB 3, uEye+ XLE USB 3, and uEye+ XLS USB 3
Using DeviceLinkThroughputLimit is the recommended way to control your bandwidth. The unit in bytes per second allows a quite precise and intuitive control of the data throughput. USB 2 "Hi-Speed" connections can become possible by decreasing DeviceLinkThroughputLimit to a small enough value. However, the stability of the transfer is strongly dependent on the system and the system load.
Keep in mind: The bandwidth defined in the DeviceLinkThroughputLimit is achieved by inserting pauses after each image line. Depending on the image width, this can slow down the readout time of the sensor, which in turn increases the rolling shutter effect on rolling shutter sensors.
USB 3 uEye CP Rev. 2.2 , USB 3 uEye ACP Rev. 1.2, and uEye SE USB 3.1 Rev. 1.2
From firmware version 3.30 on, these cameras support DeviceLinkThroughputLimit so that you can use bandwidth management. This is interesting for multi-camera systems if cameras with and without image memory, e.g. USB 3 uEye CP Rev. 2.2 and uEye XLS USB 3 Rev. 1.2, are used in the same application.
Code example
C++
// Determine the current DeviceLinkThroughputLimit
int64_t value = nodeMapRemoteDevice->FindNode<peak::core::nodes::IntegerNode>("DeviceLinkThroughputLimit")->Value();
// Set DeviceLinkThroughputLimit to 124000000 Bps
nodeMapRemoteDevice->FindNode<peak::core::nodes::IntegerNode>("DeviceLinkThroughputLimit")->SetValue(124000000);
C#
// Determine the current DeviceLinkThroughputLimit
long value = nodeMapRemoteDevice.FindNode<peak.core.nodes.IntegerNode>("DeviceLinkThroughputLimit").Value();
// Set DeviceLinkThroughputLimit to 124000000 Bps
nodeMapRemoteDevice.FindNode<peak.core.nodes.IntegerNode>("DeviceLinkThroughputLimit").SetValue(124000000);
Python
# Determine the current DeviceLinkThroughputLimit (int)
value = nodeMapRemoteDevice.FindNode("DeviceLinkThroughputLimit").Value()
# Set DeviceLinkThroughputLimit to 124000000 Bps (int)
nodeMapRemoteDevice.FindNode("DeviceLinkThroughputLimit").SetValue(124000000)