Skip to content

GenTL producer (.cti)

At run time the filter must be pointed at a GenTL producer: the .cti transport layer library installed by the camera vendor (for Allied Vision cameras, C:\Program Files\Allied Vision\Vimba X\cti\VimbaUSBTL.cti). The producer must be 64-bit, like the filter.

There are three ways to select it.

1. The GENICAM_GENTL64_PATH environment variable

This is the standard GenTL mechanism. Set GENICAM_GENTL64_PATH to the folder containing the .cti files: the filter enumerates every producer found there. Most vendor installers set this variable themselves. Note that it also affects any other GenTL consumer on the machine.

2. The Device property page

Pick a specific .cti in the Device property page of the filter (combo box, Browse... and Refresh buttons). The selection is persisted per user, under HKCU\Software\Datastead\DtstdGenicam\GenTLProducerPath, and re-applied automatically the next time the filter is created: the choice is made once.

3. Pre-filling the registry from an installer

For a silent or generic deployment, an installer can write the producer path itself, so no dialog interaction is needed. The filter reads the value from HKCU first, then HKLM (the first non-empty path wins): a per-user setup uses HKCU, a machine-wide installer can use HKLM.

Key Software\Datastead\DtstdGenicam (under HKEY_CURRENT_USER or HKEY_LOCAL_MACHINE)
Value name GenTLProducerPath
Value type REG_SZ
Value data full path of the .cti, e.g. C:\Program Files\Allied Vision\Vimba X\cti\VimbaUSBTL.cti

Example .reg file, machine-wide:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\Software\Datastead\DtstdGenicam]
"GenTLProducerPath"="C:\\Program Files\\Allied Vision\\Vimba X\\cti\\VimbaUSBTL.cti"

Registry redirection

The filter is 64-bit: a 32-bit installer writing to HKLM\Software\... on 64-bit Windows lands under WOW6432Node, where the filter does not look. Write to the native 64-bit view (KEY_WOW64_64KEY, or the 64-bit reg.exe).

Since HKCU takes precedence, a user selecting a producer in the Device page overrides an HKLM default, which is usually the desired behaviour.

From the application

The path can also be set programmatically, without any UI, with IGenicamControl::SetGenTLProducerPath: it accepts a single .cti file, a folder containing .cti files, or a ;-separated list, and persists the choice under HKCU like the Device page. EnumerateGenTLProducers / GetGenTLProducerInfo list the producers visible on the current search path. See Programmatic control.