GenTL Software packages for Critical Link GenICam based cameras¶
Critical Link provides the GenTLViewer application (a GenTL consumer) and associated GenTL producer (a camera interface DLL) to allow users to interact with Critical Link cameras. GenTL refers to the Transport Layer portion of the emva GenICam standard. The software can be used to explore features of the camera, test and debug custom setups, or even as the main user interface for camera based systems. The viewer application makes extensive use of plugins to allow customized user interfaces based on the camera or environment the application is working with.
GenTL Consumer / Viewer Application¶
The major features of the viewing application are:
- Supports loading arbitrary GenTL CTI/DLL files from different manufacturers
- Live video viewing at up to 200 megapixels/second
- Recording video frames to disk
- Scriptable commands to control the application and attached camera
- Plotting of camera and/or video attributes in real time
- Debayering Support for Color Display
- Plugin Framework included for custom control panels for different cameras / sensors
GenTL Producer¶
The current software package from Critical Link provides a GenTL producer DLL with the features listed below. It is possible to use other application software with Critical Link's GenTL producer instead of the Viewer application. As an example, the Using Python With Critical Link GenTL Producer page outlines using python to capture images with the GenTL producer DLL.
- Based on version 1.5 of the standard.
- Supports the AIA U3V transport protocol
- Supports Critical Link VID coded USB cameras
- Contact Critical Link to support additional camera manufacturers
- Initial Support for the AIA GigE transport protocol
- Application space ethernet packet management
- Includes both GVSP and GVCP capability
- Basic retransmit requests supported
Running the GenTL producer in simulated mode
Availability¶
The GenTL Viewer software package is available for download from https://support.criticallink.com/files/GenTLViewer/ along with the User Manual.
Installation¶
Installing the GenTL Viewer application is very straight forward. The application is supported on Windows 10-64 bit operating systems.
Download the installer from the above link. The latest version is always available as https://support.criticallink.com/files/GenTLViewer/GenTLViewer_latest_setup.exe
The installer actually installs a number of software packages required for operation.
- The application itself
- The GenTL DLL - required to access Critical Link Cameras
- The libusb libraries - used to provide the GenTL DLL access to USB devices
- The EMVA GenICam libraries (the industry standard GenAPI implementation)
- Microsoft Visual C++ runtime libraries
- The installer itself (for updates, repair, or removal of the software)
The GenTLViewer software package does include an auto-update feature, which will check for new versions of the software and offer to download and install it. If desired, this feature can be disabled in the settings dialog.
Your settings and any recorded data will not be affected by an upgrade operation.
Note: For older versions of the tool (prior to version 1.3) you may have to manually uninstall the existing installation prior to installing the update. To do so, run the maintenancetool application and select ‘Remove all components’ and follow the prompts. The maintenancetool application is installed along side the GenTLViewer installation, by default it is located at 'C:\Program Files\Critical Link LLC\Gentle Viewer\maintenancetool.exe’. Once the old version is uninstalled, you can run the installer for the new version.
Not Implemented¶
Certain functions aren't implemented as of 06/16/2021
These functions will return GC_ERR_NOT_IMPLEMENTED.
/* GenTL v1.3 */ GC_API DSGetBufferChunkData(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, SINGLE_CHUNK_DATA *pChunkData, size_t *piNumChunks) /* GenTL v1.5 */ GC_API DSGetNumBufferParts(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, uint32_t *piNumParts) GC_API DSGetBufferPartInfo(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, uint32_t iPartIndex, BUFFER_PART_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
Go to top