Notation, Libraries and Other Useful Info


API Function Notation


Definitions, Types and Structures


Camera Sequence


Controlling a Pixelink camera with the Pixelink API, from connection of the camera until disconnection, follows this basic strategy:


  1. Select and initialize a camera

  2. Determine and set camera features

  3. Retrieve image data for processing as required

  4. Uninitialize the camera


Note: A camera cannot be controlled by more than one application at once. See the Pixelink Camera Specifications for limitations on the number of cameras that can be connected or operated at a time.


Selecting and Initializing the Camera


The API functions allow an application to control multiple cameras simultaneously. 




  • Use PxLInitialize to initialize and access a specific camera, identified by its serial number.  The PxLInitialize function returns a “handle” for the camera, which is used to identify it in other function calls.  Repeat for the desired number of cameras.


Determining, Setting, and Getting Camera Features 


Each camera supports a subset of the list of available camera features.  The specific features supported by the camera are encoded in the camera hardware and listed in the Programmable Features section of this Knowledge Base.


The PxLGetCameraFeatures function allows the application to enumerate the list of features applicable to the camera and the range of values appropriate for each feature.


Camera features and their properties are passed as parameters in two generic functions, PxLSetFeature and PxLGetFeature.  These functions access the camera to set and get the camera feature properties.


  • Use the PxLGetCameraFeatures function to enumerate the features of a specified camera.  PxLGetCameraFeatures also returns the ranges of these features.



The following features can only be set if the stream state is turned off (STOP_STREAM) or paused (PAUSED_STREAM).  See PxLSetStreamState.









Applying and Managing Sets of Camera Feature Properties


Feature properties stored in non-volatile memory


Sets of camera feature properties can be stored in and loaded from the camera’s non-volatile memory using PxLSaveSettings and PxLLoadSettings.


Sets of feature properties returned during image acquisition


In addition to the image data, Pixelink API’s the image acquisition process returns the set of camera feature properties applied to each frame and stores them in a buffer or in the Pixelink data stream file.  This set of properties, called a descriptor, can be passed from function to function for informative purposes.


Applying sets of feature properties automatically on a frame-by-frame basis


Using advanced features in the API, user-defined descriptors can be created and loaded into the camera.  Multiple descriptors can be defined and applied automatically on a frame-by-frame basis.


Uninitializing the Camera


Call PxLUninitialize to uninitialize the camera.


While a camera is uninitialized, it is in a standby state.  It draws power, but it does not collect image data or act on function calls except for PxLGetNumberCameras, PxLGetNumberCamerasEX and PxLInitialize.