The rich feature set of PixeLINK cameras is enabled by software. There are many features and many ways to control them. This section provides information for camera owners and programmers who want to understand the controls of their camera or who want to develop imaging applications. The section is broken down as follows:
- A Camera-Feature Cross Reference that shows the features supported on every camera model.
- A list of the features with basic information on the controlling parameters
- An IIDC Overview for those brave souls who are writing IIDC based applications for FireWire cameras.
Controlling a PixeLINK camera can be performed in a number of ways such as:
- Using PixeLINK supplied drivers and software such as PixeLINK Capture OEM or PixeLINK Capture SE.
- Using PixeLINK supplied drivers and software developed using the PixeLINK Application Programming Interface (API).
- Using third-party supplied drivers and software developed using the associated API.
In general, the driver and the API must be compatible, which typically means from the same vendor. For example, PixeLINK cameras can be controlled in the LabVIEW environment using PixeLINK supplied drivers and a set of LabVIEW VI wrappers developed around the PixeLINK API. Alternatively, it is possible to control FireWire cameras using the National Instruments IMAQ for IEEE1394 IIDC driver and the LabVIEW IMAQ image library.
It is also common to use the PixeLINK driver and API in diverse applications by developing a dll wrapper around the PixeLINK API that is compatible with the target programming environment.
Note that the PixeLINK API is part of our Software Development Kit (SDK) and is sold separately. You will need to purchase the SDK to develop software with the API and to receive advanced support.
Regardless of the software method used, the feature definitions are common and have similar properties.
At its simplest, each feature has one or more parameters which determine the settings of the feature. Each parameter has a type (integer, float, string etc...) and an associated unit (degrees, pixels, etc...) and a list of restrictions, if any. The parameters are defined as follows:
- a name
- a unit of measure
- a type (relative or absolute)
- a minimum value;
- a maximum value;
- a default; and
- a step size.
The features also have feature flags which provide information and determine how the feature is controlled. The feature flags define the following behaviours:
- Presence - whether the feature is supported by that camera.
- Read Only - whether the feature is controllable or for information purposes only.
- Auto – whether the feature can be controlled automatically by the camera. eg. Auto-exposure can maintain the correct exposure during changing illumination;
- Manual – whether the feature can be controlled manually by a command sent to the camera. eg. the exposure is set to 10 ms;
- One-time Auto – whether the feature can be controlled automatically for a short period and then returned to manual mode. eg. the exposure is set automatically for the current illumination settings and then fixed at that value;
- Off – whether the feature can be disabled;
- Change in Descriptors (CiD) – whether the feature settings can change between frames with descriptors;
Features that are not covered in the IIDC specification can be controlled via Advanced Control and Status Registers.