Contents
Versions 10.x
Version 10.1.1
Features
Changes
- Configuration file
- Added option
sos_correction to optics section. It enables size of source correction for devices that support it.
- Overhaul of the startup/connection process. It features
- an improved arbitration between detected and configured device connection details.
- an automated reconfiguration of the IP address Ethernet devices send their frame data to.
- an automated adjustment of the video format, if an Ethernet capable device uses a different connection interface as configured.
- a rejection of devices that already have an active connection.
- Radiation parameters
- Added a class
RadiationParameters encapsulating a set of emissivity, transmissivity and ambient temperature values. It also features a flag indicating whether the SDK should estimate the ambient temperature based on internal thermal probe readings. It used throughout the API.
- Ambient temperature estimates are now updated when the readings of the internal probes from which it is derived changes.
- Radiation parameters are only updated every 500 ms regardless whether their values are set by the PIF, the SDK or a SDK client.
- The
FrameMetadata object returned by the IRImagerClient::onThermalFrame() callback now contains the radiation parameters and their respective sources that were used to process the frame.
- The
MeasurementField objects returned by the IRImagerClient::onMeasurementField() provide these details for their respective fields.
- Video formats
- Clipped video formats (PI 640I and PI 1M) are now centered within their larger formats.
- API
- DeviceInfo
- Added a busy status indicating whether the device already has an active connection.
- Added MAC-Address information for devices on a network.
- Added a connection interface address that returns the endpoint for USB connections or the IP address of the SDK client with Ethernet connections.
- Enumeration Manager
- Added methods to add and remove detectors for USB and Ethernet devices.
- The
EnumerationClient now features an additional callback onDeviceDetectionChanged() that is triggered when the details/status of a detected device changes (for example an available device accepted a connection).
- FrameMetadata
- Added getters for the radiation parameters and their respective sources used to process the thermal frame.
- IRImager
- Added setters for the active operation mode.
- Added a setter and getter to en-/disable
- size of source correction.
- high precision temperature measurements.
- temperature range extension.
- Added getters for the device connection details (connection interface, device IP address and reception port).
- Added getters returning the current source of radiation parameters.
- Updated the setter and getter for the radiation parameters of the overall thermal frame.
- IRImagerClient
- Added callback
onVideoFormatChanged() that is triggered upon a new device connection or when the video format changed due to a new active operation mode.
- MeasurementField
- Added getters for the radiation parameters and their respective sources used to process the field.
- Sdk
- Added a method to reconfigure the logger settings.
- Command line tools
- otc_configure_ethernet. Added command line options to find and configure devices on the network.
- otc_find_devices. Added command line options to support Ethernet device detection and updated output.
- Examples
- All examples add a detector for Ethernet devices on the network
192.168.0.0/24 by default.
- All Simple View examples can now cycle through the available operation modes and display hot and cold spots.
- Various internal improvements to the core library and bindings for better performance and thread safety.
Bugs
- Fixed static linking with MSVC on Windows.
- Fixed debug builds with MSVC on Windows.
Version 10.1.0
Features
Changes
- Configuration file
- Added the following new sections to accommodate the new features
- Fail safe
- Measurement fields
- Process Interface
- Incremented file version to 2 but remains compatible with version 1.
- Measurement fields
- All measurement field related headers are now located in
otcsdk/fields folder.
- Measurement fields are now created with the help of
MeasurementFieldConfig objects.
- Measurement fields can now be assigned a
mode that defines what data point is returned by the MeasurementField::getDataPoint() method.
- API
- The active operation mode can now be accessed via the
getActiveOperationMode() method of the IRImager.
- The
ThermalFrame and MeasurementField classes now offer a copyTemperaturesTo() method that copies all their thermal data in degree Celsius to a target array.
- Language bindings
- The Python 3 bindings now offers access to the string conversion functions for the C++ enums in the SDK. Since C++ enums are converted to integer constants the names of these functions must be made more specific by adding a prefix. For example, use
deviceTypeToString() for any DeviceType_<Value> constant to get the corresponding string representation.
- Examples
- All simple view examples now feature the ability to display the FPS and shutter flag state as well as the possibility to trigger a manual flag cycle.
- Reduced the overall console output of the examples.
- Windows
- The default installation path changed to
C:\Program Files\Optris\otcsdk. The installer automatically removes the old version and adjust all relevant environment variables and registry entries. An empty folder in the old SDK location may persist.
- Linux
- The OTC SDK Debian packages not longer conflicts with the ones of the IR Direct SDK.
Bugs
- Fixed issues that prevented the SDK from correctly parsing and probing all available download sites for calibration data.
- Fixed an issue that prevented the SDK from performing required automatic skim calibrations.
- Fixed an issue that created pointless dependencies on other language bindings when using CMake to compile C++ SDK applications.
- Fixed a memory access issue that caused the compilation with an active Address Sanitizer to fail.
- Fixed an issue that caused memory access violations in multi-threaded environments with USB cameras while disconnecting.
- Other minor bug fixes and improvements.
Version 10.0.1
Features
- Extended and enhanced the documentation.
- Improved Python 3 bindings downwards compatibility on Windows to Python 3.9 and NumPy 2.0.0.
Bugs
- Fixed an issue that caused the installation of the Debian packages to fail on headless systems.
- The method
EnumerationManger::getDetectedDevices() will no longer block indefinitely, if its argument is set to 0.
- The Simple View terminal windows will no longer close immediately upon an error.
Version 10.0.0
Redesigned the SDK based on the feature set of the IR Direct SDK version 8.9.0 with the following additional features
- Updated modern C++ API
- Multi camera support
- Xi1M support
- Full object oriented C# and Python 3 bindings
- Normalization support
- Command line tool for adjusting the device Ethernet settings
- Updated XML configuration file
- Automated calibration file download and XML configuration files generation
- Improved logging output