| Customize Help

Matrox GenTL Consumer driver overview



The Matrox GenTL Consumer driver allows you to use a third-party GenTL library (GenTL Producer) with MIL (GenTL Consumer). The Matrox GenTL Consumer driver (based on the GenICam GenTL standard) provides a software-generic way to communicate with one or more third-party devices through a multitude of transport layer technologies (such as, using an Ethernet connection or USB cables as the physical connection between the camera and the Host).

The Matrox GenTL Consumer driver requires you to first install a third-party, vendor-supplied, standard compliant, GenTL library (GenTL Producer). Once installed, the MILConfig utility lists the available GenTL libraries. Refer to the Matrox GenTL driver release notes for any additions/modifications to this chapter or the MIL Reference.

In the MIL documentation, the Matrox GenTL Consumer driver is a GenTL Consumer, while the third-party, vendor-supplied, standard compliant, GenICam library is a GenTL Producer.

A GenTL Producer is a software driver implementing the GenTL Interface to enable an application or a software library to access and configure hardware in a generic way and to stream image data from the device (such as, a camera). A GenTL Consumer is any software that can use one or multiple GenTL Producers via the defined GenTL Interface. This can be, for example, an application or a software library. (Taken from the "GenICam GenTL SubCommittee GenICam GenTL Standard v 1.5 . Spain: EMVA (European Machine Vision Association), 2015. 161.", 23 July 2015, page 13.).

You can install more than one GenICam GenTL library on your computer. These libraries are indexed and sorted for reference by MIL (the GenTL Consumer). In all cases, the same number and type of libraries should be installed on every computer that will run your MIL application. You can learn the indices of installed GenICam GenTL Producers in the MILConfig utility.

If you are using a GigE Vision or USB3 Vision camera, or a camera connected to a Matrox frame grabber, for maximum performance you should use the MIL native driver (rather than the MIL GenTL Consumer driver). The Matrox GenTL Consumer driver is intended to be used with cameras that use a third-party, proprietary communication protocol, and for which the vendor has a supplied a GenTL library.

The Matrox GenTL Consumer driver uses five distinct sets of GenICam-compliant device description files (XML).

  • GenTL system configuration information. The system refers to the allocated MIL GenTL Consumer driver. There is one GenTL system configuration information file from the GenTL library.

  • GenTL interface configuration information. The interface, in this case, is the type of physical connection between the Host and the camera (such as Camera Link or Ethernet connections). Note that this could include auxiliary I/O signals.

  • GenTL device configuration information. The GenTL device is your digitizer. Typically, there is one GenTL device configuration information file for each digitizer allocated to your MIL system.

  • GenTL remote device configuration information. The GenTL remote device is your camera. Typically, there is one remote device configuration information file for each camera allocated to a specific MIL digitizer. With MIL, this is a one-to-one relationship.

  • GenTL stream configuration information. The GenTL stream contains details about how the data stream generated by your camera is handled by the GenTL producer. Typically, there is one GenTL stream configuration information file per data stream between your remote device and your digitizer.

  • GenTL buffer configuration information (optional). The GenTL buffer configuration details how the MIL GenTL (consumer) driver handles buffers. Typically, there is one GenTL buffer configuration information file per acquisition target (that is, per MIL buffer used by your MIL system).

Each of these sets of configuration information is stored in an XML file that MIL can access. See the Using Matrox GenTL Consumer driver with MIL section later in this chapter for more information.