Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                






USER'S MANUAL

PIXCI® miniH2BL
Revision 1.0

11 February 2023

For use with:
PIXCI® miniH2BL R1



Copyright © 2024 EPIX, Inc.

No part of this document may be reproduced, transmitted, photocopied, or translated into another language without the written consent of EPIX, Inc. Information in this document is subject to change without obligation or notice. EPIX, Inc. makes no warranty of any kind with regard to this document, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. EPIX, Inc. assumes no responsibility for any errors that may appear in this document. EPIX, Inc. reserves the right to make changes to the specifications of hardware and software at any time, without obligation or notice.

4MIP, SVIP, XCIP, XCAP, 4MEG VIDEO, 1MEG VIDEO, SILICON VIDEO MUX, QUICK SET VIDEO, 12-7MUX, IMAGE MEMORY EXPANSION, COC40, and COC402 are trademarks of EPIX, Inc.

EPIX, SILICON VIDEO, and PIXCI are registered trademarks of EPIX, Inc.

Other brand, product, and company names are trademarks or registered trademarks of their respective owners.

Printing: 11-Feb-2023

EPIX, Inc.
381 Lexington Drive
Buffalo Grove IL 60089
847.465.1818
847.465.1919 (fax)
epix@epixinc.com
www.epixinc.com

Table of Contents


 

 

 

1. Installation

Thank you for purchasing imaging products from EPIX, Inc. We are available via email or telephone to help with installation or to answer questions about the use of our products.

The PIXCI® miniH2BL frame grabber, for the Mini PCI Express bus, is packed in a static dissipative bag. Prior to opening the bag, place the bag near the computer into which the frame grabber will be installed. Please use a hand or heel strap that is connected to the computer to reduce possible static discharges.

We recommend installing XCAP prior to installing the PIXCI® frame grabber. Please refer to the Software Installation chapter for the XCAP installation directions, then follow the frame grabber installation instructions below. Installing XCAP software, which includes the PIXCI® frame grabber drivers, prior to installing the PIXCI® frame grabber isn't required, but more convenient.

 

1.1. Instructions

  1. Use of a static free area and a wrist strap connected to the computer or to the static free area is suggested during installation. Walking can generate static electricity. Keep your feet stationary while removing the PIXCI® frame grabber from the anti-static bag. Hold the bag and the computer at the same time, or place the bag on the computer chassis and touch the chassis to dissipate the static charge that may have been created while transporting the frame grabber to the computer.
  2. Power down the computer, and remove the power from all equipment to be connected.
  3. Select a vacant Mini PCI Express slot and remove the hold down screw or screws for the slot. Consult the manual for the computer if there is any doubt about which slot is a Mini PCI Express slot.
  4. Remove the PIXCI® frame grabber from the anti-static bag and insert it into the Mini PCI Express slot at approximately a 20 degree angle above the plane of the computer. Do not use excessive force. If the frame grabber is not lined up with the slot correctly, excessive force can cause damage to the slot and the frame grabber.
  5. Use one or two screws that were removed above to secure the PIXCI® frame grabber to the computer.
  6. To mount the PIXCI® miniH2BL, use the four 2mm mounting holes in the corner of the FPGA circuit board. To mount the miniFmdr SDR or MDR connector circuit board, the two jackscrews on the SDR or MDR connector can be removed to secure the connector circuit board to a connector mounting knockout in the computer chassis.
  7. The camera should only be connected to, or disconnected from the PIXCI® frame grabber when the camera and the computer are powered off. When connecting the Camera Link cable between the PIXCI® frame grabber be sure to tighten the thumbscrews on the Camera Link cable.
  8. Power up the camera and computer.
  9. Install (if not done previously) and run the XCAP application software, following the instructions in the Software Installation and the Getting Started with XCAP chapters. In case of problems, refer to the In Case of Trouble chapter.

 

1.2. Computer

The size and the number of images that can be stored in memory on the motherboard is a function of the amount of memory that can be spared by the operating system. The amount of memory requested by XCAP by default depends on the operating system. If more memory is required for image sequences, the ''Driver Assistant'' (via the menubar's PIXCI®, PIXCI® Open/Close) can be used to request additional frame buffer memory. Some operating systems may require up to 2 gigabytes to operate efficiently.

The PIXCI® miniH2BL frame grabber can capture and store full resolution images to computer memory (RAM) on a computer with a Mini PCI Express slot. The PIXCI® miniH2BL frame grabber has been tested at sustained data rates of 204 megabytes per second, and burst rates of 250 megabytes per second for a Mini PCI Express slot. Each Mini PCI Express slot on a computer may exhibit different performance characteristics.

EPIX, Inc. is an Intel approved, value added reseller and can assemble computer based imaging systems including camera(s), RAID video to disk systems, power supplies, monitors, and cables that have been tested to specific sustained data rates prior to shipment.


 

 

 

2. Connectors

The PIXCI® miniH2BL frame grabber has two 26 pin Camera Link SDR or MDR connector circuit boards each connected by a Samtec HLCD cable to the FPGA circuit board. There is a half length mini PCIe circuit board that requires one half length mini PCIe slot. It is connected to the FPGA circuit board by a Samtec DCH ribbon cable. There is a 10 pin trigger I/O connector on the FPGA circuit board. Power to the FPGA circuit board is via a pair of wires that use a Molex connector to plug into power connector P6.

 

2.1. 26 Pin 3M SDR or MDR Connector

The 26 pin SDR or MDR connector is a Camera Link Base configuration data and control connector as described in the Camera Link specification. There is an option to provide a wire for 12 volts and a wire for ground to power a camera that takes power over the Camera Link connector. The 12 volt wire connects to pin 1 and 26. The camera link connector circuit boards are connected to the FPGA circuit board by a Samtec HLCD 40 conductor flat ribbon cable.

Signal Pin
Name Number

Inner Shield 1

Inner Shield 14

CC4- 2

CC4+ 15

CC3+ 3

CC3- 16

CC2- 4

CC2+ 17

CC1+ 5

CC1- 18

SerTFG+ 6

SerTFG- 19

SerTC- 7

SerTC+ 20

X3+ 8

X3- 21

XCLK+ 9

XCLK- 22

X2+ 10

X2- 23

X1+ 11

X1- 24

X0+ 12

X0- 25

Inner Shield 13

Inner Shield 26

 

2.2. 20 Pin Connector P1 Trigger I/O Signal List

The P1 part number is Molex 501190-2017.
Signal IN/ Pin Pin IN/ Signal
Name OUT Number Number OUT Name

Ground 1 2 +3.3 VDC (0.75 Amp max)

TRG I 3 4 O STR or Trig Out

FENIN I 5 6 O FENOUT

IN2 I 7 8 O OUT2

IN1 I 9 10 O OUT1

Ground 11 12 +3.3 VDC (0.75 Amp max)

TRG2 I 3 4 O STR2 or Trig Out2

FENIN2 I 5 6 O FENOUT2

IN22 I 7 8 O OUT12

IN12 I 9 10 O OUT12

P1 is for signals internal to the computer case. The following description is with P6, the power connector, in the lower left corner and the component side up.

P1 is located at the top right of the PIXCI® miniH2BL. Pin 1 is in the bottom left position and pin 2 is in the top left position.


Pin 1
Ground.

Pin 2
+3.3 volts.

Pin 3
TRG, a LVTTL (3.3 volt) level trigger input.

Pin 4
STR, a LVTTL level Strobe Output from the camera control state machine, and delayed by two state machine clocks from the exposure signal.

Pin 5
FENIN, a LVTTL level frame enable input for line scan applications, and connects to the FPGA with no buffer.

Pin 6
FENOUT, a LVTTL level frame enable output. FENOUT is a copy of the frame enable signal from the camera, and connects to the FPGA with no buffer.

Pin 7
IN1, a LVTTL level general purpose input, and connects to the FPGA with no buffer.

Pin 8
OUT1, a LVTTL level general purpose output, and connects to the FPGA with no buffer.

Pin 9
IN2, a LVTTL level general purpose input, and connects to the FPGA with no buffer. IN2 is pulled up to 3.3 volts.

Pin 10
OUT2, a LVTTL level general purpose output, and connects to the FPGA with no buffer.

Pin 11
Ground.

Pin 12
+3.3 volts.

Pin 13
TRG2, a LVTTL (3.3 volt) level trigger input.

Pin 14
STR2, a LVTTL level Strobe Output. STR2 is driven from the camera control state machine, and is delayed by two state machine clocks from the exposure signal.

Pin 15
FENIN2, a LVTTL level frame enable input for line scan applications, and connects to the FPGA with no buffer.

Pin 16
FENOUT2, a LVTTL level copy of the frame enable signal from the camera, and connects to the FPGA with no buffer.

Pin 17
IN22, a LVTTL level general purpose input, and connects to the FPGA with no buffer.

Pin 18
OUT22, a LVTTL level general purpose output, and connects to the FPGA with no buffer.

Pin 19
IN12, a LVTTL level general purpose input, and connects to the FPGA with no buffer.

Pin 20
OUT12, a LVTTL level general purpose output, and connects to the FPGA with no buffer.

P6 connects 12 volt power and ground to the PIXCI® miniH2BL.

Pin 1 is in the lower position and connects 12 volt power. Pin 2 is in the upper position and connects ground.

P4 connects the PCI express signals to the half size mini PCIe circuit board.


 

 

 

3. Software Installation

XCAP-Plus, XCAP-Std, XCAP-Ltd, and XCAP-Lite are easy to install by following the instructions below.

 

3.1. For Windows 8/10/11/ 32/64-Bit

Administrator privileges are required to complete the installation procedure.

  1. Install Files:
    1. If XCAP is provided on a CD or DVD:
      1. If your computer is set to allow automatic execution of a loaded CD/DVD, the CD/DVD's interactive index program will be executed automatically. Otherwise, execute the index program, from a Command Prompt (i.e. Windows Terminal), or via the Windows ''Start'', ''Run'':
            > Z:SETUP       (replace Z with drive letter for your CD/DVD)
        
      2. Select ''Setup PIXCI(R) Imaging Software'' and ''XCAP Imaging Application for Windows 10/8/7/Vista/XP/2000 32-Bit'' or ''XCAP Imaging Application for Windows 11/10/8/7/Vista/XP 64-Bit''. Click ''OK''.
      3. Follow the installation program's directions, such as to select an installation directory. The default installation directory is nominally C:\Program Files\EPIX\XCAP, or C:\Program Files(x86)\EPIX\XCAP for installation of 32-bit XCAP on 64-bit Windows, but depends on the current Windows' CSIDL settings.
    2. If XCAP is provided via the internet:
      1. Download:
        ftp.epixinc.com/software/xcap_v38/XCAPWIN32.EXE (for 32-bit XCAP for Windows)
        
        or
        ftp.epixinc.com/software/xcap_v38/XCAPWIN64.EXE (for 64-bit XCAP for Windows)
        
        from the EPIX, Inc. ftp site.
      2. Execute the downloaded program, from a Command Prompt (i.e. Windows Terminal), or via the Windows ''Start'', ''Run'':
        > XCAPWIN32.EXE     (for 32-bit XCAP for Windows)
        
        or
        > XCAPWIN64.EXE     (for 64-bit XCAP for Windows)
        
      3. Follow the installation program's directions, such as to select an installation directory. The default installation directory is nominally C:\Program Files\EPIX\XCAP, or C:\Program Files(x86)\EPIX\XCAP for installation of 32-bit XCAP on 64-bit Windows, but depends on the current Windows' CSIDL settings.
      4. The downloaded .EXE file may be deleted.
    3. The installation procedure creates a new program group, containing XCAP and several .TXT files. The *.TXT files contain these installation instructions, a list of distributed files, corrections or additions to this manual, or other up-to-date information. The PCITIPS.TXT file provides the PCI Configuration Tips, with tips for resolving hardware and software conflicts. The installation procedure also, optionally, creates a desktop shortcut for XCAP.
  2. Install Authorization Key (for XCAP-Plus, XCAP-Std, and XCAP-Ltd):
    1. XCAP-Plus, XCAP-Std, and XCAP-Ltd are provided with an USB authorization key. XCAP-Lite is provided with a software Activation ID Code.

      The Blue (older) or Green (newer) authorization USB key has the size and shape of a USB thumb drive (4 to 6&times1.6×0.8 cm) with a standard USB-A 4-pin connector. If provided, connect the authorization key to a USB port.

      The authorization key must remain attached, to the USB port while XCAP is running. If the authorization key is missing, or disconnected while XCAP is running, then XCAP-Plus, XCAP-Std or XCAP-Ltd, will behave similar to the XCAP-Lite version; selected image processing and analysis tools will not be operational.

    2. Upon first use, XCAP will prompt for configuration as per the authorization key (including installation of drivers), or the software Activation ID Code.

      Subsequently, use Change Setup under Utility, Program Setup within XCAP, to change XCAP's configuration as per the authorization key or the software Activation ID Code.

  3. Install PIXCI® Frame Grabber Driver:
    1. The PIXCI® frame grabber's driver may be installed in response to the Windows Device Manager's prompts (it will prompt once after detecting a newly installed card) and pointing the Device Manager to Drivers\Win8 or Drivers\Win10 for Windows 8/10 32-Bit, or Drivers\Win8x64, Drivers\Win10x64, or Drivers\Win11x64 for Windows 8/10/11 64-Bit within the chosen installation directory. Or may be installed during XCAP's installation (such as via the XCAPWIN32.EXE or XCAPWIN64.EXE installer). Or may be installed by the Driver Assistant feature within XCAP.

      Alternately, the PIXCI® frame grabber's driver can be installed as follows.

    2. Open the Windows Device Manager by right-clicking on the lower left corner of the screen and select ''Device Manager''. In the Device Manager look for an entry with a yellow exclamation mark that is labeled ''PCI Device'' or ''Multimedia Controller'' or ''Coprocessor'' or ''Unknown Device''. Double-click on the entry and then click the ''Update Driver...'' button. In the ''Update Driver Software'' window that pops-up, select ''Browse my computer for driver software''; in the ''Search for driver software in this location'' enter path Drivers\Win8 or Drivers\Win10 for Windows 8/10 32-Bit, or Drivers\Win8x64, Drivers\Win10x64, or Drivers\Win11x64 for Windows 8/10 64-Bit and 11 64-Bit, within the chosen installation directory (typically C:\XCAP or C:\Program Files\EPIX\XCAP or C:\Program Files(x86)\EPIX\XCAP), and click ''Next''. A window reports ''Windows has successfully updated your driver software.'' click ''Close'' and restart Windows.
    3. Alternately, using the Windows Explorer, highlight file EPIXXCW2.INF within Drivers\Win8 or Drivers\Win10 for Windows 8/10 32-Bit, or highlight file EPIXXCW6.INF within Drivers\Win8x64, Drivers\Win10x64, or Drivers\Win11x64 for Windows 8/10 64-Bit and 11 64-Bit, within the chosen installation directory, right-click and select ''Install'', and restart Windows.
  4. Restart Windows. (Note that using Windows' Shutdown instead of Restart may delay Windows' recognition of these changes until the second subsequent shutdown!)
  5. XCAP is now ready to run, by clicking the optional shortcut, or by clicking ''Start'', ''Programs'', ''XCAP Imaging'', and finally ''XCAP for Windows''.

 

3.2. Windows 8/10/11 32/64-Bit Esoterica

3.2.1. Windows 8/10/11 32/64-Bit - Frame Grabber Driver Installation Details

The PIXCI® frame grabber's driver consists of files:

    EPIXXCW2.INF
    EPIXXCW2.CAT
    EPIXXCW2.SYS
for Windows 8/10 32-Bit, or files:
    EPIXXCW6.INF
    EPIXXCW6.CAT
    EPIXXCW6.SYS
for Windows 8/10/11 64-Bit. Driver files for different versions of Windows, although with the same file name, may have different digital signatures as required by each version of Windows.

The PIXCI® frame grabber driver is installed by the Windows Device Manager, or by Driver Assistant within XCAP.

Installation copies the driver files and creates registry entry:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW2
for Windows 8/10 32-Bit, or
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW6
for Windows 8/10/11 64-Bit. Most values within the registry entry are set by the Device Manager and should not be modified. The value:
    PIXCI   =  -IM <memorysize>  ...
may be created upon installation, added or modified by XCAP, or can be added or modified manually (i.e. via the Registry Editor (REGEDIT)); its component value(s) are Driver Configuration Parameters, as described below.

3.2.2. Windows 8/10/11 32/64-Bit - Frame Buffer Memory Allocation

Under Windows 8/10 32/64-Bit and 11 64-Bit, frame buffer memory must be allocated during Windows' initialization.

Use of the Driver Assistant within XCAP, provides convenient configuration of frame buffer memory allocation. The following information allows manual configuration, correcting problems, or integration with an OEM's procedures.

The requested frame buffer memory size must be specified in the Registry entry described above, using an entry named ''PIXCI'', such as:

    PIXCI         =  "-IM <memorysize>"
replacing the ''<memorysize>'' with the desired memory size in KiBytes. If no frame buffer memory size is specified, a default size of 32768 KiBytes is used. Windows must be restarted for the new specification to take effect. Note that using Windows' Shutdown instead of Restart may delay Windows' recognition of these changes until the second subsequent shutdown!

Optionally,

    "-MB <memory_partition_size>"
specifies that the requested
    "-IM <memorysize>"
is to be allocated in blocks or partitions of the stated size. Requesting memory partitioned into blocks may allow receiving more memory that would be available as a single block. However, (a) Each frame buffer must be completely contained within a partition, and (b) The maximum number of partitions is 256 under 32 bit operating systems, the maximum number of partitions is 256 under 64 bit operating systems. Systems with very high resolution cameras using large frame buffers should choose the partition size carefully, so as to minimize the unusable memory remaining, smaller than a frame buffer, at the end of each partition.

For the PIXCI® CL3SD and SI2, which have on-board frame buffer memory, memory reserved by the -IM parameter is needed as a DMA buffer (approximately 1 MiByte) and optionally for support of time stamping of captured frames as specified by the ''-MU'' parameter (see PIXCI® Driver Esoterica) specifies use of frame buffer memory for that purpose. Currently, 64 bytes are needed for each frame buffer's capture status.

Windows 8/10 32/64-Bit and 11 64-Bit limits the maximum amount of allocatable frame buffer memory, dependent upon what other devices are installed, the total computer memory size, and other factors. Under Windows 8/10/11 32-Bit, the amount of memory that Windows may grant during startup is typically limited to 1024 MiByte, but not more than half of the computer memory size. Under Windows 8/10/11 64-Bit, the amount of memory that Windows may grant during startup has not yet been determined, but is probably similar to the limit for Windows Vista 64-Bit: the smaller of 6 GiByte or one half of the computer memory size.

Windows may provide less frame buffer memory than was requested. If no memory could be allocated, the PIXCI® frame grabber will not be available, stating ''Can't allocate frame buffer memory''. Otherwise, within XCAP, the number of available frame buffers can be checked under PIXCI®, PIXCI® Video Setup, Resolution. As the frame buffer memory is allocated once during Windows initialization; the contents of frame buffers are retained as XCAP is closed and restarted, but lost if Windows is restarted.

3.2.3. Windows 8/10/11 32/64-Bit - Forceful Frame Buffer Memory Allocation

As described above, frame buffer memory allocated by EPIXXCW2.SYS for Windows 8/10 32-Bit, or EPIXXCW6.SYS for Windows 8/10/11 64-Bit, during Windows startup may be limited to a small percentage of total computer memory. Under Windows 8/10 32-Bit, the amount of memory that Windows may grant during startup is typically limited to 1024 MiByte, but not more than half of the computer memory size. Under Windows 8/10/11 64-Bit, the amount of memory that Windows may grant during startup has not yet been determined, but is probably similar to the limit for Windows Vista 64-Bit: the smaller of 6 GiByte or one half of the computer memory size. Some computer and/or Windows configurations may have lower limits.

A larger frame buffer memory can be obtained by limiting the amount of memory recognized by Windows, and then instructing EPIXXCW2.SYS for Windows 8/10 32-Bit, or EPIXXCW6.SYS for Windows 8/10/11 64-Bit, to explicitly use a section of memory without allocating it from Windows.

Use of the Driver Assistant within XCAP, provides convenient configuration of forceful frame buffer memory allocation. The following information allows manual configuration, correcting problems, or integration with an OEM's procedures.

  1. Use the Windows' BCDEDIT utility to create a copy of the ''{CURRENT}'' boot entry, set the new entry use limit memory usage via ''truncatememory'', and changing the new entry's description.

    Typical commands are:

        BCDEDIT  /enum
    
    to list current entries and obtain the current entry's description,
        BCDEDIT  /copy  {current}  /d  "CURRENT_ENTRY_DESCRIPTION [PIXCI=##M NT=##M"
    
    to create a new entry with modified description and boot prompt including a reminder of the amount of memory provided to Windows and to the PIXCI® imaging card,
        BCDEDIT /enum  /v
    
    to get the ID of the new entry, and:
        BCDEDIT /set <new_entry_id> truncatememory <memory_size>
    
    to limit the Windows memory size to <memory_size>, in bytes.

    Also using BCDEDIT change the timeout selection to be greater than 0:

        BCDEDIT /timeout 30
    
    Otherwise the boot configuration options will not be shown when Windows starts.
  2. Edit the registry entry:
        HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW2
    
    for Windows 8/10 32-Bit, or
        HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW6
    
    for Windows 8/10/11 64-Bit. On the ''PIXCI'' field add:
        -IA <image_memory_adrs_in_KiByte>
        -IM <size_of_image_memory_in_KiByte>
        -MB <image_memory_partition_size_in_KiByte>
        -BH <size_of_BIOS_hole_below_4GiB_in_KiByte>
    
    In practice, all four fields are on the same line.

    The -MB partition size specifies the size into which image memory is partitioned for the sake of virtual memory management: (a) Each frame buffer must be completely contained within a partition, (b) A value of 0 specifies that the entire image memory is to be handled as one partition, and (c) The maximum number of partitions is 256 under 32 bit operating systems, the maximum number of partitions is 256 under 64 bit operating systems. For most systems, a value of 8192 or 16384 is suggested; though the value need not be a power of two. Systems with very high resolution cameras using large frame buffers should choose the partition size carefully, so as to minimize the unusable memory remaining, smaller than a frame buffer, at the end of each partition.

    When using more than 1 or 2 GiBytes of image memory, it may be necessary to append:

        -MU 0x01
    
    to the ''PIXCI'' field, conserving system memory mapping resources by not mapping the image memory directly into the application program's space. It may also be necessary to append:
        -MU 0x03
    
    which additionally conserves system resources by mapping memory only on demand.

    Be careful that the -IA address is equal to (or above) the specified ''truncatememory'' limit - including exact base2 to base10 conversions! Likewise, be certain that the -IA plus -IM values do not exceed the amount of memory available!

    On a computer populated with 4 or more GiBytes of memory, some of the memory directly below the 4 GiByte address overlaps other hardware resources such as BIOS, memory mapped I/O, PCI configuration space, etc.[1] and is unavailable to either the operating system or for use as frame buffers. The usable frame buffer memory is therefore reduced by the amount by which the -IA address up to the -IA address plus -IM size overlap the 4 GiByte address minus -BH size up to the 4 GiByte address. The -BH size may be set to 0 (or not specified) if the computer has significantly less than 4 GiBytes of memory.

    On computers with Intel vPro Technology, computer memory between the 768 MiByte and 1024 MiByte addresses may be reserved; the -IA address should not be lower than the 1024 MiByte address.

  3. Restart Windows, using the newly added boot selection. Note that using Windows' Shutdown instead of Restart may delay Windows' recognition of these changes until the second subsequent shutdown!

For example, for a computer with 1 GiByte of memory, allocating 256 MiByte for Windows and the remainder for frame buffer memory, use:

    BCDEDIT /set NEW_ENTRY_ID truncatememory 268435456
and use:
    PIXCI = -IA 262144 -IM 786432 -MB 8192
in the registry entry. Note that 262144 is 256×1024, and 786432 is (1024-256)×1024.

Note that if this memory allocation method is used, program access to image data may be slower. Thus, the video display rate (and image processing) may be slower, but the video capture rate (such as sequence capture) is not adversely affected. This method of memory allocation is primarily used for video rate acquisition of long sequences, followed by off-line analysis or saving of the sequence.

3.2.4. Windows 8/10/11 32/64-Bit - Authorization Key - Manual Installation

Use of the Driver Assistant within XCAP, provides convenient installation of the authorization key's driver(s).

The following information allows manual installation, correcting problems, or integration with an OEM's procedures.

3.2.4.1. USB Authorization Blue Keys

Run the authorization key utility program provided with XCAP from the chosen installation directory:

    > C:\Program Files\EPIX\XCAP
as:
    HARDLOCK\Win7+\HASPDINST -install
or
    HARDLOCK\Win7+\HASPDINST -help
for additional options. The authorization key's vendor does not provide detailed information regarding installation of drivers for USB port authorization keys.

3.2.4.2. USB Authorization Green Keys

Attach the USB green key. Run the Windows Device Manager, look for the ''USBKEY'', ''USBKEY64'', or ''Keylok 2'' device, ask the Device Manager to install or update the driver for the device, pointing the Device Manager to XCAP's chosen installation directory:

    > C:\Program Files\EPIX\XCAP
and subdirectory:
    Keylok\i386\WinXP+
for 32-Bit Windows, or subdirectory:
    Keylok\x86_64\Win10+
for 64-Bit Windows.

 

3.3. For Windows 7 32/64-Bit

Administrator privileges are required to complete the installation procedure.

  1. Install Files:
    1. If XCAP is provided on a CD or DVD:
      1. If your computer is set to allow automatic execution of a loaded CD/DVD, the CD/DVD's interactive index program will be executed automatically. Otherwise, execute the index program, from a Command Prompt (i.e. Windows Terminal), or via the Windows ''Start'', ''Run'':
            > Z:SETUP       (replace Z with drive letter for your CD/DVD)
        
      2. Select ''Setup PIXCI(R) Imaging Software'' and ''XCAP Imaging Application for Windows 10/8/7/Vista/XP/2000 32-Bit'' or ''XCAP Imaging Application for Windows 11/10/8/7/Vista/XP 64-Bit''. Click ''OK''.
      3. Follow the installation program's directions, such as to select an installation directory. The default installation directory is nominally C:\Program Files\EPIX\XCAP, or C:\Program Files(x86)\EPIX\XCAP for installation of 32-bit XCAP on 64-bit Windows, but depends on the current Windows' CSIDL settings.
    2. If XCAP is provided via the internet:
      1. Download:
        ftp.epixinc.com/software/xcap_v38/XCAPWIN32.EXE (for 32-bit XCAP for Windows)
        
        or
        ftp.epixinc.com/software/xcap_v38/XCAPWIN64.EXE (for 64-bit XCAP for Windows)
        
        from the EPIX, Inc. ftp site.
      2. Execute the downloaded program, from a Command Prompt (i.e. Windows Terminal), or via the Windows ''Start'', ''Run'':
        > XCAPWIN32.EXE     (for 32-bit XCAP for Windows)
        
        or
        > XCAPWIN64.EXE     (for 64-bit XCAP for Windows)
        
      3. Follow the installation program's directions, such as to select an installation directory. The default installation directory is nominally C:\Program Files\EPIX\XCAP, or C:\Program Files(x86)\EPIX\XCAP for installation of 32-bit XCAP on 64-bit Windows, but depends on the current Windows' CSIDL settings.
      4. The downloaded .EXE file may be deleted.
    3. The installation procedure creates a new program group, containing XCAP and several .TXT files. The *.TXT files contain these installation instructions, a list of distributed files, corrections or additions to this manual, or other up-to-date information. The PCITIPS.TXT file provides the PCI Configuration Tips, with tips for resolving hardware and software conflicts. The installation procedure also, optionally, creates a desktop shortcut for XCAP.
  2. Install Authorization Key (for XCAP-Plus, XCAP-Std, and XCAP-Ltd):
    1. XCAP-Plus, XCAP-Std, and XCAP-Ltd are provided with an USB authorization key. XCAP-Lite is provided with a software Activation ID Code.

      The Blue (older) or Green (newer) authorization USB key has the size and shape of a USB thumb drive (4 to 6&times1.6×0.8 cm) with a standard USB-A 4-pin connector. If provided, connect the authorization key to a USB port.

      The authorization key must remain attached, to the USB port while XCAP is running. If the authorization key is missing, or disconnected while XCAP is running, then XCAP-Plus, XCAP-Std or XCAP-Ltd, will behave similar to the XCAP-Lite version; selected image processing and analysis tools will not be operational.

    2. Upon first use, XCAP will prompt for configuration as per the authorization key (including installation of drivers), or the software Activation ID Code.

      Subsequently, use Change Setup under Utility, Program Setup within XCAP, to change XCAP's configuration as per the authorization key or the software Activation ID Code.

  3. Install PIXCI® Frame Grabber Driver:
    1. The PIXCI® frame grabber's driver may be installed in response to the Windows Device Manager's prompts (it will prompt once after detecting a newly installed card) and pointing the Device Manager to Drivers\Win7 for Windows 7 32-Bit or Drivers\Win7x64 for Windows 7 64-Bit within the chosen installation directory, or may be installed during XCAP's installation (such as via the XCAPWIN32.EXE or XCAPWIN64.EXE installer), or may be installed by the Driver Assistant feature within XCAP.

      Alternately, the PIXCI® frame grabber's driver can be installed as follows.

    2. Open the Windows Device Manager by clicking ''Start'', ''Control Panel'', ''System & Security'', ''System'', and ''Device Manager''. In the Device Manager look for an entry with a yellow exclamation mark that is labeled ''Multimedia Controller'' or ''Coprocessor''. Double-click on the entry and then click the ''Update Driver...'' button. In the ''Update Driver Software'' window that pops-up, select ''Browse my computer for driver software''; in the ''Search for driver software in this location'' enter path Drivers\Win7 for Windows 7 32-Bit, or Drivers\Win7x64 for Windows 7 64-Bit, within the chosen installation directory (typically C:\XCAP or C:\Program Files\EPIX\XCAP), and click ''Next''. A window asks ''Would you like to install this device software?''; click ''Install''. A window reports ''The software for this device has been successfully installed'' and ''The hardware you installed will not work until you restart your computer''; click ''Finish'' and restart Windows.
    3. Alternately, using the Windows Explorer, highlight Drivers\Win7\EPIXXCW2.INF for Windows 7 32-Bit or Drivers\Win7x64\EPIXXCW6.INF for Windows 7 64-Bit within the chosen installation directory, right-click and select ''Install'', and restart Windows.
  4. Restart Windows.
  5. XCAP is now ready to run, by clicking the optional shortcut, or by clicking ''Start'', ''Programs'', ''XCAP Imaging'', and finally ''XCAP for Windows''.

 

3.4. Windows 7 32/64-Bit Esoterica

3.4.1. Windows 7 32/64-Bit - Frame Grabber Driver Installation Details

The PIXCI® frame grabber's driver consists of files:

    EPIXXCW2.INF
    EPIXXCW2.CAT
    EPIXXCW2.SYS
for Windows 7 32-Bit, or files:
    EPIXXCW6.INF
    EPIXXCW6.CAT
    EPIXXCW6.SYS
for Windows 7 64-Bit. Driver files for different versions of Windows, although with the same file name, may have different digital signatures as required by each version of Windows.

The PIXCI® frame grabber driver is installed by the Windows Device Manager, or by Driver Assistant within XCAP.

Installation copies the driver files and creates registry entry:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW2
for Windows 7 32-Bit, or
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW6
for Windows 7 64-Bit. Most values within the registry entry are set by the Device Manager and should not be modified. The value:
    PIXCI   =  -IM <memorysize>  ...
may be created upon installation, added or modified by XCAP, or can be added or modified manually (i.e. via the Registry Editor (REGEDIT)); its component value(s) are Driver Configuration Parameters, as described below.

3.4.2. Windows 7 32/64-Bit - Frame Buffer Memory Allocation

Under Windows 7 32/64-Bit, frame buffer memory must be allocated during Windows' initialization.

Use of the Driver Assistant within XCAP, provides convenient configuration of frame buffer memory allocation. The following information allows manual configuration, correcting problems, or integration with an OEM's procedures.

The requested frame buffer memory size must be specified in the Registry entry described above, using an entry named ''PIXCI'', such as:

    PIXCI         =  "-IM <memorysize>"
replacing the ''<memorysize>'' with the desired memory size in KiBytes. If no frame buffer memory size is specified, a default size of 32768 KiBytes is used. Windows must be restarted for the new specification to take effect.

Optionally,

    "-MB <memory_partition_size>"
specifies that the requested
    "-IM <memorysize>"
is to be allocated in blocks or partitions of the stated size. Requesting memory partitioned into blocks may allow receiving more memory that would be available as a single block. However, (a) Each frame buffer must be completely contained within a partition, and (b) The maximum number of partitions is 256 under 32 bit operating systems, the maximum number of partitions is 256 under 64 bit operating systems. Systems with very high resolution cameras using large frame buffers should choose the partition size carefully, so as to minimize the unusable memory remaining, smaller than a frame buffer, at the end of each partition.

For the PIXCI® CL3SD and SI2, which have on-board frame buffer memory, memory reserved by the -IM parameter is needed as a DMA buffer (approximately 1 MiByte) and optionally for support of time stamping of captured frames as specified by the ''-MU'' parameter (see PIXCI® Driver Esoterica) specifies use of frame buffer memory for that purpose. Currently, 64 bytes are needed for each frame buffer's capture status.

Windows 7 32/64-Bit limits the maximum amount of allocatable frame buffer memory, dependent upon what other devices are installed, the total computer memory size, and other factors. Under Windows 7 32-Bit, the amount of memory that Windows may grant during startup is typically limited to 1024 MiByte, but not more than half of the computer memory size. Under Windows 7 64-Bit, the amount of memory that Windows may grant during startup has not yet been determined, but is probably similar to the limit for Windows Vista 64-Bit: the smaller of 6 GiByte or one half of the computer memory size.

Windows may provide less frame buffer memory than was requested. If no memory could be allocated, the PIXCI® frame grabber will not be available, stating ''Can't allocate frame buffer memory''. Otherwise, within XCAP, the number of available frame buffers can be checked under PIXCI®, PIXCI® Video Setup, Resolution. As the frame buffer memory is allocated once during Windows initialization; the contents of frame buffers are retained as XCAP is closed and restarted, but lost if Windows is restarted.

3.4.3. Windows 7 32/64-Bit - Forceful Frame Buffer Memory Allocation

As described above, frame buffer memory allocated by EPIXXCW2.SYS for Windows 7 32-Bit, or EPIXXCW6.SYS for Windows 7 64-Bit, during Windows startup may be limited to a small percentage of total computer memory. Under Windows 7 32-Bit, the amount of memory that Windows may grant during startup is typically limited to 1024 MiByte, but not more than half of the computer memory size. Under Windows 7 64-Bit, the amount of memory that Windows may grant during startup has not yet been determined, but is probably similar to the limit for Windows Vista 64-Bit: the smaller of 6 GiByte or one half of the computer memory size. Some computer and/or Windows configurations may have lower limits.

A larger frame buffer memory can be obtained by limiting the amount of memory recognized by Windows, and then instructing EPIXXCW2.SYS for Windows 7 32-Bit, or EPIXXCW6.SYS for Windows 7 64-Bit, to explicitly use a section of memory without allocating it from Windows.

Use of the Driver Assistant within XCAP, provides convenient configuration of forceful frame buffer memory allocation. The following information allows manual configuration, correcting problems, or integration with an OEM's procedures.

  1. Use the Windows' BCDEDIT utility to create a copy of the ''{CURRENT}'' boot entry, set the new entry use limit memory usage via ''truncatememory'', and changing the new entry's description.

    Typical commands are:

        BCDEDIT  /enum
    
    to list current entries and obtain the current entry's description,
        BCDEDIT  /copy  {current}  /d  "CURRENT_ENTRY_DESCRIPTION [PIXCI=##M NT=##M"
    
    to create a new entry with modified description and boot prompt including a reminder of the amount of memory provided to Windows and to the PIXCI® imaging card,
        BCDEDIT /enum  /v
    
    to get the ID of the new entry, and:
        BCDEDIT /set <new_entry_id> truncatememory <memory_size>
    
    to limit the Windows memory size to <memory_size>, in bytes.

    Also using BCDEDIT change the timeout selection to be greater than 0:

        BCDEDIT /timeout 30
    
    Otherwise the boot configuration options will not be shown when Windows starts.
  2. Edit the registry entry:
        HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW2
    
    for Windows 7 32-Bit, or
        HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW6
    
    for Windows 7 64-Bit. On the ''PIXCI'' field add:
        -IA <image_memory_adrs_in_KiByte>
        -IM <size_of_image_memory_in_KiByte>
        -MB <image_memory_partition_size_in_KiByte>
        -BH <size_of_BIOS_hole_below_4GiB_in_KiByte>
    
    In practice, all four fields are on the same line.

    The -MB partition size specifies the size into which image memory is partitioned for the sake of virtual memory management: (a) Each frame buffer must be completely contained within a partition, (b) A value of 0 specifies that the entire image memory is to be handled as one partition, and (c) The maximum number of partitions is 256 under 32 bit operating systems, the maximum number of partitions is 256 under 64 bit operating systems. For most systems, a value of 8192 or 16384 is suggested; though the value need not be a power of two. Systems with very high resolution cameras using large frame buffers should choose the partition size carefully, so as to minimize the unusable memory remaining, smaller than a frame buffer, at the end of each partition.

    When using more than 1 or 2 GiBytes of image memory, it may be necessary to append:

        -MU 0x01
    
    to the ''PIXCI'' field, conserving system memory mapping resources by not mapping the image memory directly into the application program's space. It may also be necessary to append:
        -MU 0x03
    
    which additionally conserves system resources by mapping memory only on demand.

    Be careful that the -IA address is equal to (or above) the specified ''truncatememory'' limit - including exact base2 to base10 conversions! Likewise, be certain that the -IA plus -IM values do not exceed the amount of memory available!

    On a computer populated with 4 or more GiBytes of memory, some of the memory directly below the 4 GiByte address overlaps other hardware resources such as BIOS, memory mapped I/O, PCI configuration space, etc.[2] and is unavailable to either the operating system or for use as frame buffers. The usable frame buffer memory is therefore reduced by the amount by which the -IA address up to the -IA address plus -IM size overlap the 4 GiByte address minus -BH size up to the 4 GiByte address. The -BH size may be set to 0 (or not specified) if the computer has significantly less than 4 GiBytes of memory.

    On computers with Intel vPro Technology, computer memory between the 768 MiByte and 1024 MiByte addresses may be reserved; the -IA address should not be lower than the 1024 MiByte address.

  3. Restart Windows, using the newly added boot selection.

For example, for a computer with 1 GiByte of memory, allocating 256 MiByte for Windows and the remainder for frame buffer memory, use:

    BCDEDIT /set NEW_ENTRY_ID truncatememory 268435456
and use:
    PIXCI = -IA 262144 -IM 786432 -MB 8192
in the registry entry. Note that 262144 is 256×1024, and 786432 is (1024-256)×1024.

Note that if this memory allocation method is used, program access to image data may be slower. Thus, the video display rate (and image processing) may be slower, but the video capture rate (such as sequence capture) is not adversely affected. This method of memory allocation is primarily used for video rate acquisition of long sequences, followed by off-line analysis or saving of the sequence.

3.4.4. Windows 7 32/64-Bit - Authorization Key - Manual Installation

Use of the Driver Assistant within XCAP, provides convenient installation of the authorization key's driver(s).

The following information allows manual installation, correcting problems, or integration with an OEM's procedures.

3.4.4.1. USB Authorization Blue Keys

Run the authorization key utility program provided with XCAP from the chosen installation directory:

    > C:\Program Files\EPIX\XCAP
as:
    HARDLOCK\Win7+\HASPDINST -install
or
    HARDLOCK\Win7+\HASPDINST -help
for additional options. The authorization key's vendor does not provide detailed information regarding installation of drivers for USB port authorization keys.

3.4.4.2. USB Authorization Green Keys

Attach the USB green key. Run the Windows Device Manager, look for the ''USBKEY'', ''USBKEY64'', or ''Keylok 2'' device, ask the Device Manager to install or update the driver for the device, pointing the Device Manager to XCAP's chosen installation directory:

    > C:\Program Files\EPIX\XCAP
and subdirectory:
    Keylok\i386\WinXP+
for 32-Bit Windows, or subdirectory:
    Keylok\x86_64\WinXP+
for 64-Bit Windows.

 

3.5. For older versions of Windows

See the XCAP Reference Manual for detailed installation instructions.

 

3.6. For Linux

Super user privileges are required to complete the installation procedure.

  1. Install Files:
    1. If XCAP is provided on a CD or DVD:
      1. Assuming the CD/DVD has already been mounted, execute:
        /media/.../PIXCI(R)/XCAP/xcaplnx_i386.bin
        
        for 32-bit Linux, or:
        /media/.../PIXCI(R)/XCAP/xcaplnx_x86_64.bin
        
        for 64-bit Linux. Some systems mount the CD/DVD under /mnt/cdrom instead of /media/{loginname}.
      2. Follow the installation program's directions, such as to select an installation directory. The default installation directory is /usr/local/xcap, or /usr/local/xcap32 for 32 bit XCAP on an x86-64 platform.
    2. If XCAP is provided via the internet:
      1. Download:
        ftp.epixinc.com/software/xcap_v38/xcaplnx_i386.bin
        
        for 32-bit Linux and Intel i386; or
        ftp.epixinc.com/software/xcap_v38/xcaplnx_x86_64.bin
        
        for 64-bit Linux and Intel x86-64; or
        ftp.epixinc.com/software/xcap_v38/xcaplnx_armv7l.bin
        ftp.epixinc.com/software/xcap_v38/xcaplnx_armv7l.bin
        
        for 32-bit Linux and nVidia TK1 (ARM A15) or Boundary Devices NITROGEN6 (ARM imx6); or
        ftp.epixinc.com/software/xcap_v38/xcaplnx_aarch64.bin
        
        for 64-bit Linux & nVidia TX1, TX2, Xavier, Xavier NX, Nano, Orin (ARM A57); from the EPIX, Inc. ftp site, or via the
            www.epixinc.com
        
        website.
      2. From a ''terminal'', change the downloaded program's mode:
            chmod 755 xcaplnx_i386.bin
            chmod 755 xcaplnx_x86_64.bin
            chmod 755 xcaplnx_armv7l.bin
            chmod 755 xcaplnx_aarch64.bin
        
        and execute the downloaded program:
            ./xcaplnx_i386.bin
            ./xcaplnx_x86_64.bin
            ./xcaplnx_armv7l.bin
            ./xcaplnx_aarch64.bin
        
      3. Follow the installation program's directions, such as to select an installation directory. The default installation directory is /usr/local/xcap, or /usr/local/xcap32 for 32 bit XCAP on an x86-64 platform.
      4. The downloaded .bin file may be deleted.
    3. The installation procedure creates a ''stub'' to start XCAP in one of the /usr/local/bin, /usr/bin, or /bin directories, which should already be in the user's execution ''PATH''. Several .txt files are installed under help in the installation directory containing these installation instructions, a list of distributed files, corrections or additions to this manual, or other up-to-date information. The pcitips.txt file provides the PCI Configuration Tips, with tips for resolving hardware and software conflicts.
    4. The installation procedure also, optionally, creates a desktop shortcut for XCAP. On some versions of Linux, the desktop manager may not show the shortcut created by the installer; using the Linux file browser, find, copy, and paste /usr/share/applications/xcap.desktop onto the desktop.
    5. For Intel i386 and x86-64 platforms, XCAP includes a Java Runtime Environment (JRE) and can use either the included JRE or a pre-installed JRE.

      For other platforms, XCAP expects a JRE to have been installed from the Linux distribution. Typically, using:

          apt-get update
          apt-get install openjdk-8-jre
      
      See a platform specific application note:
      • Installation: Boundary Devices NITROGEN6 (ARM imx6)
      • Installation: nVidia Nano (ARM Cortex-A57)
      • Installation: nVidia TK1 (ARM Cortex-A15)
      • Installation: nVidia TX1 (ARM Cortex-A57)
      • Installation: nVidia TX2 (ARM Cortex-A57)
      • Installation: nVidia Xavier (ARM Cortex-A57)
      • Installation: nVidia Xavier NX (ARM Cortex-A57)
      
      
      for tips on installing the Java JRE and other platform specific idiosyncrasies.
  2. Install Authorization Key (for XCAP-Plus, XCAP-Std, and XCAP-Ltd):
    1. XCAP-Plus, XCAP-Std, and XCAP-Ltd are provided with a printer port authorization key or an USB authorization key. XCAP-Lite is provided with a software Activation ID Code.

      The printer port authorization key is black and approximately the size and shape of a printer's parallel port connector (5.5×4.5×1.6 cm), but with two 25-pin connectors. If provided, connect the authorization key to any printer port. If a printer cable was attached to the printer port, reconnect the printer cable to the back of the authorization key; the authorization key will not affect normal printer operation.

      Do not connect the printer port authorization key to a 25-pin serial (RS-232) port, or to any other interface that happens to use the same style connector; the authorization key will not function, might be permanently damaged, and the warranty will be void!

      The Blue (older) or Green (newer) authorization USB key has the size and shape of a USB thumb drive (4 to 6&times1.6×0.8 cm), with a standard USB-A 4-pin connector. If provided, connect the authorization key to a USB port.

      The authorization key must remain attached, to the printer port or USB port as appropriate, while XCAP is running. If the authorization key is missing, or disconnected while XCAP is running, then XCAP-Plus, XCAP-Std or XCAP-Ltd, will behave similar to the XCAP-Lite version; selected image processing and analysis tools will not be operational.

      XCAP and its printer port authorization key is supported on Intel i386 platforms. XCAP and its Blue USB authorization key is supported on Intel i386 and x86-64 platforms. XCAP and its Green USB authorization key are supported on Intel i386 and x86-64 platforms as well as ARM aarch64 and armv7l platforms.

    2. Upon first use, XCAP will prompt for configuration as per the authorization key (including installation of drivers), or the software Activation ID Code.

      Subsequently, use Change Setup under Utility, Program Setup within XCAP, to change XCAP's configuration as per the authorization key or the software Activation ID Code.

  3. Install PIXCI® Frame Grabber Driver:
    1. The Driver Assistant within XCAP, provides convenient installation of the PIXCI® driver.
  4. Configure Graphics Display:
    1. Configuring the graphics display to TrueColor or DirectColor modes (using XWindows terminology), or to 24 or 32 bit modes (using graphic display hardware terminology) is suggested for higher quality, and quicker display of images and overlay graphics.

      Within XCAP, the current graphics display configuration can be checked under Utility, Linux Info, X11.

  5. XCAP is now ready to run, by executing[3] ''xcap'', or by clicking the optional shortcut.

 

3.7. Linux Esoterica

3.7.1. Linux 2.6.x, 3.x, 4.x, 5.x - Manual Installation

Use of the Driver Assistant within XCAP provides convenient installation of the:

pixci_i386.ko        (32 bit driver for Intel i386)
pixci_x86_64.ko      (64 bit driver for Intel x86-64
pixci_armv7l.ko      (32 bit driver for ARM armv7l)
pixci_aarch64.ko     (64 bit driver for ARM aarch64)
drivers in most circumstances. The following information allows manual installation, correcting problems, or integration with an OEM's procedures.
  1. Use pixci.sh (and the pixci.rc implied by pixci.sh) files to install the required pixci_i386.ko, pixci_x86_64.ko, pixci_armv7l.ko, or pixci_aarch64.ko driver, configuring Linux to automatically load the driver upon execution and during subsequent reboots:
        pixci.sh install
                 <absolute path of directory containing pixci.rc>
                 <absolute path of directory containing pixci*.ko>
    
    The pixci.rc loads pixci_i386.ko, pixci_x86_64.ko, pixci_armv7l.ko, or pixci_aarch64.ko with Driver Configuration Parameters taken from /etc/default/pixci (re-read each time the driver is loaded).
  2. Optionally, for Linux ''tty'' style access to the serial ports of Camera Link compatible PIXCI® cards from third party applications, the pixcitty_i386.ko, pixcitty_x86_64.ko, pixcitty_armv7l.ko, or pixcitty_aarch64.ko drivers can be installed with:
        pixcitty.sh install
                    <absolute path of directory containing pixcitty.rc>
                    <absolute path of directory containing pixcitty*.ko>
    
    and its implied pixcitty.rc.

    The optional pixcitty_*.ko is NOT needed for access to the Camera Link serial port via XCLIB's proprietary API, nor is it needed by XCAP.

  3. Optionally, for Linux ''Video for Linux (V4L2)'' style access to the video from third party applications, the pixciv4l_i386.ko, pixciv4l_x86_64.ko, pixciv4l_armv7l.ko, or pixciv4l_aarch64.ko drivers can be installed with:
        pixciv4l.sh install
                    <absolute path of directory containing pixciv4l.rc>
                    <absolute path of directory containing pixciv4l*.ko>
    
    and its implied pixciv4l.rc, with ''V4L2'' configuration parameters taken from /etc/default/pixciv4l (re-read each time the driver is loaded).

    The optional pixciv4l_*.ko is NOT needed for access to captured images or video via XCLIB's proprietary API, nor is it needed by XCAP.

In some circumstances, it may be necessary to avoid use of pixci.sh and pixci.rc (and the implied use of Linux' /etc/rc for automatically loading of drivers during boot), and instead manually load the driver when needed.

  1. Run, as appropriate:
    insmod pixci_i386.ko    [ "PIXCIPARM=<driver_config_parameters>" ]
    insmod pixci_x86_64.ko  [ "PIXCIPARM=<driver_config_parameters>" ]
    insmod pixci_armv7l.ko  [ "PIXCIPARM=<driver_config_parameters>" ]
    insmod pixci_aarch64.ko [ "PIXCIPARM=<driver_config_parameters>" ]
    
    using PIXCIPARM= to specify any optional Driver Configuration Parameters described below. For example:
    insmod pixci_i386.ko    "PIXCIPARM=-IM 8192 -DM 1"
    insmod pixci_x86_64.ko  "PIXCIPARM=-IM 8192 -DM 1"
    insmod pixci_armv7l.ko  "PIXCIPARM=-IM 8192 -DM 1"
    insmod pixci_aarch64.ko "PIXCIPARM=-IM 8192 -DM 1"
    
    Some versions of insmod do not accept quoted spaces in the Driver Configuration Parameters; an underscore (i.e. ''_'') may be used instead of a space. For example:
    insmod pixci_i386.ko PIXCIPARM=-IM_8192_-DM_1
    

    To use the Driver Configuration Parameters as last set by XCAP's Driver Assistant and stored in /etc/default/pixci:

        insmod pixci_i386.ko PIXCIPARM=$(grep pixci.driver.parm= < /etc/default/pixci | sed -e "s/driver.pixci.parm=//"  -e "y/ \\\/__/")
    
  2. Run:
        cat /proc/devices
    
    and note the major device number which is assigned to the pixci block device. Run:
        rm -f /dev/pixci
        mknod /dev/pixci c <major_device_number> 0
        chmod 666 /dev/pixci
    
    If embedding these commands into a shell script:
        rm -f /dev/pixci
        mknod /dev/pixci c $(awk "\\$2==\"PIXCI(R)\" {print \\$1}" /proc/devices) 0
        chmod 666 /dev/pixci
    
    automatically ''reads'' and incorporates the major device number.
  3. Optionally, for Linux ''tty'' style access to the serial ports of Camera Link compatible PIXCI® cards run, as appropriate:
    insmod pixcitty_i386.ko      [ <tty_config_parameters> ]
    insmod pixcitty_x86_64.ko    [ <tty_config_parameters> ]
    insmod pixcitty_armv7l.ko    [ <tty_config_parameters> ]
    insmod pixcitty_aarch64.ko   [ <tty_config_parameters> ]
    
    The
        /dev/ttySPIXCI0
        /dev/ttySPIXCI1
        ...
    
    nodes for the first, second, etc. cards are created automatically.

    The ''tty'' configuration parameters are described in pixcitty.df. For example:

    insmod pixcitty_i386.ko      DEFAULT_BAUDRATE=9600
    insmod pixcitty_x86_64.ko    DEFAULT_BAUDRATE=9600
    insmod pixcitty_armv7l.ko    DEFAULT_BAUDRATE=9600
    insmod pixcitty_aarch64.ko   DEFAULT_BAUDRATE=9600
    

    The optional pixcitty_*.ko driver is used in addition to, and installed after, the corresponding pixci_*.ko driver. The optional pixcitty_*.ko is NOT needed for access to the Camera Link serial port via XCLIB's proprietary API, nor is it needed by XCAP.

  4. Optionally, for ''Video for Linux (V4L2)'' style access to the video from third party applications, run, as appropriate:
    insmod pixciv4l_i386.ko      [ <v4l_config_parameters> ]
    insmod pixciv4l_x86_64.ko    [ <v4l_config_parameters> ]
    insmod pixciv4l_armv7l.ko    [ <v4l_config_parameters> ]
    insmod pixciv4l_aarch64.ko   [ <v4l_config_parameters> ]
    
    The:
        /dev/video*
        ...
    
    nodes for the first, second, etc. cards are created automatically.

    The ''V4L2'' configuration parameters are described in pixciv4l.df. For example:

    insmod pixciv4l_i386.ko      STREAM_MODE=1  STREAM_BUFFERS=12
    insmod pixciv4l_x86_64.ko    STREAM_MODE=1  STREAM_BUFFERS=12
    insmod pixciv4l_armv7l.ko    STREAM_MODE=1  STREAM_BUFFERS=12
    insmod pixciv4l_aarch64.ko   STREAM_MODE=1  STREAM_BUFFERS=12
    

    The optional pixciv4l_*.ko driver is used in addition to, and installed after, the corresponding pixci_*.ko driver. The optional pixciv4l_*.ko is NOT needed for access to captured images or video via XCLIB's proprietary API, nor is it needed by XCAP.

  5. For PIXCI® SV2, SV3, SV4, SV5, SV5A, SV5B, and SV5L frame grabbers, drivers other than those provided by EPIX, Inc. may have been installed during Linux's configuration. See http://will.freehosting.net/bttv-HOWTO.html, section 5.1 for information on removing the drivers. In brief, use:
        lsmod
    
    for a list of currently installed modules and remove any named videodev, i2c, i2c-char, tuner, msp3400, bt878, or bttv by using rmmod.

3.7.2. Linux 3.x, 4.x, 5.x - Frame Buffer Memory Allocation

Under Linux, frame buffer memory must be allocated during the driver's installation.

Use of the Driver Assistant within XCAP, provides convenient configuration of frame buffer memory allocation. The following information allows manual configuration, correcting problems, or integration with an OEM's procedures.

The requested frame buffer memory size must be specified in the Driver Configuration Parameters, described above, using parameter

    "-IM <memorysize>"
replacing the ''<memorysize>'' with the desired memory size in KiBytes. If no frame buffer memory size is specified, a default size of 4096 KiBytes is used under 32 bit Linux. 32768 KiBytes is used under 64 bit Linux.

Optionally,

    "-MB <memory_partition_size>"
specifies that the requested
    "-IM <memorysize>"
is to be allocated in blocks or partitions of the stated size. Requesting memory partitioned into blocks may allow receiving more memory that would be available as a single block. However, (a) Each frame buffer must be completely contained within a partition, and (b) The maximum number of partitions is 256 under 32 bit operating systems, the maximum number of partitions is 256 under 64 bit operating systems. Systems with very high resolution cameras using large frame buffers should choose the partition size carefully, so as to minimize the unusable memory remaining, smaller than a frame buffer, at the end of each partition.

For the PIXCI® CL3SD and SI2, which have on-board frame buffer memory, memory reserved by the -IM parameter is needed as a DMA buffer (approximately 1 MiByte) and optionally for support of time stamping of captured frames as specified by the ''-MU'' parameter (see PIXCI® Driver Esoterica) specifies use of frame buffer memory for that purpose. Currently, 64 bytes are needed for each frame buffer's capture status.

Linux limits the maximum amount of allocatable frame buffer memory, dependent upon what other devices are installed, the computer's total memory size, and other factors. Installing the driver immediately after booting Linux improves the likelihood of being able to allocate large amounts of memory.

Linux may provide less frame buffer memory than was requested. If no memory could be allocated, the PIXCI® frame grabber will not be available, stating ''Can't allocate frame buffer memory''. Otherwise, within XCAP, the number of available frame buffers can be checked under PIXCI®, PIXCI® Video Setup, Resolution. As the frame buffer memory is allocated once during the driver's initialization; the contents of frame buffers are retained as XCAP is closed and restarted, but lost if the driver is uninstalled or Linux is restarted.

For the nVidia TK1 (ARM Cortex-A15), the nVidia TX1/TX2 (ARM Cortex-A57), the nVidia Nano (ARM Cortex-A57) and the Boundary Devices NITROGEN6 (ARM imx6) (but not the nVidia Xavier or Xavier NX), the amount of frame buffer memory that can be allocated is limited by the kernel's ''coherent pool'' size. For these embedded systems, the memory is split into various special purpose pools - unlike a typical desktop system. For the TK1, TX1, TX2, increasing the ''coherent pool'' size requires editing the /boot/extlinux/extlinux.conf file and setting the ''vmalloc'', ''CMA'', and ''coherent-pool'' parameters. For the NITROGEN6, increasing the ''coherent pool'' size requires editing the /6x_bootscript.txt file and setting the ''coherent-pool'' parameter, followed by compilation of /6x_bootscript.txt via a Boundary Devices tool, and replacement of the /6x_bootscript file. Values for ''coherent-pool'' and other parameters must take into account all devices and requirements of the system.

3.7.3. Linux 2.6.x, 3.x, 4.x, 5.x - Forceful Frame Buffer Memory Allocation

As described above, frame buffer memory allocated by pixci_i386.ko or pixci_x86_64.ko during its installation may be limited to a small percentage of the computer's total memory.

A larger frame buffer memory can be obtained by limiting the amount of memory recognized by Linux, and then instructing pixci_i386.ko or pixci_x86_64.ko to explicitly use a section of memory without allocating it from Linux.

Use of the Driver Assistant within XCAP, provides convenient configuration of frame buffer memory allocation. The following information allows manual configuration, correcting problems, or integration with an OEM's procedures.

  1. Edit /boot/grub/grub.conf (renamed to /boot/grub/menu.lst on some systems), restricting Linux to use no more than a set amount of memory: by copying an existing configuration group, adding mem=XXM (where XX is the memory size in MiByte) to the ''kernel'' line, and changing the prompt name. For example, changing:
        title Fedora Core (2.6.5-1.358)
            root (hd0,0)
            kernel /vmlinuz-2.6.5-1.358 ro root=LABEL=/ rhgb quiet
            initrd /initrd-2.6.5-1.358.img
    
    to
        title Fedora Core (2.6.5-1.358) + PIXCI
            root (hd0,0)
            kernel /vmlinuz-2.6.5-1.358 ro root=LABEL=/ rhgb quiet mem=64M
            initrd /initrd-2.6.5-1.358.img
    
    When booting, the modified ''title'' provides a reminder of the modified configuration being selected.
  2. Change the Driver Configuration Parameters. Add:
        -IA <image_memory_adrs_in_KiByte>
        -IM <size_of_image_memory_in_KiByte>
        -MB <image_memory_partition_size_in_KiByte>
        -BH <size_of_BIOS_hole_below_4GiB_in_KiByte>
    
    In practice, all four fields are on the same line.

    The -MB partition size specifies the size into which image memory is partitioned for the sake of virtual memory management: (a) Each frame buffer must be completely contained within a partition, (b) A value of 0 specifies that the entire image memory is to be handled as one partition, and (c) The maximum number of partitions is 256 under 32 bit operating systems, the maximum number of partitions is 256 under 64 bit operating systems. For most systems, a value of 8192 or 16384 is suggested; though the value need not be a power of two. Systems with very high resolution cameras using large frame buffers should choose the partition size carefully, so as to minimize the unusable memory remaining, smaller than a frame buffer, at the end of each partition.

    Be careful that the -IA address is equal to (or above) the specified ''mem='' limit - including exact base2 to base10 conversions! (i.e. for mem=64M, the smallest valid value of -IA is 65536, not 64000!). Likewise, be certain that the -IA plus -IM values do not exceed the amount of memory available!

    On a computer populated with 4 or more GiBytes of memory, some of the memory directly below the 4 GiByte address overlaps other hardware resources such as BIOS, memory mapped I/O, PCI configuration space, etc.[4] and is unavailable to either the operating system or for use as frame buffers. The usable frame buffer memory is therefore reduced by the amount by which the -IA address up to the -IA address plus -IM size overlap the 4 GiByte address minus -BH size up to the 4 GiByte address. The -BH size may be set to 0 (or not specified) if the computer has significantly less than 4 GiBytes of memory.

    On computers with Intel vPro Technology, computer memory between the 768 MiByte and 1024 MiByte addresses may be reserved; the -IA address should not be lower than the 1024 MiByte address.

  3. Reboot, using the newly added configuration.

For example, for a computer with 1 GiByte of memory, allocating 256 MiByte for Linux and the remainder for frame buffer memory, use:

    mem=256M
in grub.conf (or menu.lst), and use:
    -IA 262144 -IM 786432 -MB 8192
in the Driver Configuration Parameters. Note that 262144 is 256×1024, and 786432 is (1024-256)×1024.

Forceful frame buffer memory allocation is not available for pixci_aarch64.ko on the nVidia/ARM TX/TX21/Cortex-A57.

Forceful frame buffer memory allocation is not available for pixci_armv7l.ko on the nVidia/ARM TK1/Cortex-A15.

Forceful frame buffer memory allocation is not available for pixci_armv7l.ko on the Boundary Devices/ARM NITROGEN6/imx6.

3.7.4. Linux 2.6.x, 3.x, 4.x, 5.x - Authorization Key - Manual Installation

Use of the Driver Assistant within XCAP, provides convenient installation of the authorization key's driver(s).

The following information allows manual installation, correcting problems, or integration with an OEM's procedures.

3.7.4.1. Printer Port and USB Blue Authorization Keys

For manual installation, correcting problems, or integration with an OEM's procedures, installation instructions are provided in text file hardlock/INSTALL within the XCAP installation directory. Alternately, see the hardlock/drv/src_i386/Makefile for compiling the parallel port key driver under the current kernel, the hardlock/drv/pinst shell file for installing the parallel port key driver, and the hardlock/sbin/dinst shell file for installing the USB key daemon, all within the XCAP installation directory.

The parallel port key driver is needed under 2.4.x, 2.6.x, 3.x, 4.x, and 5.x i386 kernels even if the parallel port version of the key isn't used. Parallel port keys are not supported under newer x86-64 kernels; the hardlock/drv/src_x86_64/Makefile and related files are provided for legacy systems.

The printer port and Blue USB authorization key and drivers are not supported on ARM platforms.

3.7.4.2. USB Authorization Green Keys

From the XCAP chosen installation directory:

    > /usr/local/xcap
copy the:
    keylok/i386/z95_keylok.rules
or:
    keylok/x86_64/z95_keylok.rules
file to:
    /etc/udev/rules.d/
Or, execute:
    keylok/klinst keylok/i386
or
    keylok/klinst keylok/x86_64
Reboot Linux.

 

3.8. For older versions of Linux

See the XCAP Reference Manual for detailed installation instructions.

 

3.9. PIXCI® Driver Esoterica

The various Driver Configuration Parameters for all operating systems are summarized below.

The Driver Configuration Parameter string may contain any of the following parameters, separated by spaces, in any order. Each parameter's flag is followed by a number, whose value is interpreted as hexadecimal if preceded by ''0x'' or ''0X'', octal if preceded by ''0o'' or ''0O'', binary if preceded by ''0b'' or ''0B'', and is otherwise interpreted as decimal.


-BH n
If n≠0, the amount of memory space, in KiByte, directly below the 4 GiByte address which overlaps other hardware resources such as BIOS, memory mapped I/O, PCI configuration space, etc. and is unavailable to either the operating system or for use as frame buffers.[5] The usable frame buffer memory is therefore reduced by the amount by which the -IA address up to the -IA address plus -IM size overlap the 4 GiByte address minus -BH size up to the 4 GiByte address. Only used with forceful image frame buffer allocation, under Windows NT, 2000, XP, XP(x64), Vista 32/64-Bit, 7 32/64-Bit, 8/10 32/64-Bit, 11 64-Bit, Linux 32 Bit, and Linux 64 Bit. Default: 0.

-BS n
If n≠0, per-frame buffer capture status is maintained. If n=0, per-frame buffer capture status is not maintained. Also see the -MU parameter. Default: 1.

-CL n
If bit 0x01 is set, Power over Camera Link (PoCL) is maintained after the PIXCI® frame grabber is closed and later reopened by software. Only selected versions of Camera Link PIXCI® frame grabbers support PoCL; older versions apply PoCL whenever the frame grabber is powered on; newer versions disable PoCL when the PIXCI® frame grabber is closed by software - subject to this option. Setting bit 0x01 will also disable running of ''data path'' startup diagnostics. Default: 0.

-CQ n
Size of queue for video capture enqueue/capture/dequeue services, i.e. pxd_quSnap and pxd_quLive. Queue size is low 10 bits of value (i.e. 0 through 1023) plus, if bit 0x8000 set, the current number of frame buffers (as per the size of frame buffer memory versus the current video resolution). The requested value is forced to the next highest power of 2 and forced to be no smaller than 2; however this behavior is subject to change. Under Windows 95, 98, and ME, the maximum value is 2. Default: 0.

-DM n
A bit map selecting which of the PIXCI® frame grabbers present should be used. The i'th bit of the bit-map selects the i'th board found, sequentially, on the PCI, PCIe, or ExpressCard bus(es). The relationship between bit i and the order of motherboard slots is motherboard, BIOS, and OS dependent and can not be specified or queried via XCAP.

For example, 0x01 selects the first board, 0x04 selects the third board, and 0b1001 selects the first and fourth board.

For the PIXCI® E1DB, E4DB, E4G2-2F, E4TX2-2F, E8CAM, E8DB, e104x4-2f, ECB2, EL1DB, ELS2, SI2, and SV7 frame grabbers which contain two independent functional units within a single physical board, and for the PIXCI® E4G2-F2B, E4TX2-F2B, and e104x4-f2b frame grabbers which contains three independent functional units within a single physical board, and for the PIXCI® E4G2-4B, E4TX2-4B, e104x4-4b, and SI4 frame grabbers which contain four independent functional units within a single physical board: Under Windows 2000, XP, XP(x64), Vista 32/64-Bit, 7 32/64-Bit, 8/10 32/64-Bit, 11 64-Bit, Linux 32 Bit, and Linux 64 Bit, each functional unit is handled as an independent frame grabber and may be opened and closed independently. Under other operating systems, the first functional unit (i.e. half, third, or quarter) must be opened before latter functional units of the same physical board. A bit map of 0b1101 selects the first half of the first physical PIXCI® E1DB, E4DB, E4G2-2F, E4TX2-2F, E8CAM, E8DB, e104x4-2f, EL1DB, ECB2, ELS2, SI2, or SV7 frame grabber and both halves of the second physical PIXCI® E1DB, E4DB, E4G2-2F, E4TX2-2F, E8CAM, E8DB, e104x4-2f, EL1DB, ECB2, ELS2, SI2, or SV7; 0b11111001 selects the first and fourth quarter of the first physical PIXCI® E4G2-4B, E4TX2-4B, e104x4-4b, or SI4 frame grabber and all quarters of the second physical PIXCI® E4G2-4B, E4TX2-4B, e104x4-4b, or SI4. Default: 0x01, except under a Windows Plug & Play O.S. where the default is a bitmap of all functional units of the first physical board.


-IA n
If n≠0, the physical address of memory, in KiByte, at which image frame buffers are assumed to start. Only used with forceful image frame buffer allocation, under Windows 95, 98, ME, NT, 2000, XP, XP(x64), Vista 32/64-Bit, 7 32/64-Bit, 8/10 32/64-Bit, 11 64-Bit, Linux 32 Bit, and Linux 64 Bit. Default: 0.

-IM n
Requested size, in KiByte, to be reserved for the entire image frame buffer memory. Default: 32768 KiByte under Windows NT, 2000, XP, Vista 32-Bit, 7 32-Bit, and 8/10 32-Bit, 32768 KiByte under Windows XP(x64), Vista 64-Bit, 7 64-Bit, 8/10 64-Bit, 11 64-Bit, and Linux 64 Bit, 4096 KiByte for others.

For the PIXCI® CL3SD and SI2 which have on-board frame buffer memory, memory reserved by this parameter is needed for DMA buffers (approximately 1 MiByte). Memory reserved by this parameter is also, optionally, used for support of recording per-frame buffer capture status, as specified by the ''-MU'' parameter. Currently, 64 bytes are needed for each frame buffer's capture status. Default: 4096 KiByte.


-I2C n
Bit rate of the I2C or other two wire serial bus used within some PIXCI® frame grabbers. Specifies an upper bound for the bit rate; actual bit rate is dependent on characteristics of the computer system and is typically slower. Value of 0 selects predefined, board-dependent, default values.

Particularly useful for use with SILICON VIDEO® 10C6, 10M6, 1281M, 1281C, 1310, 1310C, 15C5, 1C45, 1M45 2112, 2112C, 2KS-C, 2KS-M, 5C10, 5M10, 642M, 642C, 643M, 643C, 9C10, 9M001, 9M001C, 9T001C, WGA-C, and WGA-M cameras; these SILICON VIDEO® camera heads use a I2C or similar two wire serial bus to control camera head features.

Does not affect the serial baud rate of Camera Link compatible frame grabbers.

Default: 0.


-LX n
If bit 0x20 is set, a high resolution kernel timer (i.e. ''do_gettimeofday'' for earlier kernels or ''getnstimeofday'' for kernel 5.x and later) is used for time stamping video events instead of ''jiffies'' and ''HZ''; however, the high resolution timer incurs additional overhead. Only used with Linux 32 Bit and Linux 64 Bit. The new -.TI option supersedes this option.

If bit 0x80 is set with non forceful memory allocation, frame buffer memory below 4 GiByte is requested; on 64 bit systems with more than 4 GiByte of memory, this allows allows use of 32 bit PCI cards. Option is quietly ignored for kernels that don't support the necessary feature(s).

Only used under Linux. Other bits to be described. Default: 0.


-MB n
If n≠0, the image frame buffer memory, of size specified by ''-IM'', is split into partitions of this size, in KiByte. Depending on operating system and ''-IA'' parameters, this may imply that each partition is individually allocated, so that a larger, total amount of memory can be allocated. Or that the contiguous memory is treated as individual partitions for the sake of the operating system and processor's virtual memory management, which could not otherwise ''map'' the entire frame buffer memory at once. In either case, (a) A single frame buffer can't extend across partitions, (b) The partition size should be a multiple of the frame buffer size so as to maximize the number of buffers and minimize wasted space, and (c) A maximum of 256 partitions is supported under 32 bit operating systems, a maximum of 256 partitions is supported under 64 bit operating systems. Default: 0.

-MH n
If n≠0, the amount of lower memory, in KiByte, to pass over before allocating the requested image frame buffer memory. This may be necessary for use with some graphics display or network interface cards which, a) May be allocating memory later than the PIXCI® driver, and b) May require memory with lower addresses. Only used with non-forceful image frame buffer allocation, under Windows NT, 2000, XP, XP(x64), Vista 32/64-Bit, 7 32/64-Bit, 8/10 32/64-Bit, and 11 64-Bit. Default: 0 KiByte under Windows NT, 2000, XP, Vista 32-Bit, 7 32-Bit, and 8/10 32-Bit; 512 KiByte under Windows XP(x64), Vista 64-Bit, 7 64-Bit, 8/10 64-Bit, and 11 64-Bit.

-MO n
Reserved for future use. Default: 0.

-MU n
If bit 0x01 is not set, the frame buffer memory is not mapped directly into the application's address space. If bit 0x02 is set, the frame buffer memory is not permanently mapped into the driver's address space. These options minimize use of the operating systems memory management resources, but may increase overhead in accessing frame buffer memory. These options are typically required when using very large amounts of frame buffer memory (typically, more than 1 or 2 GiByte under Windows NT, 2000, XP, Windows NT, 2000, XP, XP(x64), Vista 32/64-Bit, 7 32/64-Bit, 8/10 32/64-Bit, and 11 64-Bit or more than a few hundred MiByte under Windows 95/98/ME), but are not currently supported for all Video Format Configurations.

If bit 0x04 is not set, the frame buffer memory is not cleared after allocation, minimizing delay, particularly when using several GiBytes of frame buffer memory.

If bit 0x08 is not set, a portion of frame buffer memory is reserved for recording each per-frame buffer's capture status, such as stamping the time of capture. Use of frame buffer memory for capture status may not be supported when using forceful image frame buffer allocation. If bit 0x08 is set, memory is allocated dynamically from the operating system for recording each frame buffer's capture status. The amount of space reserved, or the amount of space allocated, is proportional to the number of frame buffers. The dynamic memory allocation option is not available under Windows 95, 98, or ME; and the per-frame buffer status is discarded upon closing the PIXCI® frame grabber(s).

If bit 0x20 is not set, a portion of frame buffer memory is reserved for serial data buffers used in conjunction with Camera Link serial communication. (For the PIXCI® CL3SD which has on-board frame buffer memory, a small static buffer is used in place of frame buffer memory). If bit 0x20 is set, memory is allocated dynamically from the operating system for serial data buffers. The dynamic memory allocation option is not available under Windows 95, 98, or ME.

If bit 0x40 is set, the frame buffer memory and memory used for recording per frame buffer's capture status is cleared (i.e. set to zero) whenever the capture format resolution, bit depth, bit packing, or color space options are changed. This is intended so that display of the contents of the frame buffer(s), under the new format but before a new image is captured, will show a black image (or green for YUYV formats) rather than ''garbled'' pixel data. This option is ignored when using forceful image frame buffer allocation, or for frame grabbers with on-board frame buffer memory.

Default: 0x01 under Windows 95, 98, ME. 0x28 under Linux 32 Bit and Linux 64 Bit prior to kernel 4.x; 0x29 for kernel 4.x and later. 0x29 under Windows NT, 2000, XP, XP(x64), Vista 32/64-Bit, 7 32/64-Bit, 8/10 32/64-Bit, 11 64-Bit.


-PO n
If n≠0, the polling period, in µseconds, for driver features that are not driven by an interrupt. Ignored under Tenberry DOS4GW DOS extender. Default: 5000 µseconds.

-QP n
The XCAP normally installs a bimodal interrupt handler so that XCAP interrupts are handled in both real and protected modes. The Tenberry DOS4GW DOS extender included with Watcom C/C++ does not have all of the features (DPMI services) required by XCAP, the Tenberry DOS4GW Professional DOS extender must be used. Alternately, if n≠0, an assigned auxiliary interrupt number (not IRQ number!) within Tenberry's range of auto pass-up interrupts: 0x08 to 0x2E. Only used with the Tenberry DOS4GW DOS extender. Default: 0.

-QS n
If n≠0, allow sharing the frame grabbers' assigned hardware interrupt with other devices. IRQ sharing is possible problem for cards using the older PCI bus w. IRQ pins, but not for cards using PCI Express and its Message Signaled Interrupts (MSI). Ignored under Tenberry DOS4GW DOS extender. Default: 1.

-QU n
If n≠0, utilize the frame grabbers' hardware interrupts. For PIXCI® A, A110, A310, CL1, CL2, CL3SD, D, D24, D32, D2X, D3X, D3XE, E1, E1DB, E4, E4DB, E4G2-2F, E4G2-4B, E4G2-F2B, E4TX2-2F, E4TX2-4B, E4TX2-F2B, E8, E8CAM, E8DB, e104x4-2f, e104x4-4b, e104x4-f2b, EB1, EB1-PoCL, EB1mini, EC1, ECB1, ECB1-34, ECB2, EL1, EL1DB, ELS2, SI, SI1, SI2, SI4, SV4, SV5, SV5A, SV5B, SV5L, SV7, and SV8 frame grabbers, the interrupt may be disabled if the polling period (-PO) is small relative to a field's period. For PIXCI® SV2 and SV3, disabling the interrupt will adversely affect all capture modes other than snap. For PIXCI® D, D24, and D32, the interrupt may be disabled only if the interrupt is not shared. For all PIXCI® frame grabbers operated under Tenberry DOS4GW DOS extender, use of hardware interrupts is required. Disabling use of interrupts is intended primarily for diagnosing interrupt conflicts, and is not recommended. Default: 1.

-SB n
Size of serial data buffers, in bytes, for PIXCI® frame grabbers supporting Camera Link cameras. Currently, the driver rounds the specified value to a power of 2. Default: 1024 bytes.

-SX n
Serial options, for PIXCI® frame grabbers supporting Camera Link cameras. If bit 0x01 is set, serial framing errors are ignored. Default: 0.

-SM n
Total amount of memory, in KiByte, on the computer system. This parameter and value is currently ignored by the PIXCI® driver, but used by XCAP's Driver Assistant in conjunction with -IM and -IA to note the ''context'' under which the -IM and -IA values were set.

Default: 0.


-XM n
If n≠0, reserve the proportionate share of image frame buffer memory for frame grabbers not opened by the first application, for use with other frame grabbers opened later. If 0, all image frame buffer memory is shared amongst the frame grabbers opened by the first application. Affects PIXCI® frame grabbers other than CL3SD and SI2, which have on-board frame buffer memory. Default: 1.

-SV5 n
Setting bit 0x02 enables compatibility with 430FX PCI controllers. Setting bit 0x04 enables compatibility with VIA/SIS PCI controllers. Only used with PIXCI® SV5, SV5A, SV5B, SV5L. Default: 0.

-TI n
If n=0, time stamping video events is disabled.

Under Linux: If n=1, the ''jiffies'' and ''HZ'' are used for time stamping video events. If n=2, the high resolution kernel timer (i.e. ''do_gettimeofday'' for earlier kernels or ''do_getnstimeofday'' for kernel 5.x and later) is used for time stamping video events. If n=3, the ''get_jiffies_64'' is used for time stamping video events.

Under Windows 95, 98, and ME: If n=1, the ''Get_Last_Updated_System_Time'' is used for time stamping video events.

Under Windows NT: If n=1, the ''KeQuerySystemTime'' is used for time stamping video events.

Under Windows 2000, XP, XP(x64), Vista 32/64-Bit, 7 32/64-Bit: If n=1, the ''KeQuerySystemTime'' is used for time stamping video events. If n=2, the ''KeQueryPerformanceCounter'' is used for time stamping video events. If n=3, the ''KeQueryInterruptTime'' is used for time stamping video events. If n=4, the ''KeQueryTickCount'' is used for time stamping video events.

Under Windows 8/10 32/64-Bit and 11 64-Bit: If n=1, the ''KeQuerySystemTime'' is used for time stamping video events. If n=2, the ''KeQueryPerformanceCounter'' is used for time stamping video events. If n=3, the ''KeQueryInterruptTime'' is used for time stamping video events. If n=4, the ''KeQueryTickCount'' is used for time stamping video events. If n=5, the ''KeQuerySystemTimePrecise'' is used for time stamping video events.

Each option has various advantages and disadvantages, as described by the operating system's documentation. Default: For backward compatibility, time stamping as per -WT or -LX is used.


-WT n
If bits 0x05 are set to 0x01 or to 0x05, alternate methods of Windows NT resource allocation are used, avoiding problems seen on some motherboards where the same resources are assigned to multiple frame grabbers. Only used with Windows NT.

If bit 0x20 is set, a high resolution kernel timer is used for time stamping video events. Windows documentation states that use of this timer incurs additional overhead. Only used with Window NT, 2000, XP, XP(x64), Vista 32/64-Bit, 7 32/64-Bit, 8/10 32/64-Bit, and 11 64-Bit. The new -TI option supersedes this option.

If bit 0x80 is set, frame buffer memory below 4 GiByte is requested; on 64 bit systems with more than 4 GiByte of memory, this allows allows use of 32 bit PCI cards, and/or allows allows use of 32 bit applications. Only used with Window XP, XP(x64), Vista 64-Bit, 7 64-Bit, 8/10 64-Bit, and 11 64-Bit.

if bit 0x100 is set, the driver applies a patch so that the frame grabber can be opened after Windows awakes from sleep or hibernation modes. Only used with Vista 32/64-Bit, 7 32/64-Bit, 8/10 32/64-Bit, and 11 64-Bit.

If bit 0x200 is set, the driver does not use IOCTL ''DIRECT'' mode.

If bit 0x1000 is set, the driver implements a work-around so that Windows sleep or hibernation does not adversely affect the operation of older PIXCI® frame grabbers

Only used under Windows. Other bits to be described. Default: 0x20.


-XU n
If n≠0, allow other applications to share use of frame grabbers previously opened for use by the first application. Not supported under Windows 95, 98, ME: Default: 0. Supported under Windows NT, 2000, XP, XP(x64), Vista 32/64-Bit, 7 32/64-Bit, 8/10 32/64-Bit, and 11 64-Bit: Default: 1. Supported under Linux: Default: 0. Not supported under Tenberry DOS4GW DOS: Default: 0.

 

 

 

4. Getting Started with XCAP

This chapter will guide the user through the initial steps common to most applications using the PIXCI® frame grabber: capturing, viewing, examining, and saving images. This guide is not intended to discuss every feature of every window in XCAP, only the most important features to ''get up and running''.

Following the previous instructions:

  1. The PIXCI® frame grabber has been installed.
  2. The camera has been connected to the PIXCI® frame grabber.
  3. The XCAP software has been installed.
  4. For XCAP-Plus, XCAP-Std, or XCAP-Ltd, but not XCAP-Lite or XCAP-Viewer, the authorization key has been installed on a USB port, or, for older systems, installed on the parallel port.
  5. Under Windows, the graphics display has been set for 16 bits (minimum required), or 24 or 32 bits (preferred), per pixel. Under Linux, the graphics display has been set to DirectColor or TrueColor.
  6. The PIXCI® driver for current version of Windows or Linux has been installed.
  7. The computer has been rebooted so that the installed driver and the modified graphics display settings (if any) have taken effect.

 

4.1. Start XCAP

Under Windows, start XCAP by clicking:

    Start (on the Windows Taskbar)
    All Programs (skip for Windows Vista & earlier)
    XCAP Imaging
    XCAP for Windows
Under Linux, start XCAP by executing:
    xcap
Or, start XCAP via its desktop shortcut.

The XCAP Main Window appears.

 

4.2. Open PIXCI® Frame Grabber

XCAP is normally configured to automatically open the PIXCI® frame grabber for use and show the PIXCI® Image Viewer window.

Alternately, in the XCAP Main Window, click:

    PIXCI®
    PIXCI® Open/Close
A dialog window appears.

Clicking:

    Open
opens the PIXCI® frame grabber for use, removes the Open/Close dialog.

Upon opening selected PIXCI® frame grabbers, XCAP may display a Camera & Format dialog listing various compatible cameras. Simply click:

    .. select camera from list ..
    OK
    Open

Opening the PIXCI® frame grabber creates a PIXCI® Image Viewer window showing the first PIXCI® frame buffer, creates a Capture & Adjust dialog with commonly used camera and video capture adjustments and creates a Shortcuts Toolbar for accessing the most commonly needed features.

The following windows are now active:

  1. The Main Window, which has options for reconfiguring the PIXCI® frame grabber, and has features independent of the PIXCI® frame grabber, such as loading images into image buffers unrelated to video capture hardware.
  2. The PIXCI® Image Viewer window, from which the PIXCI® frame buffers are captured, viewed, examined, processed, measured, and saved, with a status bar below the image with cursor coordinates, video frame rate, and other information.
  3. The PIXCI® Shortcut Toolbar, with shortcuts for the most commonly needed features relating to the PIXCI® frame grabber and its frame buffers. The Shortcuts may appear within the PIXCI® Image Viewer window, to the left of the image, rather than a separate window.
  4. A Capture & Adjust dialog, with commonly used camera specific and video capture adjustments, or a Capture & Adjust dialog with generic adjustments for use with any Camera Link camera, as specified in that frame grabber's EEPROM.

XCAP may have been configured for one or more variations, such as, (a) Automatically opening, or not opening, the PIXCI® frame grabber and displaying the PIXCI® Image Viewer, (b) Eliminating the Main Window with its menus integrated into the PIXCI® Image Viewer window, (c) Configuring the Shortcuts and/or Capture & Adjust features to be attached to the PIXCI® Image Viewer window rather than detached in their own windows, (d) Selecting whether the Shortcuts and/or Capture & Adjust features appear automatically, or only when:

    Capture
    Shortcuts
or
    Capture
    Adjustments
are clicked, or (e) Removing the status bar to increase the screen area available for image display. These variations allow custom configuration of XCAP, but do not affect the functionality of the Shortcuts or Adjustments features.

 

4.3. PIXCI® EB1mini, miniH2B, miniH2F, miniH2x4F, mf2280 Video Configuration

XCAP selects the camera for which the current PIXCI® EB1mini, miniH2B, miniH2F, miniH2x4F, or mf2280 frame grabber is intended, as coded into the frame grabber's EEPROM, and typically defaults, for area scan cameras, to capturing full video resolution from the specified camera. Or, if the frame grabber's EEPROM is coded for ''Generic Camera Link'' the capture resolution is initially set to 888×888 and easily customized, as described below.

To select a different camera from XCAP's list of predefined camera configuration files, or to select Generic Camera Link mode, from the Main window, click:

    PIXCI®
    PIXCI® Open/Close
    Close (if open)
    Camera & Format
    .. select camera from list ..
    OK
    Open

 

4.4. Capturing Images

Once the PIXCI® frame grabber is opened for use, images can be captured from the PIXCI® Image Viewer, by clicking:

    Capture
    Snap
or
    Capture
    Live
The Snap captures a single image into the current frame buffer, while Live continuously captures images into the current frame buffer and continuously updating the image shown on the graphics display.

The Live mode can be used to adjust the camera's focus, aperture, and position. The Live mode can be halted by clicking:

    Capture
    UnLive
A Live followed immediately by Unlive has the same effect as Snap, assuming the camera is in the most-common, free-run mode.

If the current video resolution and frame buffer memory size allows more than one frame buffer, clicking:

    Capture
    Adjustments
provides the:
    Current (Frame) Buffer:   0
which may be incremented or decremented at any time, whether in Live or UnLive mode. The window reached by clicking:
    Capture
    Adjustments
has convenient buttons that duplicate the Snap, Live, and UnLive features.

As three of the most commonly used operations, the Snap, Live, and UnLive are also available in the Shortcuts Toolbar, as two shortcuts with a graphic of camera; one for snap and the other for live/unlive. The Shortcuts also allow changing the current frame buffer, as four shortcuts with the graphic of a book's pages; switch to the first frame buffer, to the next frame buffer (e.g. current buffer +1), to the previous frame buffer (e.g. current buffer -1), and to the last frame buffer. The relative position of these shortcuts changes depending on whether the Shortcuts Toolbar is standalone window or within the PIXCI® Image Viewer window, and depending on the graphic display resolution and size of the windows; hovering the mouse over the shortcuts will explain the use of each.

 

4.5. Examining Images

4.5.1. Altering How the Image is Displayed

The PIXCI® Image Viewer can be moved and resized, using standard techniques (drag the window's title bar, drag the window's corner, etc). By default, the captured image is displayed with resizing, so that the entire image fits within the Image Viewer.

For many engineering and scientific applications, examination of individual pixel values is critically important. Resizing the image may ''hide'' defective pixels; resizing an image with interlace jitter may turn odd/even line striping into bars of striping.

To view pixels without resizing artifacts, from the PIXCI® Image Viewer, click:

    View
    Display
    Resize: None (Image Pixel = Display Pixel)
Each image pixel is now displayed as exactly one graphics display pixel. Of course, depending upon the image resolution, graphics display resolution, and window size, the entire image may not fit. If the image doesn't fit, then (a) Scroll bars appear, allowing the viewed portion of the image to be panned and scrolled throughout the entire image, and (b) Moving the mouse with right button held over the displayed image causes panning or scrolling (if there is more image to be seen in the direction the mouse is moving).

For high resolution displays and lower resolution images, using:

    Resize: Pixel Replication/Decimation
will provide a more pleasing display; duplicating pixel values to fill the display while still avoiding resizing artifacts.

For cameras that don't have square pixels (i.e. aspect ratio), after selecting:

    Resize: None (Image Pixel = Display Pixel)
or
    Resize: Pixel Replication/Decimation
the displayed image's aspect ratio may not appear correct; the aspect ratio can't be corrected without some form of resizing or resampling! To display the image with the correct aspect ratio, choose:
    Resize: To Window & Aspect Ratio

4.5.2. Zoom, Mirror, Flip

To magnify the displayed image, from the PIXCI® Image Viewer, click:

    View
    Zoom, Pan, Scroll
    Zoom On

The magnification factor can be adjusted with:
    Zoom Ratio
Or, if
    Zoom Interact
is enabled, magnification can be increased or decreased by clicking on the image. When magnified, only a portion of the image is visible. As described above, the viewed portion may be panned and scrolled through the entire image with the scroll bars, or by moving the mouse over the image with right button held.

Alternately, to use ''spot'' magnification in XCAP-Plus, XCAP-Std, or XCAP-Ltd, from the PIXCI® Image Viewer, click:

    Examine
    Pixel Magnifier
The magnification factor can be adjusted with:
    Magnification
The ''spot'' size and shape can be adjusted with:
    Magnifier Size
    Square
vs  Circle
The ''spot'' position can be moved interactively by clicking:
    Coord<=>Cursor
A cursor now appears over the image window; clicking the mouse on the image window moves the cursor to that position, and spot magnifier to be centered on that position.

To re-orient the displayed image on to its side or top, or to mirror the displayed image, from the PIXCI® Image Viewer, click:

    View
    Flip & Mirror
and select an up, down, left or right orientation and select one of two mirror options.

4.5.3. Numeric Pixel Values

To examine numeric values of pixels as a table, from the PIXCI® Image Viewer, click:

    Examine
    Pixel Peek
A table of pixel values for a portion of the image appears, showing pixel values in the neighborhood of the displayed X and Y coordinates. The portion of the image numerically displayed can be moved by using the scroll bars, or by entering new X and Y coordinates.

The portion of the image which is numerically displayed can also be moved interactively by clicking:

    Coord<=>Cursor
A cursor now appears over the image window (the Pixel Peek window may have to be moved to the side so that both the pixel peek window and the image viewer window can be seen); clicking the mouse on the image viewer window moves the cursor to that position, and repositions the numerically displayed portion of the image to be centered at that position.

To examine pixel values as a two-dimensional graph, click:

    Examine
    Pixel Plot
and
    Controls
    Where
and Plot Row
or  Plot Column

A graph of pixel values for a line (column) of the image appears, showing pixel values along the line (column) at the displayed Y (X) coordinate. The selected line (column) of the image can be moved interactively by clicking:
    Coord<=>Cursor
A cursor now appears over the image window; clicking the mouse on the image window moves the cursor to that position, and repositions the displayed line (column) to that Y (X) coordinate.

 

4.6. PIXCI® EB1mini, miniH2B, miniH2F, miniH2x4F, mf2280 Video Adjustments

4.6.1. Video Resolution

For area scan cameras, reducing the video resolution (the number of pixels captured per line and column) allows capturing more video frames in a given size of frame buffer memory. From the PIXCI® Image Viewer, click:

    Capture
    Adjustments
    Res(olution)
Click:
    Set Video Window
and draw the new desired area to be captured by left clicking and dragging over the displayed image. Click:
    OK
to accept the new capture resolution. Note: Changing the capture resolution will destroy any images previously captured in the frame buffers!

For line scan cameras, the number of scanned lines which compose each two-dimensional image can be set: From the PIXCI® Image Viewer, click:

    Capture
    Adjustments
    Res(olution)
Set the:
    Lines per Field
to the desired number.

The

    Capt(ure)
    Frame Buffers
shows the number of frame buffers available with the current selections.

4.6.2. Saving the Video Configuration

The selections under the PIXCI® Image Viewer:

    Adjustments
are automatically saved when the PIXCI® frame grabber is closed, and/or XCAP is exited. When the PIXCI® frame grabber is next opened, clicking (from the XCAP Main Window):
    PIXCI®
    PIXCI® Open/Close
    Camera & Format
Choose:
    Open w. last used Video Setup
to use the previous video setup, or choose:
    Open w. default Video Setup
to start afresh with the default video format and resolution.

4.6.3. Camera Controls

Most of the supported cameras provide controls and features above and beyond sending imagery to the PIXCI® frame grabber. For most cameras, these controls are either switches on or within the camera, commands sent through an RS-232 port, or commands sent through Camera Link serial.

4.6.3.1. Integrated Camera Controls

For selected cameras, XCAP provides convenient, camera specific, integrated, controls.

XCAP integrates controls within the Capture & Adjust window. The left side of the Capture & Adjust window contains controls for the PIXCI® frame grabber. The right side of the Capture & Adjust window provides camera specific controls; these utilize the same concepts and terminology as specified by the camera's manufacturer, so that the camera manufacturer's documentation can be directly applied to these features and controls.

For cameras with switches, the camera's settings can neither be set nor sensed by XCAP! Instead, the Capture & Adjust window shows a sketch of the camera's controls. After selecting a camera operating mode by setting the camera's switches, adjust the sketch's controls to match those of the camera. This convenient technique advises XCAP of the camera's configuration, and allows automatically setting the PIXCI® frame grabber's configuration to match.

For cameras with RS-232 controls, connect the camera's RS-232 connector to the computer's RS-232 (aka ''COM'') port. In the Capture & Adjust window, use:

    RS-232 Port
to select the connected ''COM'' port (under Windows) or ''ttyS'' device (under Linux). Thereafter, any change of the camera's controls shown in the Capture & Adjust window simultaneously programs the camera and automatically sets the PIXCI® frame grabber's configuration to match! There is no need to run the camera manufacturer's separate RS-232 control program.

For cameras Camera Link serial controls, the serial commands are sent via the same Camera Link cable used for image data. As for cameras with RS-232 controls, any change of the camera's controls shown in the Capture & Adjust window simultaneously programs the camera and automatically sets the PIXCI® frame grabber's configuration to match. There is no need to connect a second cable, nor any need to run the camera manufacturer's separate control program.

4.6.3.2. Generic Controls

For other cameras, XCAP offers generic controls. The camera should be configured by following the camera manufacturer's instructions, typically using a ''Control Panel'' application supplied by the camera manufacturer.

XCAP provides generic controls within the Capture & Adjust window. The right side of the Capture & Adjust window provides Camera Link specification controls, using standard Camera Link terminology; these controls allow configuring the PIXCI® frame grabber's video resolution, trigger modes, bit depth, color space, etc. so as to be consistent with the camera. The left side of the Capture & Adjust window provides the remaining controls for the PIXCI® frame grabber.

4.6.4. Color Cameras

For color cameras with so-called ''Bayer format output'', it is XCAP software which performs color adjustments and white balancing, not the camera. From the PIXCI® Image Viewer, click:
    Capture
    Adjustments
    Color (or Clr)
For most common conditions:
  1. Select one of the pre-defined correlated color temperatures, either based on best appearance, or matching the color temperature of the current illumination. The 5000°K selection is average overcast daylight, the 4100°K selection is a typical cool white fluorescent bulb, and the 2800°K selection is a typical 60 to 100 watt tungsten bulb.
  2. Choose one of the predefined color qualities, trading quality for speed.
  3. If none of the predefined settings is satisfactory, start with the best setting and click:
        Customize
    
    Cover the camera's lens and click:
        Black Balance
    
    Finally point the camera at a white target (but preferably not a target using fluorescent brighteners) and click:
        White Balance
    

 

4.7. Saving Images

To save a captured image, from the PIXCI® Image Viewer, click:

    File
    Save Image
Choose a file format, such as:
    TIFF
    BigTIFF
    BMP
    FITS
    JPEG/JFIF
    Portable Map
    X/Y Binary
    X/Y ASCII
The JPEG/JFIF and Windows BMP formats have near-universal support among graphics and imaging applications, with support for 8 bit monochrome and 24 bit RGB color; JPEG/JFIF provides ''lossy'' compression, with adjustment for image quality versus file size. The TIFF format has near-universal support among imaging applications supporting a wide variety of pixel formats and bit depth; TIFF is suggested for saving and reloading an image into XCAP, and suggested for exporting images to other applications. The BigTIFF format is variation of TIFF allowing file sizes larger than 4 Gbyte; however it is not commonly supported. Both TIFF and BigTIFF offer options for lossless compression. The FITS format is commonly used within the astronomy community.

The X/Y Binary and X/Y ASCII export raw pixels, left to right, top to bottom, with no excess information such as dimensions, bit depth, date, format, etc; these are useful for exporting images to a spreadsheet (X/Y ASCII), or to your own program in which the image's dimensions are assumed and can simply read a 2-D array of values. The Portable Map also exports raw binary pixels, left to right, top to bottom, but with minimal information, such as dimensions, at the start of the file.

After selecting a file format, enter a file name:

    File Name:  xx.tif
and click
    OK
to save the image. Or, use the:
    Browse
button to access the standard Windows or Linux File Dialog, click
    Accept
to accept the filename selected by browsing, and click
    OK
to save the image.

 

4.8. Capturing an Image Sequence

To capture an image sequence into the frame buffers:

    Capture
    Sequence Capture
    Video to Frame Buffers
select:
    Start/End All Buffers
to capture into all of the frame buffer memory,
    Capture Video Fastest
to capture each video frame (rather than intentionally skipping frames),
    Linear Sequence
to capture into each frame buffer once, then stop (rather than capturing continuously, reusing frame buffers until explicitly stopped),
    Event Free
to capture without waiting for additional events, and and click:
    Record

The VideotoFrameBuffers captures into frame buffer memory; to request more frame buffer memory and a thereby a longer sequence use the

    Driver Assistant

A variety of Sequence Capture features are available, providing tradeoffs between capture rate vs. convenience vs. total number of images captured. The Video to Frame Buffers captures sequences directly into pre-configured frame buffer memory, and can support the maximum frame rate. The Video to Virtual Memory captures and copies sequences into host computer (virtual) memory which is conveniently allocated as-needed, but may not support maximum frame rate capture for all cameras on all computers. The Video to Disk File captures and copies sequences into a disk file in an efficient, internal format (after capture the sequence can be saved in a standard format), but frame rate is limited by the bandwidth of the computer and disk subsystem.

The Video to Image Files captures and copies sequences directly into standard format image files, but with more overhead than the Video to Disk File feature. Optionally, each captured image can also be saved offsite directly to an FTP URL. Optionally, the HTTP server (i.e. web server) feature of XCAP allows access to the sequence of images - as they are being captured - via an internet web browser.

 

4.9. Saving Image Sequences

To save a captured image sequence, from the PIXCI® Image Viewer, click:

    File
    Save Image Sequence
Choose a file format, such as:
    One TIFF w. Sequence
    One AVI/DIB w. Sequence
    One AVI/MJPG w. Sequence
    One BigTIFF w. Sequence
    One FITS w. Sequence
    One Portable Map w. Sequence
    One X/Y Binary w. Sequence
    One X/Y ASCII w. Sequence
    Sequence of BMP's
    Sequence of BigTIFF's
    Sequence of FITS's
    Sequence of JPEG/JFIF's
    Sequence of TIFF's
    Sequence of Portable Map's
    Sequence of X/Y Binary's
    Sequence of X/Y ASCII's
The One TIFF, One BigTIFF, One FITS, One Portable Map One X/Y Binary, and One X/Y ASCII w. Sequence save the entire image sequence into a single file, with similar utility as described above for the corresponding file format.

The One AVI/DIB and One AVI/MJPG w. Sequence save the entire image sequence as one Windows AVI file using a ''DIB'' or a ''MJPG'' codec, respectively; essentially multiple BMP or multiple JPEG/JFIF formated images, respectively, with the same supported bit depth and compression options described above.

The other options save each image as an individual file.

Only the One TIFF q. Sequence format and the Sequence of ... formats are available in XCAP-Lite.

After selecting any of the ''One .. w. Sequence'', file formats, enter a file name:

    File Name:  xx.tif
and click:
    OK
to save the image(s). Or, use the:
    Browse
button to access the standard Windows or Linux File Dialog, click:
    Accept
to accept the filename selected by browsing, and click:
    OK
to save the image(s).

If using any of the ''Sequence of ..'' file formats, enter a file name pattern:

    File Name:  xx???.tif
where the ''?'' characters will be replaced by a numerical index, (enter sufficient ''?'' characters as per sequence length; three ''?'''s are sufficient for 1000 images) and click:
    OK
to save the image(s).

 

4.10. Additional XCAP Documentation

For additional guidance in using XCAP, click

    Help
    XCAP Reference Manual
to browse the full manual.

 

 

 

5. XCAP Software Guide

XCAP is a family of sophisticated, interactive, imaging programs specifically designed to support the PIXCI® series of frame grabbers, but also able to process and analyze images from other imaging sources. Several versions of XCAP are available: XCAP-Plus, XCAP-Std, XCAP-Ltd, XCAP-Lite, and XCAP-Viewer. All versions share the same user interface and menu structure, but selected features in XCAP-Std, XCAP-Ltd, XCAP-Lite, and XCAP-Viewer are not operational. XCAP is distributed on CD/DVD, or downloadable from the EPIX, Inc. website. After installation, a 12 character activation or ID code[6] is entered to configure XCAP as either XCAP-Plus, XCAP-Std, XCAP-Ltd,[7] or XCAP-Lite; or, lacking a valid activation or ID code, configured as XCAP-Viewer.

XCAP-Std is an interactive, imaging program designed for scientific, industrial, and machine vision applications. XCAP-Std supports the PIXCI® frame grabber, providing video format and resolution configuration; continuous (live), video rate sequence, and triggered capture; and single or sequence, zoomed or resized, display. The image frame buffers of PIXCI® frame grabbers can be loaded, examined, processed, analyzed, measured, printed, annotated, and saved.

XCAP-Std also allows loading, analyzing, modifying, and saving a pre-existing image or image sequence with size, pixel depth, and color space independent of the PIXCI® frame grabber's configuration; XCAP-Std can be used with pre-existing images even when the PIXCI® frame grabber is not present. XCAP-Std can also acquire images from TWAIN compliant devices.

XCAP-Plus provides extra, advanced, features in addition to all of the capabilities of the XCAP-Std, such as support for specialized, optional, hardware.

XCAP-Ltd is a simplified version of XCAP-Std. XCAP-Ltd provides the same image acquisition and PIXCI® frame grabber control capabilities, the same image display features, and the same image loading, examining, printing, and saving of single image or sequences of images. Only minimal image processing, measurement, analysis, and scripting features are functional. XCAP-Ltd can be used with pre-existing images even when the PIXCI® frame grabber is not present.

XCAP-Lite is a much simplified version of XCAP-Std. XCAP-Lite provides similar image acquisition and PIXCI® frame grabber control capabilities, video format and resolution configuration; continuous (live), video rate sequence, and triggered capture; and single or sequence, zoomed or resized, display. XCAP-Lite also provides some of the image loading, examining, printing, and saving features, but minimal processing, measurement, analysis, and scripting features are functional. XCAP-Lite allows loading and saving single images, as well as image sequences in TIFF format.

XCAP-Viewer allows browsing through the dozens of processing, measurement, analysis, and graphics features provided in XCAP-Plus, XCAP-Std, XCAP-Ltd, or XCAP-Lite. XCAP-Viewer can load and display pre-existing single images. The PIXCI® frame grabber can't be operated with the XCAP-Viewer version.

As XCAP-Plus, XCAP-Std, XCAP-Ltd, XCAP-Lite, and XCAP-Viewer share many common features, this manual typically refers to all versions as XCAP, except where explicitly differentiated.

The XCAP features are organized into two major types of windows, the Main Window and one or more Image Viewer Windows.

For each image, or sequence of images, an Image Viewer Window shows that image, or a selected image of that sequence, and via its menu bar allows viewing, examining, processing, analyzing, or drawing upon that image (sequence). The Image Viewer Window associated with the PIXCI® frame grabber's frame buffers also provides features for capturing new images. There can be multiple Image Viewer Windows for the same image (sequence), allowing, for example, viewing the image both magnified (i.e. zoom) and unmagnified, or simultaneous viewing of different images of a sequence.

The Main Window allows creating new image (sequences), and thus new Image Viewer Windows, either by loading a new image from file, explicit specification of the new image's dimensions, or by opening the PIXCI® frame grabber for use. Video setup for the PIXCI® frame grabber, such as modifying the video resolution or color space, are also in the Main Window; these features may close and re-create the PIXCI® frame grabber's Image Viewer Window. The Main Window also provides features not directly associated with an image (sequence), such as scripts, RS-232 device control, and features to customize XCAP.

 

5.1. The Main Window

The XCAP main window provides a menu bar with File, Images, Scripts, Utility, PIXCI®, and Help features.

5.1.1. Main Window - File

The main window's File allows loading of pre-existing images into new image buffers, displaying attributes about pre-existing images, and acquiring images from TWAIN compliant devices.

The Load New Image and Load New Image Sequence creates a new image buffer (sequence) with dimensions, pixel depth, and color space matching a specified AVI (Audio Video Interleaved), BigTIFF (Tagged Image File Format extended for large file sizes), BMP (Bitmap), FITS (Flexible Image Transport System), JPEG (Joint Photographic Exports Group), PBM/PGM/PBM (Portable Bit/Gray/Pixel Map), TIFF (Tagged Image File Format), VIF (Video Frame Files - Video to Disk) or multimedia format file(s), and loads the image(s) from the file(s). This feature, and the image buffer (sequence) created, is unrelated to the PIXCI® frame grabber's frame buffers. After creation and loading, the new image (sequence) is displayed, processed, and analyzed in a new instance of The Image Viewer Window, described below. Using wild cards, the Load New Image can also load multiple image files - each to their own new image buffer.

The Load New Image can also load images directly from an Internet URL.

The Image File Info displays information about a specified AVI, BigTIFF, BMP, FITS, JPEG, PBM/PGM/PPM, TIFF, or VIF format file without loading the image. The information displayed includes the image's dimensions, pixel depth, color space, palette option, and other file format specific information.

The TWAIN Select Source and TWAIN New Acquire allow using XCAP as a TWAIN Application, acquiring images from TWAIN compliant imaging devices (TWAIN Sources). The TWAIN Select Source allows selecting which TWAIN Source is to be used, and the TWAIN New Acquire allows acquiring one image from the TWAIN Source.

The Window List displays a list of active windows belonging to XCAP; selecting a window causes that window to appear, if previously hidden, and/or to appear over other windows (subject to the priority of selected windows to always appear ''on top'').

5.1.2. Main Window - Images

The main window's Images allows creating new image buffers and activating any existing image windows that may not be on-screen.

The New Image creates a new image buffer, or sequence of image buffers, with specified dimensions, pixel depth, color space, and palette. This feature, and the image buffer created, is unrelated to the PIXCI® frame grabber's frame buffers. After creation, the new image is displayed in a new instance of The Image Viewer Window, as described below.

Underneath New Image are listed all existing image windows, whether for PIXCI® frame grabber frame buffers, or for independent image buffers. (The image window for PIXCI® frame grabber frame buffers appears only after the PIXCI® frame grabber has been opened for use, see below). An image window which has been closed and is thereby off-screen can be reactivated by clicking the image window's name.

5.1.3. Main Window - Scripts

The main window's Scripts provides features for recording and playing scripts. A script recording contains most of the user's interactions with the windows of XCAP; playing the script duplicates the original actions.

Some user actions are not recorded. Using the mouse to drag the cursor or other graphic across an image is not recorded as these actions are highly dependent upon image content (such as the typical scenario of dragging the cursor until it is positioned next to an artifact in a captured image), would likely be inappropriate to other captured images, and recording each mouse ''step'' would consume a significant amount of disk space. Instead, after positioning the cursor interactively the user can record the final position by clicking the appropriate numeric cursor coordinates. Similarly, the activation of a feature with shortcut keys or shortcut icons is not recorded; instead features can be activated via the non-shortcut alternative, which is recorded.

A recorded script is in a human readable form and can be altered with any common editor capable of handling ASCII text, allowing scripts to be modified or combined. A selected script may be executed automatically after XCAP starts, this feature is set in Utility, Program Setup, Startup Script.

The Load Tool Bar provides one or more user-defined tool bars of shortcuts, each shortcut represented by an icon which, when clicked, executes a user-specified script. Each shortcut may also specify an optional keyboard key which, when pressed, also executes the user-specified script.

The Script Remote Control allows using XCAP as a hidden, off-screen, ''black box''; any end-user application that can manipulate text files, can also remotely control XCAP.

5.1.4. Main Window - Utility

The main window's Utility provides an assortment of features that are of secondary importance; features that allow fine tuning of XCAP, or features needed in relatively few circumstances.

The Black Board allows customizing XCAP, creating non-procedural programs, and collecting data. The black board allows inter-connecting the numeric and text field of other windows; computed results, such as center-of-mass, may be written onto the black board - parameters for other features, such as the coordinates of a displayed grid, may be extracted from the black board - combining these automatically repositions the grid as the center of mass is recomputed! Other features allow computed values (similar to a spreadsheet), ''push''ing buttons, timed updates, creating a report to file or an RS-232 port, collecting data, and graphing the black board's contents.

A Message Log window lists warnings and errors that arise from performing various operations. By default, the message log window appears automatically when a message is added, and disappears a few seconds later. Auto appearance, auto hide, and audible clicks can be disabled (from the message log window's menu bar). The menu-bar's Message Log allows explicit activation of the message log window.

The Program Setup shows information about the installed XCAP components, such as their revision level, and sets various configuration options. For versions of XCAP that require an authorization key, it also shows the ID of the key required by the instant copy of XCAP.

The Program Setup allows specifying the name of a script to be executed when XCAP starts, whether warning pop-up windows (if any) are to be shown, whether previously saved settings are to be loaded, and other similar initial or terminal conditions.

The Program Setup also enables user-defined translation of XCAP labels and messages for use in non-English speaking countries.

The Windows Info displays information about the current Windows environment, such as memory usage and the graphics display system's features, as reported by Windows.

The Linux Info displays information about the current Linux environment, such as memory usage and the graphics display system's features, as reported by Linux. The Java Info displays information about the status of Java, under which XCAP runs. Both of these features are primarily of use in resolving questions submitted to EPIX, Inc. Technical Support.

The Window Style allows setting some characteristics of XCAP windows, such as color or character size and font. Some characteristics of window style are instead controlled by the Windows Control Panel.

The Audio Clip (only under Windows) allows recording and playing short audio ''clips''.

The RS-232 Terminal allows ''raw'' communication with a camera or other device connected via the computer's RS-232 port. The RS-232 Terminal is designed specifically for device control, including options to communicate with byte values, rather than as a common ''terminal emulator''. XCAP may also provide more convenient, camera-specific ''smart'' controls, provided after a camera-specific frame grabber is opened, via the Capture - Adjustments.

The I/O Port Peek & Poke allows controlling arbitrary devices accessible via I/O port peeks and pokes. This feature must be used with caution; peeking or poking arbitrary ports will cause computer malfunction! This feature is only available under Windows 95, 98, and ME.

The Screen Capture allows capturing the current graphics display screen, saving the graphics to a file, or printing the graphics. The Screen Capture also allows capturing numeric and textual parameters into a text file, suitable for loading into a spreadsheet or other programs.

The Volpi intralux dc-1100 and Illumination Technologies 3900 provide support for controlling these light sources through their RS-232 ports.

The Birger EF232 provides support for controlling the Birger EF232 RS-232 Lens Mount.

The Fujinon CCTV Lens provides support for controlling Fujinon CCTV Lenses that follow the Fujinon C10 Protocol.

The Directed Perception Pan-Tilt Unit provides support for controlling the Directed Perception Pan-Tilt Units.

The Sagebrush Pan-Tilt Gimbal provides support for controlling the Sagebrush Pan-Tilt Gimbals that follow the Sagebrush 2.0 Protocol.

The EPIX® SILICON VIDEO® 20C-CL, EPIX® SILICON VIDEO® 20M-CL, EPIX® SILICON VIDEO® 1514CL, and EPIX® SILICON VIDEO® 1820CL provide support for configuring the EPIX® SILICON VIDEO® 10C-CL, SILICON VIDEO® 10M-CL, SILICON VIDEO® 20C-CL, SILICON VIDEO® 20M-CL, SILICON VIDEO® 1514CL, and SILICON VIDEO® 1820CL cameras via a virtual ''COM'' port (under Windows), a virtual ''ttyS'' device (under Linux), or a Camera Link Serial API DLL (i.e. a clserXXX.DLL, under Windows). These are provided for configuring the camera when using a frame grabber other than an PIXCI® frame grabber, leaving configuration of the frame grabber to its software. When using a PIXCI® frame grabber, the alternative PIXCI® - Open/Close is recommended as it provides integrated controls for both camera and frame grabber.

5.1.5. Main Window - PIXCI®

The main window's PIXCI® allows initiating access to the PIXCI® frame grabber and provides configuration options. Actual operation of the PIXCI® frame grabber is performed through the PIXCI® image viewer window's menu-bar.

The PIXCI® Open/Close allows opening access to, or closing access to, the PIXCI® frame grabber. Once open, the model, and submodel or preset camera & format selection, as appropriate, of the PIXCI® frame grabber is available via the Board Info button. After opening, the contents of the PIXCI® frame grabber's image frame buffer(s) are displayed in a new instance of The Image Viewer Window, along with a tool bar of PIXCI® Image Viewer - Capture - Shortcuts and a status bar of Image Viewer - View - Status Bar are shown as described below.

The PIXCI® Video Setup allows configuring the video format, video resolution and other, model specific, video characteristics. For the PIXCI® SV2, SV3, SV4, SV5, SV5A, SV5B, and SV5L models, the PIXCI® Video Setup allows selecting NTSC, RS-170, NTSC/S-VIDEO, CCIR, PAL, or PAL/S-Video formats, allows selecting the video window size, capture resolution, and other video acquisition characteristics.

For the PIXCI® SV7 models, the PIXCI® Video Setup allows selecting NTSC, RS-170, CCIR, or PAL formats , allows selecting the video window size, capture resolution, and other video acquisition characteristics.

For the PIXCI® SV8 models, the PIXCI® Video Setup allows selecting NTSC, RS-170, NTSC/S-VIDEO, CCIR, PAL, or PAL/S-Video formats, allows selecting the video window size, capture resolution, and other video acquisition characteristics.

For the PIXCI® A310 model, the PIXCI® Video Setup allows selecting Video 720x480i 60Hz (RS-170), Video 720x480i 60Hz RGB, Video 720x576i 50Hz (CCIR), Video 720x576i 50Hz RGB, Video 1920x1080i 60Hz, Video 1920x1080i 60Hz RGB, Video 1920x1080i 50Hz, Video 1920x1080i 50Hz RGB, Video 1920x1080p 60Hz, Video 1920x1080p 60Hz RGB, Video 1920x1080p 50Hz, Video 1920x1080p 50Hz RGB, Video 1280x720p 50Hz, Video 1280x720p 50Hz RGB, Video 1280x720p 60Hz, Video 1280x720p 60Hz RGB, RS330 720x480i 60Hz, RS343 875i 60Hz, RS343 875i 60Hz RGB, SVGA 800x600 60Hz, SVGA 800x600 60Hz RGB, SXGA 1280x1024 60Hz, SXGA 1280x1024 60Hz RGB, VGA 640x480 60Hz, VGA 640x480 60Hz RGB, XGA 1024x768 60Hz or XGA 1024x768 60Hz RGB formats, allows modifying the PLL, A/D, and sync processor parameters to accommodate other video formats, allows selecting the capture resolution, and selecting other video acquisition characteristics. For the PIXCI® A110 model, the PIXCI® Video Setup is similar, but does not allow selecting RGB formats.

For the PIXCI® CL1, CL3SD, D, D24, D32, D2X, D3X, and D3XE models, fewer options are provided, as these frame grabbers are each customized to specifically support one camera, or a related group if cameras. For the PIXCI® CL2, E1, E1DB, E4, E4DB, E4G2-2F, E4G2-4B, E4G2-F2B, E4TX2-2F, E4TX2-4B, E4TX2-F2B, E8, E8DB, e104x4-2f, e104x4-4b, e104x4-f2b, EB1, EB1G2, EB1-PoCL, EB1G2-PoCL, EB1mini, miniH2B, miniH2F, miniH2x4F, mf2280, EC1, ECB1, ECB1-34, ECB2, EL1, and EL1DB models, which provide universal support for Camera Link cameras, fewer options are provided. For the PIXCI® E8CAM, ELS2, SI, SI1, SI2, and SI4 models, which support SILICON VIDEO® cameras, fewer options are provided. For all of these, a different camera can be selected, if available, via PIXCI® Open/Close, Camera & Format.

The current video setup is automatically saved when access to the PIXCI® frame grabber is closed, and reloaded when the PIXCI® frame grabber is later opened. The PIXCI® Export Video Setup and PIXCI® Import Video Setup may be used to explicitly save or reload the current video setup, such as to choose amongst several favorite setups, or to export the current video setup to the XCLIB library.

The PIXCI® Status shows the PIXCI® frame grabber's current status, such as the state of the general purpose (formerly referred to as an external TTL) trigger input(s) and output(s), the number of elapsed video fields, the board's model, submodel or preset camera & format selection, as appropriate, and configured image memory size.

The PIXCI® Serial Terminal allows ''raw'' communication with a camera connected to the serial port on selected models of the PIXCI® frame grabber. For many cameras, XCAP includes more convenient, camera-specific ''smart'' controls, provided after a camera-specific frame grabber is opened, via the Capture - Adjustments.

The PIXCI® Connections provides, as appropriate for the specific model of PIXCI® frame grabber, a map of the board's connections, connectors, option jumpers, and adjustments.

The PIXCI® Camera Info provides a list of cameras and video formats supported by XCAP and various PIXCI® frame grabbers. The PIXCI® Camera Info also allows viewing a non-operational Capture - Adjustments window (i.e. the ''Control Panel'', which provides integrated control of both frame grabber and any supported camera).

The PIXCI® TWAIN Sourcery (only under Windows) allows using XCAP, in conjunction with the ''XCAP Sourcery'' TWAIN driver, as a component of a ''smart'' TWAIN Source, allowing other applications to capture images from the PIXCI® frame grabber, while XCAP provides frame grabber controls, camera controls, and, optionally, image preprocessing.[8] The PIXCI® TWAIN Sourcery should not be confused with TWAIN New Acquire; the former allows XCAP to provide image data to other, TWAIN compliant applications; the latter allows XCAP to accept image data from other TWAIN compliant sources. The TWAIN New Acquire should never be used to attempt to acquire image data from the PIXCI® TWAIN Sourcery!

The PIXCI® Image-Pro Sourcery (only under Windows) allows using XCAP, in conjunction with the ''XCAP Sourcery'' Image-Pro driver, as a component of a ''smart'' video source, allowing Image-Pro to capture images from the PIXCI® frame grabber, while XCAP provides frame grabber, camera controls, and, optionally, image preprocessing.[8]

 

5.2. The Image Viewer Window

Each image buffer (sequence), or frame buffer (sequence), is displayed in an image viewer window, which is the focus of activity for examining, processing, or analyzing that image buffer (sequence). The image viewer window provides a menu bar with File, View, Examine, Modify, Measure, Draw, AOI, and Help features. The image viewer window associated with the PIXCI® frame grabber's frame buffer(s) also provides a Capture feature.

5.2.1. Image Viewer - File

The image viewer window's File allows saving, loading, or printing the image, shows information about the image's dimensions, pixel depth and color space, and allows closing the image viewer window.

The Load Image and Save Image allow saving or loading the image in a variety of file formats. The Load Image, unlike the Load New Image described above, loads an image file into the current image buffer, resizing and/or color converting to fit the image buffer's existing dimensions, pixel depth, and color space. The Load Image can also load images directly from an Internet URL.

For image viewer windows associated with an image buffer sequence, the Save Image Sequence and Load Image Sequence allow saving or loading multiple images of the sequence as a numbered sequence of image files, or as a single AVI, BigTIFF, FITS, PBM/PGM/PPM, or TIFF format image file with multiple images. Save Image can also save images directly to an FTP URL.

The E-Mail Image allows directly e-mailing the image, in a variety of file formats, from within XCAP.

The Print Image allows printing the image; either via the operating system's built-in image printing feature(s) which typically supports a wide variety of printers, or via EPIX® imaging drivers which support only the most popular printers, but providing precise control of print options.

The Image Attributes shows the image's (or image sequence's) dimensions, pixel depth, and color space.

The Duplicate Image and Duplicate Image Sequence allows creating a new image buffer and copying the current image, or creating a new sequence of image buffers and copying the current image sequence, respectively, in one step. It optionally allows copying the image's (or image sequence's) current appearance, as modified by the palette and graphics, instead of the underlying image (or image sequence).

The BlackBoard Image allows copying the image's pixel values into the Black Board.

The Close Viewer closes the window, but does not destroy the image (sequence). The Close & Dispose of Image closes the window and destroys the image (sequence). The image viewer window associated with the PIXCI® frame grabber's frame buffer(s) does not provide a Close & Dispose of Image; an image viewer window is available whenever the PIXCI® frame grabber is open for use.

5.2.2. Image Viewer - View

The image viewer window's View provides options governing the appearance of the displayed image.

The Shortcuts allows activating or deactivating a tool bar of icons providing shortcuts for accessing often used features, and is described under Image Viewer - View - Shortcuts.

The Status Bar allows activating or deactivating a small status bar with current information, and is described under Image Viewer - View - Status Bar.

The Menu Bar allows activating or deactivating the menu bar; when deactivated, clicking the mouse right-click button allows restoring the menu bar.

For image viewer windows associated with the PIXCI® frame grabber's image frame buffer(s), the Adjustments allows setting common adjustments, as suitable for the model of the PIXCI® frame grabber in use, and is described under PIXCI® Image Viewer - Capture.

The Full Screen allows displaying the image in the full graphics display screen without the menu bar, centered with black border (if needed), and with little or no window ''frame'' around the image. The previous display mode can be restored via a mouse right-click.

The Always-On-Top allows forcing the image viewer window, and its subwindows, to always be ''above'' other windows; subject to the other windows' also requesting Always-On-Top, and the whims of the host operating system. This option is typically useful only when XCAP is being used in combination with other applications, such as in conjunction with the PIXCI® TWAIN Sourcery or PIXCI® Image-Pro Sourcery feature. The Always-On-Top feature is only supported under Windows.

The Refresh forces the displayed image to be redrawn once; normally manual refresh is not needed, but occasionally, when the image was (partly) covered and uncovered by other window(s), the displayed image might ''forget'' to be updated.

For images composed of index pixels and palette, the Image's Palette allows manipulating the image's attached palette; for images of other types, the Image's Palette is not selectable. For all images, the Viewer's Palette allows manipulating a palette which is not attached to the image. Either can be used for contrast enhancement, adjustment of black level and gain, or, for monochrome images, false coloring. Either, or neither, of the palettes can be selected for use under Display.

For image sequences, the Sequence Play allows ''playing'' the sequence, image by image, at a selected rate.

The Sequence Thumbnails window shows each image of a sequence as a small ''thumbnail'' image, allowing compact presentation and review of the entire image sequence. Clicking on a thumbnail can select that image for display by the image viewer window.

The Cursor allows activating a cursor over the image, which may be positioned via coordinates, or by left clicking the mouse on an image feature.

The Display allows selecting how the image is displayed: (a) No resizing so there is a one to one relationship between an image pixel and a displayed graphics display pixel and is the quickest, although the entire image may not fit within the window and must therefore be panned and scrolled, (b) Resize by nearest neighbor which is relatively quick, or (c) Resize by bilinear interpolation which may produce better results for continuous tone images, but is slower. For the resize modes, the aspect ratio can also be modified. The Display allows selecting which palette, if any, is to be used during display and during file loads and saves. An option to display only even lines, or only odd image lines, allows avoiding interlace artifacts during display. For the image viewer window associated with the PIXCI® frame grabber's frame buffer(s), the Display provides additional features, identical to the Live Options described below.

The Zoom, Pan, Scroll allows magnifying the displayed image, panning and scrolling to view different portions of the image under magnification. For image sequences, a specific image of the sequence can be selected for display. In addition to panning and scrolling via explicit coordinates and via scrollbars, holding the right mouse button and moving the mouse over the image also implements panning and scrolling. Optionally, the left or right mouse button can be used to increase magnification (i.e. zoom-in) or decrease magnification (i.e. zoom-out).

The Flip & Mirror allows flipping and mirroring the displayed image so that the top is displayed to the top, left, right, or bottom.

Each image buffer (sequence) may have several simultaneously active viewers, allowing, for example, viewing the same image buffer both magnified and unmagnified. The Launch 2nd Viewer creates a second image viewer window into the same image buffer (sequence), with the same features as the original image viewer window.

5.2.3. Image Viewer - Examine

The image viewer window's Examine provides options to examine the image.

The Pixel Peek allows numeric display of the pixel values in the vicinity of the image cursor — within a single image, or across a sequence of images, or of a multi-image stack. The feature also graphically displays each pixel's value or trends.

The Pixel Peek & Poke allows numeric display and modification of individual pixel values. The Pixel Peek & Poke also allows precise, single pixel, image editing.

The Pixel Plot displays a two-dimensional graph of pixels values along a selected image line or column, of all image lines or columns, of an image pixel as it varies across an image sequence, of rows or columns as they vary across an image sequence, or of a multi-image stack. The recent trends of pixel values can also be shown, as an fading ''echo,'' to help visually evaluate the fluctuations of live video or the effects of camera adjustments. Features attached to the graph show specific pixel values and descriptive statistics such as lowest value, highest value, mean value, and standard deviation.

The Pixel Plot 3D displays the numeric values of pixels as as a three-dimensional graph — from a single image or from a multi-image ''stack'' — with the image X and Y coordinates composing two dimensions, and the pixel values composing the third dimension.

The Pixel Magnifier allows enlarging an area of the displayed image, with an effect similar to using a magnifying lens. Optionally, contrast and other enhancements can be applied to the magnified area.

The SMPTE VITC allows searching the image for valid SMPTE Vertical Interval Time Codes and displaying the decoded codes.

5.2.4. Image Viewer - Modify

The image viewer window's Modify provides image processing operations which modify the image, modify each image (independently) in a sequence (typically named ''Sequence ...'') or modify one or more images in a sequence by combining data from across multiple images (typically named ''... Sequence ).''

The Patterns draws various test patterns in the image. The Sequence Patterns does the same on each image of a sequence.

The Set sets image pixels to a specified value. The Sequence Set does the same on each image of a sequence.

The Arithmetic provides pixel arithmetic, such as adding a constant value or multiplying by a constant value. The Sequence Arithmetic does the same on each image of a sequence. The Src+Dst Arithmetic does the same with distinct source and destination images.

The Binning provides averaging or integrating pixel values in ''bins'' of a checkerboard. The Sequence Binning does the same on each image of a sequence. The Src+Dst Binning does the same with distinct source and destination images.

The Contrast Modification allows modifying the image's contrast. The Sequence Contrast Modification does the same on each image of a sequence. The Src+Dst Contrast Modification does the same with distinct source and destination images.

The Convolution allows convolving the image with user-defined kernels. The Sequence Convolution does the same on each image of a sequence. The Src+Dst Convolution does the same with distinct source and destination images.

The Correlation Map allows correlating, or matching, a kernel image over a larger image, resulting in a profile image whose intensity, at each location, varies in proportion to the degree of match at that location. The Sequence Correlation Map does the same on each image of a sequence. The Src+Dst Correlation Map does the same with distinct source and destination images.

The Edge Detection provides Kirsch, Sobel, and other standard edge detectors. The Sequence Edge Detection does the same on each image of a sequence. The Src+Dst Edge Detection does the same with distinct source and destination images.

The FFT provides Fast Fourier Transforms and Discrete Fourier Transforms. The Sequence FFT does the same on each image of a sequence. The Src+Dst FFT does the same with distinct source and destination images.

The HSB Tweak provides hue, saturation, and brightness adjustments within the HSB color space. While Arithmetic and other operations can optionally use the HSB color space to, for example, multiply all saturation values by a constant, the HSB Tweak allows adjusting selected portions of the HSB space, such as adjusting the brightness of red pixels with high saturation. The Sequence HSB Tweak does the same on each image of a sequence. The Src+Dst HSB Tweak does the same with distinct source and destination images.

The Interlace & Flicker provides line and pixel shuffling operations. The Sequence Interlace & Flicker does the same on each image of a sequence. The Src+Dst Interlace & Flicker does the same with distinct source and destination images.

The Morphology provides morphological operations with user-defined kernels. The Sequence Morphology does the same on each image of a sequence. The Src+Dst Morphology does the same with distinct source and destination images.

The Noise Generator allows adding pseudo-random noise with uniform and other distributions to an image. The Sequence Noise Generator does the same on each image of a sequence. The Src+Dst Noise Generator does the same with distinct source and destination images.

The Normalization provides intensity normalizations based upon a single image. The Sequence Normalization does the same on each image of a sequence. The Src+Dst Normalization does the same with distinct source and destination images.

The Rotation & Shift provides image rotations and shifts. The Sequence Rotation & Shift does the same on each image of a sequence. The Src+Dst Rotation & Shift does the same with distinct source and destination images.

The Spatial Filtering provides low pass, high pass, and other filters. The Sequence Spatial Filtering does the same on each image of a sequence. The Src+Dst Spatial Filtering does the same with distinct source and destination images.

The Spatial Normalization provides spatial normalizations based upon a single image. The Sequence Spatial Normalization does the same on each image of a sequence. The Src+Dst Spatial Normalization does the same with distinct source and destination images.

The Threshold allows thresholding an image against user-defined, fixed, boundary values. The Sequence Threshold does the same on each image of a sequence. The Src+Dst Threshold does the same with distinct source and destination images.

The Threshold Adaptive allows thresholding an image against boundary values that are automatically adjusted. The Sequence Threshold Adaptive does the same on each image of a sequence. The Src+Dst Threshold Adaptive does the same with distinct source and destination images.

The Warping allows ''rubber-sheet'' transformations governed by a list of initial and final fiducial locations, governed by pincushion/barrel lens distortion, or specified by mathematical expressions. The Sequence Warping does the same on each image of a sequence. The Src+Dst Warping does the same with distinct source and destination images.

The Copy & Resize allows copying and resizing an image from one image buffer to another. The Sequence Copy & Resize does the same on each image of a sequence.

The Pair Arithmetic provides pixel arithmetic, such as summation, between one image buffer and another. The Src+Dst Arithmetic does the same with distinct source and destination images.

The Pair Normalization allows normalizing various intensity based attributes of an image, based upon a second reference, or background, image. The Src+Dst Pair Normalization does the same with distinct source and destination images.

The Triplet Normalization allows normalizing various intensity based attributes of an image, based upon two other reference, or background, images. The Src+Dst Triplet Normalization does the same with distinct source and destination images.

The Average Sequence allows forming the average or sum of an image sequence.

The Difference Sequence allows forming the difference of each pair of images of an image sequence.

The Tile Sequence allows forming a grid of reduced images from an image sequence.

For image copy and other image processing operations utilizing a distinct source and destination, the image viewer window from which the operation is selected is always the modified destination; an image (or sequence) associated with a different image viewer window can be selected as the unmodified source.

5.2.5. Image Viewer - Measure

The image viewer window's Measure provides features for image measurement and analysis, including user-defined coordinate systems and mapping intensities into user-defined units.

The Intensity Calibration allows creating a mapping (correspondence) from monochrome image pixel values into user-defined units, for example from grey level into brightness, or grey level into density of material.

The Spatial Calibration allows creating a mapping (correspondence) from pixel X,Y coordinates into a user-defined H,V coordinate system. The H,V coordinates may be translated, scaled, and/or rotated with respect to X,Y coordinates.

The Histogram computes and displays a graph of an image's histogram.

The Histogram Pair computes and displays a graph of the histogram of difference of a pair of images.

The Mass & Moments computes and displays various moments of an image.

The Line Profile displays a two-dimensional graph of pixels values along an arbitrary oriented line, arc, polyline, Bezier, and other curves.

The Radial Mass Plot displays a two-dimensional graph of the sum of pixel values versus the pixels' distance from an origin.

The Ruler overlays a ruler on the image, with user-defined length, width, and tick marks, all based on the H,V coordinate system. Multiple rulers can be overlaid on each image.

The Protractor overlays a protractor on the image, with user-defined radius, arc, and tick marks, all based on the H,V coordinate system. Multiple protractors can be overlaid on each image.

The Cartesian Reticle overlays a Cartesian coordinate reticle on the image, based on the H,V coordinate system. Multiple Cartesian reticles can be overlaid on each image.

The Polar Reticle overlays a polar coordinate reticle on the image, based on the H,V coordinate system. Multiple polar reticles can be overlaid on each image.

The Distance & Angle Crosshairs provides spatial calibration and measurement of absolute position, relative position, length and angles. While these capabilities are also available elsewhere in Image Viewer - Measure and Image Viewer - Draw, the Distance & Angle Crosshairs collects chosen features to provide a single window with the equivalent of a so-called ''Video Crosshair Overlay & Measurement'' system.

The Shape Analysis provides descriptive statistics about the shape of elliptical, rectangular, or polygonal regions.

The Blob Analysis identifies image blobs, based upon thresholding the image into foreground and background, and provides descriptive statistics about the blobs found.

The Particle Tracking provides identification and tracking of particles (blobs) over a sequence of images. Individual particles are detected based upon a thresholded (bi-level) image. In one method, multiple image occurrences of a common particle are identified across a sequence of images by position extrapolation and verification. In a second method, vectors of particles that are close together are compared and expected to yield consistent magnitude and direction. In a third method, which requires the fewest setup parameters, common particles are grouped by nearest neighbor. For any method, the particle's trajectories are displayed and reported.

The SubPixel Edger overlays a line or curve tool on the image, analyzes the pixel values under the line or curve finding edges or lines to subpixel accuracy, and displays the position of the edges or lines both graphically, on the image, and numerically.

The Ellipse Fitter overlays an elliptical pattern of subpixel edger tools on the image, and computes a best-fit elliptical curve from the edges found.

The Correlation Finder correlates, or matches, a kernel image over a larger image, showing the coordinates of, and displaying a box around, the best match(es).

5.2.6. Image Viewer - Draw

The image viewer window's Draw provides features for drawing graphics and text over the image. One or more of: line, circle with aspect ratio correction, rotated rectangle, rotated ellipse, arc of circle with aspect ratio correction, arc of rotated ellipse, annulus, arc of annulus, rectangular frame, list of points, polygon, polyline (connected line segments not closed into a polygon), Bezier curve, or Bezier region (Bezier curve closed to form region), rotated text, and arrow may be overlaid over the image (non destructive) or written into the image. The individual menu items such as Text, Line, Rectangle, etc. allow quick drawing of graphics or text. The Graphic Manager permits drawing the same graphics or text, but in addition manages a list of graphic or text objects, including loading and saving of the graphic or text objects.

The Image Overlay feature allows overlaying a second image, containing graphics on a ''transparent'' background, over the current image.

The Paint Brush feature allows interactive ''painting'' onto the image with selectable color, patterns, and ''brush'' shapes.

The Paint Fill feature allows filling (flooding) an image region with ''paint'' of selectable color and patterns, using specified pixel values as the boundary terminating the ''filling''.

5.2.7. Image Viewer - AOI

The image viewer window's Aoi allows defining areas of interest (AOI) and regions of interest (ROI) upon which future image processing, measurement, analysis, print, load, and save features will operate. As used in XCAP, an ''AOI'' is a rectangular area with sides parallel to the image axis, while an ''ROI'' is of arbitrary shape, such as an ellipse or rectangle which may be rotated with respect to the image axis, or an arbitrary path or polygon. The image print, load, save, and many other features only allow use of an AOI; selected image processing, measurement, analysis and other features also allow use of an ROI.

The Set AOI defines the default area of interest and color space upon which future image processing, printing, load, and save features will operate.

The Set ROI defines the default region of interest and color space upon which future image measurement, analysis, and other selected features which accept an ROI will operate.

The Set Full Image quickly sets the default area of interest and region of interest to the image's full dimensions, and the default color space to the image buffer's natural color space, without entering the Set AOI or Set ROI window.

The AOI/ROI Manager maintains a list of often used areas of interest (AOI) and regions of interest (ROI).

Within each of the image processing, measurement, analysis, print, load, and save features a different AOI (or ROI, if applicable) can be selected, temporarily overriding the default AOI (or ROI). Within the feature, the new AOI (or ROI) can be specified numerically or interactively drawn, or an AOI (ROI) previously defined within the AOI/ROI Manager can be selected.

5.2.8. Image Viewer - View - Shortcuts

A tool bar of icons provides shortcuts for accessing often used features of The Image Viewer Window. Selected shortcuts can also be activated by key clicks when the tool bar window has the ''input focus'' (i.e. that window's title bar is highlighted). The shortcuts provided are:

  1. Switch to first buffer of sequence (Key HOME).
  2. Switch to next buffer of sequence (Key PAGE UP).
  3. Switch to previous buffer of sequence (Key PAGE DOWN).
  4. Switch to last buffer of sequence (Key END).
  5. Copy image to new image buffer.
  6. Adjust palette.
  7. Activate or deactivate zoom (i.e. magnification).
  8. Peek at numeric pixel values.
  9. Activate or deactivate cursor overlay.
  10. Draw a two-dimensional plot of line or column of pixel values.
  11. Draw a histogram of pixel values.
  12. Select: (a) Resizing of the image to fit The Image Viewer Window with correct aspect ratio, (b) No resizing so that there is a one to one relationship between an image pixel and a graphics display system's pixel thereby avoiding resizing artifacts (although the entire image may not fit within the window and must therefore be panned and scrolled, and the displayed aspect ratio will be incorrect for images whose aspect ratio differs from the graphic display system's aspect ratio), or (c) Resize the image via pixel decimation or replication thereby avoiding resizing artifacts (although the displayed aspect ratio will be incorrect for images whose aspect ratio differs from the graphic display system's aspect ratio).
The first four shortcuts appear only for The Image Viewer Window's which access a sequence of images.

The shortcuts may either be attached and part of The Image Viewer Window, or may be detached into its own window, as set by Display under Image Viewer - View.

5.2.9. Image Viewer - View - Status Bar

A status bar provides information about the image resolution, current cursor coordinates, current buffer of a sequence, and other similar information. The information to be shown can be selected by Display under Image Viewer - View.

5.2.10. PIXCI® Image Viewer - Capture

The image viewer window associated with the PIXCI® frame grabber's image frame buffer(s) has Capture which provides for capturing images from the PIXCI® frame grabber and other features associated with the PIXCI® frame grabber. Any additional image viewer windows created by Launch 2nd Viewer do not provide Capture, but only view, modify, examine, and/or draw the frame buffers.

The Snap captures and displays a single image. The Live continuously captures and displays images; the UnLive terminates the Live mode, displaying the last captured image.

The First Buffer switches to the first buffer of the frame buffer sequence, the Last Buffer switches to the last buffer of the frame buffer sequence, the Next Buffer switches to the next buffer of the frame buffer sequence, and the Previous Buffer switches to the previous buffer of the frame buffer sequence.

The Adjustments allows setting common adjustments, as suitable for the model of the PIXCI® frame grabber in use. For the PIXCI® SV2, SV3, SV4, SV5, SV5A, SV5B, and SV5L models, the Adjustments allows selecting the video input connection (N/A for PIXCI® SV5B) and adjusting the gain, black level, hue, and saturation.

For the PIXCI® SV7 model, the Adjustments allows selecting AGC and adjusting the gain, black level, hue, and saturation.

For the PIXCI® SV8 model, the Adjustments allows selecting AGC and adjusting the gain, black level, hue, saturation, and sharpness.

For the PIXCI® A110 and A310 models, the Adjustments allows adjusting the analog gain and offset, and the digital gain and offset. Less frequently used, and more esoteric, adjustments may be found under PIXCI® Video Setup, described above. For the PIXCI® CL1, CL3SD, D, D24, D32, D2X, D3X, and D3XE models, the Adjustments provide camera specific controls.

For the PIXCI® CL2, E1, E1DB, E4, E4DB, E4G2-2F, E4G2-4B, E4G2-F2B, E4TX2-2F, E4TX2-4B, E4TX2-F2B, E8, E8DB, e104x4-2f, e104x4-4b, e104x4-f2b, EB1, EB1G2, EB1-PoCL, EB1G2-PoCL, EB1mini, miniH2B, miniH2F, miniH2x4F, mf2280, EC1, ECB1, ECB1-34, ECB2, EL1, and EL1DB models, the Adjustments provide camera specific controls. Or, for ''Generic Camera Link'' mode, the Adjustments allow configuring the PIXCI® frame grabber's video resolution, trigger modes, bit depth, color space, etc. so as to be consistent with the camera.

For the PIXCI® E8CAM, ELS2, SI, SI1, SI2, and SI4 models, the Adjustments provide camera specific controls.

The Adjustments also provide duplicate features to Snap, Live, UnLive, select the frame buffer, and set the video window size. A duplicate menu item to access Adjustments is provided under Image Viewer - View.

The Shortcuts activates or deactivates the PIXCI® Image Viewer - Capture - Shortcuts, described below. A duplicate menu item to access Shortcuts is provided under Image Viewer - View.

The GIO Event Capture provides single or sequence image capture, each image triggered in conjunction with the frame grabber's general purpose (formerly referred to as an external TTL) input and output signals.

The Sequence Capture features allow capturing a timed sequence of images. The Sequence Capture features may be started by an event (trigger), run continuously until stopped by an event, or each individual image may be captured in response to an event. Events include mouse clicks, time of day, and the frame grabber's general purpose (formerly referred to as external TTL) inputs; when used with general purpose input events the Sequence Capture differs from GIO Event Capture in that the latter provides more options and higher accuracy and repeatability for the manipulation of the general purpose inputs and outputs in response to video timing. A time stamp feature allows recording the time that each image was captured, and either overlaying the time nondestructively or permanently marking the image with the time.

A variety of Sequence Capture features provide tradeoffs between capture rate vs. convenience vs. total number of images captured.

The Video to Frame Buffers captures sequences directly into pre-configured frame buffer memory, and can support any video rate or bandwidth.

The Video to Virtual Memory captures and copies sequences into convenient dynamically allocated host computer (virtual) memory, but may not support high video rate or bandwidth sequence capture for all cameras on all computers.

The Video to Disk File captures and copies sequences into a disk file in an efficient, internal format; after capture the sequence can be saved in a standard format.

The Video to Image Files captures and copies sequences directly into standard format image files, but may not obtain as high video rate capture as the Video to Disk File feature.

The Waterfall Display displays a chosen line of the frame buffer, in a ''waterfall'' fashion, updating the screen once per field, or as often as the host computer's speed allows. This feature is primarily intended for adjusting line scan type cameras. The waterfall display is intended only for viewing; it can't be analyzed, and can be saved only as a side effect of Screen Capture.

The Video to StreamStor (only under Windows) allows recording and playing video to and from Boulder Instruments StreamStor High-Speed Disk Recorders, allowing recording at video rate with almost all cameras and resolutions. The Video to StreamStor is provided only in the XCAP-Plus version.

The RGB Merge allows interpreting and viewing three monochromatic frame buffers as a single color (e.g. RGB) image, with adjustments for registration and coloring.

The Quad Pixel Merge allows interpreting and viewing four monochromatic frame buffers, each one captured after shifting the image sensor by ½ pixel horizontally and vertically, as a single high resolution image.

The Frame Average allows performing recursive, continuous, averaging of live video frames (or fields) and viewing the live result.

The Live Options combines the View - Display options, above, with additional choices governing Live mode. During Live mode, the PIXCI® frame grabber can: (a) Capture continuously into the specified frame buffer, however the image shown on the graphics display may contain portions from different video frames, (b) Snap, display on the graphics display, and repeat, however the image capture and display rate will be slower, or (c) Alternate capturing into the specified frame buffer and the last frame buffer (dual buffering). On host computers with insufficient PCI bandwidth to simultaneously capture into host computer memory and display from host computer memory to the graphics display, option (b) reduces the required bandwidth by approximately half.

The Lens Control - Birger EF232 allows controlling the aperture and focus of a compatible lens via a Birger EF232 Lens Mount. Both manual aperture and focus control, through the GUI, as well as automatic aperture and focus control, in response to the image intensity and sharpness, are provided.

5.2.11. PIXCI® Image Viewer - Capture - Shortcuts

A tool bar of icons provides shortcuts for accessing often used features of the PIXCI® frame grabber, and is an extension of the Image Viewer - View - Shortcuts described above. Selected shortcuts can also be activated by key clicks when the tool bar window has the ''input focus'' (i.e. that window's title bar is highlighted). The shortcuts provided are:

  1. Switch to first buffer of frame buffer sequence (Key HOME).
  2. Switch to next buffer of frame buffer sequence (Key PAGE UP).
  3. Switch to previous buffer of frame buffer sequence (Key PAGE DOWN).
  4. Switch to last buffer of frame buffer sequence (Key END).
  5. Snap single image (Key S).
  6. Toggle between:
    • Live mode - continuously capture and display images (Key L), and
    • Unlive mode - cease continuously capturing and displaying (Key U).
  7. Duplicate image.
  8. Adjust palette.
  9. Activate or deactivate zoom (i.e. magnification).
  10. Activate or deactivate cursor overlay.
  11. Select: (a) Resizing of the image to fit The Image Viewer Window with correct aspect ratio, (b) No resizing so that there is a one to one relationship between an image pixel and a graphics display system's pixel thereby avoiding resizing artifacts (although the entire image may not fit within the window and must therefore be panned and scrolled, and the displayed aspect ratio will be incorrect for images whose aspect ratio differs from the graphic display system's aspect ratio), or (c) Resize the image via pixel decimation or replication thereby avoiding resizing artifacts (although the displayed aspect ratio will be incorrect for images whose aspect ratio differs from the graphic display system's aspect ratio).
  12. Peek at numeric pixel values.
  13. Draw a two-dimensional plot of line or column of pixel values.
  14. Draw a histogram of pixel values.
  15. Acquire sequence.
  16. Display sequence.

The shortcuts may either be attached and part of The Image Viewer Window, or may be detached into its own window, as set by Display under Image Viewer - View.

 

5.3. Other Features

Other useful features of XCAP are associated with many, or all, of its windows.

Most windows of XCAP provide fields for numeric entry. Typically, to the right of the numeric entry field are two up/down or left/right buttons. Left clicking a button allows incrementing or decrementing the numeric value. Left clicking within a button's shaded area yields larger increment or decrement values, depending on the distance from the opposite button.

Right clicking the numeric field, either button, or the area between buttons, yields an options menu. The options menu typically provides the following:

  1. Selecting the base to which integer numbers are displayed, or the format and precision to which non-integer numbers are displayed.
  2. Changing the increment and decrement values to be applied when the buttons are left clicked. Selecting whether the increment or decrement is added or subtracted, whether a percentage up or down, or is the number of ''steps'' unique to that numeric field.
  3. Activating a ScrollPad (a miniature scroll bar which overlays the displayed number) allowing adjustment of the numeric value with mouse clicks and drags.
  4. Selecting units and range for display of angles, such as 0 to 360 degrees, -180 degrees to +180 degrees, 0 to 2pi radians, or -pi to +pi radians.
  5. Selecting units for display of temporal intervals, such as milliseconds, seconds, minutes, or hours.
  6. Selecting units for display of lengths, such as millimeters, centimeters, meters, inches, or feet.
  7. Selecting units for display of frequencies, such as Hertz, kiloHertz, megaHertz, or the corresponding period in seconds, milliseconds, or microseconds.
  8. Selecting units for display of memory sizes, such as bytes, kilobytes, megabytes, gigabytes, or IEC kibibytes, IEC mebibyte, IEC gibibyte, etc.
  9. Selecting units for display of temperature, such as Fahrenheit, Celsius, or Kelvin.
  10. Connecting the field to receive new content from a specified cell of the Black Board, or connecting the field to transmit its content to a specified cell of the Black Board.
  11. Providing a larger Big Field in which to view or enter a number.
  12. Providing an Expression field in which a mathematical expression can be entered and evaluated to a numeric value.
  13. Providing editing controls such as Cut, Copy, Paste, and Delete.
Numeric fields which only display computed results, text entry fields, and text display fields, may provide some of the above options — accessed by right clicking the field.

Some numeric fields may have an associated, explicit, ''slider'' control in addition to the implicit ScrollPad. Right clicking the slider allows enlarging a portion of the slider's range for finer control.

Various windows of XCAP provide fields for entry of text, or file and path names. Right clicking the field yields an options menu. The options menu typically provides the following:

  1. Connecting the field to receive new content from a specified cell of the Black Board, or connecting the field to transmit its content to a specified cell of the Black Board.
  2. Providing a larger Big Field in which to view or enter text.
  3. Providing a history of previously used values, allowing convenient reuse without retyping.
  4. Providing editing controls such as Cut, Copy, Paste, and Delete.
  5. Automatically generating a unique file name representing the current date and time (for files to be saved or created).

Various windows of XCAP provide fields for entry of pixel colors. Typically, the color can be entered numerically, and a small color ''swatch'' appears next to the color entry field, showing the selected color. Right clicking the swatch activates a color cylinder from which new colors may be selected by mouse clicks.

Various windows of XCAP provide a drop-down list selection field. Right clicking the selection field yields an options menu which in turn provides a Search feature. The Search allows convenient searching through a long list of selections. Selected drop-down list selection fields may have an explicit, adjacent, Search button to access the same service.

For drop-down list selection fields used to select a serial ''COM'' port (for Windows) or ''ttyS'' device (for Linux), right clicking the selection field yields an options menu which in turn provides a Refresh feature which updates the list based on the operating system's currently installed ports or devices.

Editing of numeric and text fields follows standard conventions. In brief, mouse click once or use left/right arrow keys to position the caret - characters are inserted at the caret as typed. Double mouse click to highlight all text or single click and drag to highlight a portion of text - a Delete or Backspace removes the highlighted text, a character replaces the highlighted text, and the left/right arrow keys cancel the highlight mode.

Hovering the mouse over a numeric, text, list selection, checkbox, radio button, button, or other control will cause the associated Tool Tip, if any, to pop-up; the Tool Tip will automatically disappear. The Tool Tip can also be displayed by right-clicking on the control for its options menu, which in turn provides a Tool Tip feature; the Tool Tip must be explicitly closed. The Big Field, Expression, and Search features also display the Tool Tip.

The user interface can be navigated without a mouse by using Tab and Shift-Tab to shift input focus, arrow keys and PgUp/PgDn to scroll, arrow keys to select tabs and list items, Enter to select choices and push buttons, and Alt-Tab (under Windows) or Ctrl-Alt-Tab (under Linux) to select a Window.

 

5.4. Road Map - Main Window

Main Window

File Load New Image Load New Image Sequence AVI BigTIFF BMP FITS JPEG/JFIF TIFF Portable Map VIF (Video Frame Files - Video to Disk) Multimedia Image File Info TWAIN Select Source TWAIN New Acquire TWAIN Source Info Window List -- List of current windows Exit
Images New Image -- List of current images
Scripts Script Record Script Play Script Remote Control Script Edit Script Tools Load Tool Bar Freeze Display Thaw & Refresh Display
Utility Black Board Message Log Audio Clip (Windows only) RS-232 Terminal Screen Capture I/O Port Peek & Poke (Windows 95, 98, ME only) Program Setup Windows Info (Windows only) Linux Info (Linux only) Window Style Java Info Devices Birger EF232 Directed Perception Pan-Tilt Unit EPIX® SILICON VIDEO® 10C-CL EPIX® SILICON VIDEO® 10M-CL EPIX® SILICON VIDEO® 20C-CL EPIX® SILICON VIDEO® 20M-CL EPIX® SILICON VIDEO® 1514CL EPIX® SILICON VIDEO® 1820CL Fujinon CCTV Lens Illumination Technologies 3900 Sagebrush Pan-Tilt Gimbal Volpi intralux dc-1100
PIXCI® PIXCI® Open/Close Multiple Devices Camera & Format Driver Assistant Advanced Board Info PIXCI® Video Setup Format (dependent on frame grabber) Resolution Sync Custom
PIXCI® Export Video Setup PIXCI® Import Video Setup PIXCI® TWAIN Sourcery (Windows only) PIXCI® Image-Pro Sourcery (Windows only) PIXCI® Status PIXCI® Serial Terminal PIXCI® Connections PIXCI® Camera Info
Help About License XCAP Release Notes XCAP Reference Manual PCI Configuration Tips Getting Started w. XCAP (via Web) for PIXCI® A110 for PIXCI® A310 for PIXCI® CL1 ... for SILICON VIDEO® 10M6 for SILICON VIDEO® 10C6 ...

 

5.5. Road Map - PIXCI® Image Viewer Window

PIXCI® Image Viewer Window

File Save Image BigTIFF BMP FITS JPEG/JFIF Portable Map TIFF X/Y Binary X/Y ASCII
Load Image TIFF BigTIFF JPEG/JFIF BMP FITS Portable Map X/Y Binary X/Y ASCII
Save Image Sequence One AVI/DIB w. Sequence One AVI/MJPG w. Sequence One BigTIFF w. Sequence One FITS w. Sequence One Portable Map w. Sequence One TIFF w. Sequence One X/Y Binary w. Sequence One X/Y ASCII w. Sequence Sequence of BigTIFF Sequence of BMP Sequence of FITS Sequence of JPEG/JFIF Sequence of TIFF Sequence of Portable Map Sequence of X/Y Binary Sequence of X/Y ASCII
Load Image Sequence One AVI w. Sequence One BigTIFF w. Sequence One FITS w. Sequence One TIFF w. Sequence One Portable Map w. Sequence One X/Y Binary w. Sequence One X/Y ASCII w. Sequence Sequence of BigTIFF Sequence of BMP Sequence of FITS Sequence of JPEG/JFIF Sequence of TIFF Sequence of Portable Map Sequence of X/Y Binary Sequence of X/Y ASCII
E-Mail Image Save Frame Buffer Memory Load Frame Buffer Memory Print Image Duplicate Image Duplicate Image Sequence BlackBoard Image Image Attributes Close Viewer
View Shortcuts Adjustments Status Bar Menu Bar Full Screen Always-On-Top Refresh Image's Palette Viewer's Palette Black & Gain Numerically Band Coloring Bit Slice Bit Transposition White Balance
Sequence Play Sequence Thumbnails Cursor Display Zoom, Pan, Scroll Flip & Mirror Launch 2nd Viewer
Examine Pixel Peek Peek X/Y Peek X/B Peek Y/B Pixel Peek & Poke Pixel Plot Plot Row Plot Column Plot Buffer Plot All Rows
Pixel Plot 3D Pixel Magnifier SMPTE VITC
Modify Patterns [Sequence Patterns] Set [Sequence Set] Arithmetic [Sequence Arithmetic] [Src+Dst Arithmetic] Complement Pixels Bit Wise Logical AND Pixels w. Mask Bit Wise Logical XOR Pixels w. Mask Bit Wise Logical OR Pixels w. Mask Bit Shift Left Bit Shift Right Bit Rotate Left Bit Rotate Right Bit Gray Code Bit Gray Decode Bit Reverse Add Constant with Pixels Multiply Constant with Pixels Add Uniform Random Dither to Pixels Add Gaussian Random Dither to Pixels Halftone, Threshold & Carry Halftone, Dot Construction Gamma Correction Pixie Minimum Pixie Maximum Pixie Mean Pixie Copy
Binning [Sequence Binning] [Src_Dst Binning] Average Integrate
Contrast Modification [Sequence Contrast Modification] [Src+Dst Contrast Modification] Stretch Contrast, Pixel Value Endpoints Stretch Contrast, Histogram Percentile Endpoints Invert Contrast Histogram Modification
Convolution [Sequence Convolution] [Src+Dst Convolution] Convolve: Convolve(PixelValue) Convolve: Abs(Convolve(PixelValue)) Convolve: PixelValue Convolve(PixelValue) Convolve: PixelValue Abs(Convolve(PixelValue))
Correlation Map [Sequence Correlation Map] [Src+Dst Correlation Map] Edge Detection [Sequence Edge Detection] [Src+Dst Edge Detection] Edge Magnitude: Laplacian Edge Magnitude: Vertical Edge Magnitude: Horizontal Edge Magnitude: Sobel Edge Magnitude: Kirsch Edge Magnitude: Roberts Edge Gradient: Log Sobel Edge Gradient: Log Sobel Absolute Edge Gradient: Log Kirsch Edge Gradient: Log Roberts Edge Gradient: Thin, Minimal Effect Edge Gradient: Thin, Maximal Effect
FFT [Sequence FFT] [Src+Dst FFT] FFT to Log Magnitude Root Filter Gaussian Filter Inverse Gaussian Filter
HSB Tweak Interlace & Flicker [Sequence Interlace & Flicker] [Src+Dst Interlace & Flicker] Shuffle Line Order to Field Order Shuffle Field Order to Line Order Transpose Line Pairs Transpose Column Pairs Shuffle Line Pairs to Pixel Pairs Shuffle Pixel Pairs to Line Pairs Shuffle Column Order to Even-Odd Halves Shuffle Even-Odd Halves to Column Order Shuffle Column Order to N Section Order Shuffle N Section Order to Column Order Deflicker: Average Line Pairs Deflicker: Filter Singularity Shift Half-Line Down Shift Half-Line Up Tap Correction: User Defined f(X,Y)
Morphology [Sequence Morphology] [Src+Dst Morphology] Erode Dilate Open Close Boundary Hit Miss Medial Axis Thin Skeleton Thin
Noise Generator [Sequence Noise Generator] [Src+Dst Noise Generator] Uniform Noise Gaussian Noise Rayleigh Noise Negative Exponential Noise Salt & Pepper Noise
Normalization [Sequence Normalization] [Src+Dst Normalization] Normalize Intensity, Blobs & Background Normalize Row Mean Normalize Column Mean
Rotation & Shift [Sequence Rotation & Shift] [Src+Dst Rotation & Shift] X, Y Shift Flip Skew Left/Right Skew Up/Down Rotate Rotate w. Offset
Spatial Filtering [Sequence Spatial Filtering] [Src+Dst Spatial Filtering] Low Pass Filter Sharpen Filter Median Filter Rank Low (Erode) Filter Rank High (Dilate) Filter Edge Enhance: Sobel Edge Enhance: Sobel Absolute Edge Enhance: Kirsch Edge Enhance: Roberts Horizontal Sharpen Filter Vertical Sharpen Filter Embossed Edges Emboss Enhance
Spatial Normalization [Sequence Spatial Normalization] [Src+Dst Spatial Normalization] Shift Center of Mass to Center
Threshold [Sequence Threshold] [Src+Dst Threshold] Threshold Adaptive [Sequence Threshold Adaptive] [Src+Dst Threshold Adaptive] Warping [Sequence Warping] [Src+Dst Warping] Warp: Src => Dst Fiducials Warp: Pincushion Distortion Warp: Barrel Distortion Warp: Pincushion Distortion, 1-D Warp: Barrel Distortion, 1-D Warp: Fisheye Lens Distortion Warp: Fisheye Lens Correction Warp: User Defined f(X,Y) Copy & Resize [Sequence Copy & Resize] Copy Copy & Resize Copy & Flip Copy & Overlay Copy & Retype Copy & Reorder Copy & Tile Pair Arithmetic [Sequence Pair Arithmetic] [Src+Dst Pair Arithmetic] Add: Dst+Src Modulo PixelSize Add: Min(Dst+Src, MaxPixValue) Subtract: (MaxPixValue+(Dst Src))/2 Subtract: (MaxPixValue+(Src Dst))/2 Subtract: (Dst Src)Modulo PixelSize Subtract: (Src Dst)Modulo PixelSize Subtract: (Src Dst)Modulo PixelSize Subtract: Max(Dst Src, 0) Subtract: Max(Src Dst, 0) Subtract: Abs(Dst Src) Bit Wise AND: Dst & Src Bit Wise XOR: Dst ^ Src Bit Wise OR: Dst | Src Average: (Src+Dst)/2 Product: (c0*Src+c1)*(c2*Dst+c3)/c4 Product: (c0*Dst+c1)/(c2*Src+c3) Ratio: (c0*Dst+c1)/(c2*Src+c3) User-Defined f(PixA, PixB)
Pair Normalization [Sequence Pair Normalization] [Src+Dst Pair Normalization] Contrast Modify & Match Background Correction, Subtractive Background Correction, Ratio Spot Mask Correction
Triplet Normalization [Sequence Triplet Normalization] [Src+Dst Triplet Normalization] Gain & Offset Normalization: MeanSrcB*(Dst-SrcA)/(SrcB-SrcA) Gain & Offset Normalization: MaxSrcB*(Dst-SrcA)/(SrcB-SrcA) Gain & Offset Normalization: MinSrcB*(Dst-SrcA)/(SrcB-SrcA)
Average Sequence Average Sequence Integrate Sequence Pixel Mean of Sequence Pixel Std. Dev. of Sequence Pixel Variance of Sequence Difference Sequence Tile Sequence
Measure Intensity Calibration Spatial Calibration Histogram Histogram Pair Mass & Moments Center of Mass Center of Mass, Binary Moments
Line Profile Radial Mass Plot Ruler Protractor Cartesian Reticle Polar Reticle Distance & Angle Crosshairs Shape Analysis Blob Analysis Particle Tracking SubPixel Edger Ellipse Fitter Correlation Finder
Draw Arrow Text Point Points Bezier Curve Circle Circle Arc Ellipse Ellipse Arc Line Parallel Lines Path Curve Polyline Rectangle Window Annulus Annulus Arc Bezier Region Elliptical Annulus Elliptical Annulus Arc Rectangle Array Path Enclosed Polygon Rectangular Frame Graphic Manager Image Overlay Paint Brush Paint Fill
AOI Set AOI Set ROI Set Full Image AOI/ROI Manager
Capture Adjustments Shortcuts Snap Live UnLive First Buffer Last Buffer Next Buffer Previous Buffer Sequence Capture Video to Frame Buffers - Single Sequence Video to Frame Buffers - Single Sequence w. Event Start Video to Frame Buffers - Single Sequence w. Event per Image Video to Frame Buffers - Continuous Sequence Video to Frame Buffers - Continuous Sequence w. Event Stop Video to Frame Buffers - Continuous Sequence w. Event per Image Video to Virtual Memory - Single Sequence Video to Virtual Memory - Single Sequence w. Event Start Video to Virtual Memory - Single Sequence w. Event per Image Video to Virtual Memory - Continuous Sequence Video to Virtual Memory - Continuous Sequence w. Event Stop Video to Virtual Memory - Continuous Sequence w. Event per Image Video to Disk File - Single Sequence Video to Disk File - Single Sequence w. Event Start Video to Disk File - Single Sequence w. Event per Image Video to Disk File - Continuous Sequence Video to Disk File - Continuous Sequence w. Event Stop Video to Disk File - Continuous Sequence w. Event per Image Video to Image Files - Single Sequence Video to Image Files - Single Sequence w. Event Start Video to Image Files - Single Sequence w. Event per Image Video to Image Files - Continuous Sequence Video to Image Files - Continuous Sequence w. Event Stop Video to Image Files - Continuous Sequence w. Event per Image Video to StreamStor (Windows only) GIO Event Capture
Waterfall Display Video to Disk RGB Merge Quad Pixel Merge Frame Average Lens Control Birger EF232 Live Options
Help Vis-a-Vis PIXCI® --- User's Manual (via Web) (for specific PIXCIXCAP in use) SILICON VIDEO® --- User's Manual (via Web) (for specific SILICON VIDEOXCAP in use, if any)

Optionally, the Main Window and the PIXCI® Image Viewer Window's may be combined (see Utilities - Program Setup) with the following features of the Main Window added to the PIXCI® Image Viewer Window:


File Window List -- List of current windows Image List -- List of current images Exit Utility Message Log Program Setup Windows Info (Windows only) Linux Info (Linux only) Window Style Java Info
PIXCI® PIXCI® Open/Close PIXCI® TWAIN Sourcery (Windows only) PIXCI® Image-Pro Sourcery (Windows only) PIXCI® Connections PIXCI® Video Setup PIXCI® Serial Terminal
Help XCAP Release Notes XCAP Reference Manual PCI Configuration Tips License About

Optionally, if XCAP is intended to be used solely in conjunction with a TWAIN compliant application or with Image-Pro, many of the menu features of the Main Window and the PIXCI® Image Viewer Window may be removed so as to provide a simplified appearance (see Utilities - Program Setup). The same option also removes several PIXCI® Image Viewer - Capture - Shortcuts and adds shortcuts duplicating features of the PIXCI® - TWAIN Sourcery and Image-Pro Sourcery.

 

5.6. XCAP Software Feature Comparison

Feature XCAP-Plus XCAP-Std XCAP-Ltd XCAP-Lite XCAP-Viewer
(A) (A) (A) (A) (A)

File -
- Load New Image Yes Yes Yes Yes (C) Yes (C)
- Load New Image Sequence Yes Yes Yes Yes (C) Yes (C)
- Image File Info Yes Yes Yes Yes Yes
- TWAIN Select Source (Win) Yes Yes No No No
- TWAIN New Acquire (Win) Yes Yes No No No

Images -
- New Image (Workspace) Yes Yes Yes Yes Yes

Scripts -
- Record Yes Yes No No No
- Play Yes Yes Yes Yes No
- Remote Control Yes Yes No No No
- Load Tool Bar Yes Yes No No No

Utility -
- Black Board Yes Yes No No No
- Message Log Yes Yes Yes Yes Yes
- Audio Clip (Win) Yes Yes Yes Yes No
- RS-232 Terminal Yes Yes Yes Yes Yes
- Screen Capture Yes Yes Yes No No
- I/O Port Peek & Poke (W95) Yes Yes Yes Yes Yes
Devices -
- Birger EF232 Yes Yes Yes Yes Yes
- Directed Perception Pan-Tilt Unit Yes Yes Yes Yes Yes
- EPIX® SILICON VIDEO® 10C-CL Yes Yes Yes Yes Yes
- EPIX® SILICON VIDEO® 10M-CL Yes Yes Yes Yes Yes
- EPIX® SILICON VIDEO® 20C-CL Yes Yes Yes Yes Yes
- EPIX® SILICON VIDEO® 20M-CL Yes Yes Yes Yes Yes
- EPIX® SILICON VIDEO® 1514CL Yes Yes Yes Yes Yes
- EPIX® SILICON VIDEO® 1820CL Yes Yes Yes Yes Yes
- Fujinon CCTV Lens Yes Yes Yes Yes Yes
- Illumination Technologies 3900 Yes Yes Yes Yes Yes
- Sagebrush Pan-Tilt Gimbal Yes Yes Yes Yes Yes
- Volpi intralux dc-1100 Yes Yes Yes Yes Yes

PIXCI® -
- Open/Close -
- Single Board Yes Yes Yes Yes No
- Multiple Identical Boards Yes Yes Yes Yes No
- Multiple Different Boards Yes Yes No No No
- Frame Buffer Memory Limit -
w. PIXCI® CL3SD None (E) None (E) None (E) None N/A
w. PCI 32 bit None (E) None (E) 4 GiByte (E) 256 MiByte(E) N/A
w. PCI 64 bit None (E) None (E) 4 GiByte (E) 256 MiByte(E) N/A
w. PCI Express & 32 bit O.S. None (E) None (E) 4 GiByte (E) 256 MiByte(E) N/A
w. PCI Express & 64 bit O.S. None (E) None (E) 8 GiByte (E) 256 MiByte(E) N/A
w. ExpressCard/54 & 32 bit O.S. None (E) None (E) 4 GiByte (E) 256 MiByte(E) N/A
w. ExpressCard/54 & 64 bit O.S. None (E) None (E) 8 GiByte (E) 256 MiByte(E) N/A
w. mini PCIe & 32 bit O.S. None (E) None (E) 4 GiByte (E) 256 MiByte(E) N/A
w. mini PCIe & 64 bit O.S. None (E) None (E) 8 GiByte (E) 256 MiByte(E) N/A
w. M.2 & 32 bit O.S. None (E) None (E) 4 GiByte (E) 256 MiByte(E) N/A
w. M.2 & 64 bit O.S. None (E) None (E) 8 GiByte (E) 256 MiByte(E) N/A
- Driver Assistant/Wizard Yes Yes Yes Yes No
- Video Setup Yes Yes Yes Yes No
- Export Video Setup Yes Yes Yes Yes No
- Import Video Setup Yes Yes Yes Yes No
- TWAIN Sourcery (Win) Yes Yes Yes Yes No
- Image-Pro Sourcery (Win) Yes Yes Yes Yes No
- Status Yes Yes Yes Yes No
- Serial Terminal Yes Yes Yes Yes No
- Connections Info Yes Yes Yes Yes Yes
- Camera Info Yes Yes Yes Yes Yes
- Camera Specific Controls Yes (F) Yes (F) Yes (F) Yes (F) No

Help -
- XCAP Release Notes Yes Yes Yes Yes Yes
- XCAP Reference Manual Yes Yes Yes Yes Yes
- PCI Configuration Tips Yes Yes Yes Yes Yes
- Getting Started w. XCAP (via Web) Yes Yes Yes Yes Yes

File -
- Save Image Yes Yes Yes Yes (C) No
- Load Image Yes Yes Yes Yes (C) Yes (C)
- Save Image Sequence Yes Yes Yes Yes (C) No
- Load Image Sequence Yes Yes Yes Yes (C) Yes (C)
- E-Mail Image Yes Yes Yes No No
- Print Image Yes Yes Yes Yes (R) No
- Duplicate Image Yes Yes Yes No No
- Duplicate Image Sequence Yes Yes Yes No No
- BlackBoard Image Yes Yes No No No

View -
- Full Screen Yes (W) Yes (W) Yes (W) Yes (W) Yes (W)
- Frame-Less Full Screen Yes (W) Yes (W) Yes (W) No No
- Palette Yes Yes Yes Yes (G) Yes (G)
- Sequence Play Yes Yes Yes Yes Yes
- Sequence Thumbnails Yes Yes Yes No No
- Cursor Yes Yes Yes Yes Yes
- Zoom, Pan, Scroll Yes Yes Yes Yes Yes
- Flip & Mirror Yes Yes Yes Yes Yes
- Multi-thread/CPU rendering Yes Yes Yes No No
- Launch 2nd Viewer Yes Yes Yes No No

Examine -
- Pixel Peek X vs Y Yes Yes Yes Yes Yes (H)
- Pixel Peek X vs B Yes Yes Yes Yes Yes (H)
- Pixel Peek B vs Y Yes Yes Yes Yes Yes (H)
- Pixel Peek & Poke Yes Yes Yes Yes Yes
- Pixel Plot Row Yes Yes Yes Yes (I)(Y) Yes (I)(Y)
- Pixel Plot Column Yes Yes Yes Yes (I)(Y) Yes (I)(Y)
- Pixel Plot Pixel × B Yes Yes Yes Yes (I)(Y) Yes (I)(Y)
- Pixel Plot Rows × Y Yes Yes Yes No No
- Pixel Plot Rows × B Yes Yes Yes No No
- Pixel Plot Cols × X Yes Yes Yes No No
- Pixel Plot Cols × B Yes Yes Yes No No
- Pixel Plot 3D Yes Yes Yes Yes (S) Yes (S)
- Pixel Magnifier Yes Yes Yes (Z) No No
- SMPTE VITC Yes Yes Yes No No

Modify -
- Patterns Yes Yes Yes Yes Yes
- Set Yes Yes Yes (J) Yes (J) Yes (J)
- Arithmetic Yes Yes No No No
- Binning Yes Yes No No No
- Contrast Modification Yes Yes No No No
- Convolution Yes Yes No No No
- Correlation Map Yes Yes No No No
- Edge Detection Yes Yes No No No
- FFT Yes Yes No No No
- HSB Tweak Yes Yes No No No
- Interlace & Flicker Yes Yes No No No
- Morphology Yes Yes No No No
- Noise Generator Yes Yes No No No
- Normalization Yes Yes No No No
- Rotation & Shift Yes Yes No No No
- Spatial Filtering Yes Yes No No No
- Spatial Normalization Yes Yes No No No
- Threshold Yes Yes No No No
- Threshold Adaptive Yes Yes No No No
- Warping Yes Yes No No No
- Copy & Resize Yes Yes No No No
- Pair Arithmetic Yes Yes No No No
- Pair Normalization Yes Yes No No No
- Triplet Normalization Yes Yes No No No
- Average Sequence Yes Yes No No No
- Difference Sequence Yes Yes No No No
- Tile Sequence Yes Yes No No No

Measure -
- Intensity Calibration Yes Yes No No No
- Spatial Calibration Yes Yes No No No
- Histogram Yes Yes No No No
- Histogram Pair Yes Yes No No No
- Mass & Moments Yes Yes No No No
- Line Profile Yes Yes Yes (K,L) Yes (I,K,L) Yes (I,K,L)
- Radial Mass Plot Yes Yes No No No
- Ruler Yes Yes Yes (K) Yes (K) Yes (K)
- Protractor Yes Yes No No No
- Cartesian Reticle Yes Yes Yes (K) Yes (K) Yes (K)
- Polar Reticle Yes Yes No No No
- Dist. & Angle Crosshairs Yes Yes No No No
- Shape Analysis Yes Yes No No No
- Blob Analysis Yes Yes No No No
- Particle Tracking Yes Yes No No No
- SubPixel Edger Yes Yes No No No
- Ellipse Fitter Yes Yes No No No
- Correlation Finder Yes Yes No No No

Draw -
- Arrow Yes Yes Yes Yes Yes
- Text Yes Yes Yes No No
- Point Yes Yes Yes No No
- Points Yes Yes Yes No No
- Bezier Curve Yes Yes Yes No No
- Circle Yes Yes Yes No No
- Circle Arc Yes Yes Yes No No
- Diamond Yes Yes Yes No No
- Ellipse Yes Yes Yes No No
- Ellipse Arc Yes Yes Yes No No
- Line Yes Yes Yes Yes Yes
- Parallel Lines Yes Yes Yes No No
- Path Curve Yes Yes Yes No No
- Polyline Yes Yes Yes No No
- Rectangle Yes Yes Yes No No
- Window Yes Yes Yes Yes Yes
- Annulus Yes Yes Yes No No
- Annulus Arc Yes Yes Yes No No
- Bezier Region Yes Yes Yes No No
- Elliptical Annulus Yes Yes Yes No No
- Elliptical Annulus Arc Yes Yes Yes No No
- Rectangle Array Yes Yes Yes No No
- Path Enclosed Yes Yes Yes No No
- Polygon Yes Yes Yes No No
- Rectangular Frame Yes Yes Yes No No
- Graphic Manager Yes Yes Yes (B) Yes (B) Yes (B)
- Paint Brush Yes Yes Yes No No
- Paint Fill Yes Yes Yes No No
- Image Overlay Yes Yes No No No

Capture -
- Snap (Video) Yes Yes Yes Yes No
- Live (Video) Yes Yes Yes Yes No
- Frame Date&Time Stamp Yes Yes Yes Yes No
- First Buffer Yes Yes Yes Yes No
- Next Buffer Yes (M) Yes (M) Yes (M) Yes (M) No
- Previous Buffer Yes (M) Yes (M) Yes (M) Yes (M) No
- Last Buffer Yes (M) Yes (M) Yes (M) Yes (M) No
- Adjustments -
- Snap/Live Buffer Number Yes Yes Yes Yes No
- Resolution (video window) Yes Yes Yes Yes No
- Camera Specific Controls Yes (F) Yes (F) Yes (F) Yes (F) No
- Color & White Balance Yes (N) Yes (N) Yes (N) Yes (N) No
- SILICON VIDEO(R) AWB Yes (N) Yes (N) Yes (N) Yes (N) No
- Auto Gain/Exposure Control Yes (O) Yes (O) Yes (O) No (O) No
- SILICON VIDEO(R) AGC/AEC Yes (O) Yes (O) Yes (O) Yes (O) No
- Pixel Normalization (FFC) Yes (V) Yes (V) Yes (V) Yes (V) No
- Auto Contrast Enhancement Yes (X) Yes (X) Yes (X) No (X) | No
- Manual Contrast Enhancement Yes (X) Yes (X) Yes (X) Yes (X) | No
- Load & Save Presets Yes Yes Yes No No
- Shortcuts Yes Yes Yes Yes No
- GIO Event Capture Single Yes Yes Yes Yes No
- GIO Event Capture Sequence Yes Yes Yes No No
- Waterfall Display Yes Yes Yes Yes No
- RGB Merge Yes Yes Yes No No
- Frame Average Yes Yes No No No
- Quad Pixel Merge Yes Yes No No No
- Lens Control -
- Birger EF232 Yes Yes Yes(U) Yes(U) No

Sequence Capture (Single Sequence and Continuous Sequence) -
- to Frame Buffers Yes (E) Yes (E) Yes (E) Yes (P)(E) No
- to Frame Buffers at Event Yes Yes Yes No (Q) No
- to Virtual Memory Yes Yes Yes (T) Yes (P)(T) No
- to Virtual Memory at Event Yes Yes Yes (T) No (Q) No
- to Image Files Yes Yes Yes Yes (D) No
- to Image Files at Event Yes Yes Yes No No
- to Image Files - FTP Copy Yes Yes Yes No No
- to Image Files - HTTP Server Yes Yes Yes No No
- to Disk File Yes Yes No No No
- to Disk File at Event Yes Yes No No No
- to StreamStor (Win) Yes No No No No

Notes: (A) For XCAP-Lite, the PIXCI® frame grabber is assumed installed and open for use, otherwise XCAP-Lite provides the same features as XCAP-Viewer. Use of XCAP-Plus, XCAP-Std, or XCAP-Ltd with missing authorization key provides the same features as XCAP-Lite. Use of XCAP without activation code, or never having been configured for an authorization key, provides the features of XCAP-Viewer.
(B) The Save, Import, and Export Graphic features are not available in XCAP-Viewer, XCAP-Lite, or XCAP-Ltd.
(C) For XCAP-Viewer, images may not be saved; images may not be loaded directly from an Internet URL. For XCAP-Lite, Save Image Sequence is only available in TIFF format; images may not be loaded directly from, or saved to, an Internet URL; and does not support image ''stack'' options.
(D) For XCAP-Lite, the Sequence Capture to Image Files only supports TIFF format.
(E) The maximum amount of frame buffer memory is dependent on a the characteristics of the PIXCI® imaging card, the operating system, and of XCAP software. The PIXCI® CL3SD and SI2 have on-board frame buffer memory, other PIXCI® imaging cards use computer based frame buffer memory. The PIXCI® CL1, CL2, D, D24, D32, D2X, D3X, SI, SV2, SV3, SV4, and SV5 are designed to access up to 4 GB of computer memory. The PIXCI® A110, A310, D3XE, E1, E1DB, E4, E4DB, E4G2-2F, E4G2-4B, E4G2-F2B, E4TX2-2F, E4TX2-4B, E4TX2-F2B, E8, E8CAM, E8DB, e104x4-2f, e104x4-4b, e104x4-f2b, EB1, EB1G2, EB1-PoCL, EB1G2-PoCL, EB1mini, miniH2B, miniH2F, miniH2x4F, mf2280, EC1, ECB1, ECB1-34, ECB2, EL1, EL1DB, ELS2, SI1, SI4, SV7, and SV8 are designed to access up to 16 EiByte of computer memory (a theoretical limit, as no currently available computer system provides 16 EiByte of memory). For XCAP-Lite, a maximum of 256 MiByte of computer based frame buffer memory is supported (but allows one full resolution image buffer w/out size restriction). On 32 bit systems, XCAP-Plus, XCAP-Std, and XCAP-Ltd support up to 4 GiBytes of computer based frame buffer memory. On 64 bit systems, XCAP-Plus and XCAP-Std supports up to 16 EiByte of computer based frame buffer memory; XCAP-Ltd supports up to 8 GiByte of computer based frame buffer memory. The maximum available computer based frame buffer memory is also limited by the computer hardware, configuration, and memory used by the operating system and other applications.
(F) Camera specific controls provided for cameras supported by PIXCI® E8CAM, ELS2, SI, SI1, SI2, and SI4, and for many digital cameras supported by PIXCI® CL1, CL2, CL3SD, D, D24, D32, D2X, D3X, D3XE, E1, E1DB, E4, E4DB, E4G2-2F, E4G2-4B, E4G2-F2B, E4TX2-2F, E4TX2-4B, E4TX2-F2B, E8, E8DB, e104x4-2f, e104x4-4b, e104x4-f2b, EB1, EB1G2, EB1-PoCL, EB1G2-PoCL, EB1mini, miniH2B, miniH2F, miniH2x4F, mf2280, EC1, ECB1, ECB1-34, ECB2, EL1, and EL1DB; the 'PIXCI® Camera Info' feature shows the specific, customized, support provided for each camera.
(G) For XCAP-Lite and XCAP-Viewer, the Palette feature does not include save, load, import, or export, nor the ''Extract Bright/Dark Reference'' features.
(H) The Save Data feature is not available in XCAP-Viewer.
(I) For XCAP-Lite and XCAP-Viewer, the Pixel Plot feature does not include statistics, save, export, or multi-image ''stack'' or ''plank'' options. For XCAP-Viewer, the Pixel Plot feature does not include printing.
(J) For XCAP-Ltd, XCAP-Lite, and XCAP-Viewer, the Modify, Set feature does not include non-rectangular regions.
(K) For XCAP-Ltd, XCAP-Lite, and XCAP-Viewer, the Measure features do not include calibration.
(L) For XCAP-Ltd, XCAP-Lite, and XCAP-Viewer, the Line Profile is limited to straight lines.
(M) Subject to the amount of frame buffer memory versus image resolution yielding more than one frame buffer.
(N) Software implemented White Balance and Color Corrections (in contrast to a camera's feature) is provided for SILICON VIDEO® and other selected cameras; XCAP-Lite provides automatic, continuous, white balance (AWB) only for SILICON VIDEO® cameras. The XCAP-Lite does not provide custom color calibration from a Macbeth chart or other color reference.
(O) Software implemented AGC/AEC (in contrast to a camera's feature) is provided for selected cameras; of those, XCAP-Lite provides AGC/AEC only for SILICON VIDEO® cameras.
(P) For XCAP-Lite, the Sequence Capture does not include the graphic overlay of time stamp features, nor the strobe features added by software (as selected in the Sequence Capture dialog); any strobe features provided by the PIXCI® frame grabber or camera (either inherent or selected in the Capture & Adjust dialog) are available.
(Q) For XCAP-Lite, ''triggered'' sequence capture is provided when the camera is, itself, triggered (often referred to as ''Async Reset Mode''); sequence capture from a free-running camera where the trigger or event is handled separately is not provided.
(R) For XCAP-Lite, the image printing feature only supports use of the operating system's image printing feature(s), not printing via EPIX® imaging drivers.
(S) The Save Graphics, Save Data, Export Data, or multi-image ''stack'' features are not available in XCAP-Viewer or XCAP-Lite. The Print feature is not available in XCAP-Viewer.
(T) For XCAP-Lite, the sequence capture to virtual memory is limited to using 1 GiByte of virtual memory For XCAP-Ltd, the sequence capture to virtual memory is limited to using 4 GiByte of virtual memory. The operating system's configuration may impose additional limitations.
(U) Interactive control of the lens is provided, but not automatic aperture or automatic focus features in XCAP-Viewer or XCAP-Lite.
(V) Software implemented Pixel Normalization or Flat Field Correction (in contrast to a camera's feature) is provided for SILICON VIDEO® and other selected cameras; of those, XCAP-Lite does not provide Pixel Normalization in generic Camera Link mode.
(W) Frame-less full screen is not available in XCAP-Lite, XCAP-Viewer, or under Linux.
(X) Software implemented Contrast Enhancement (in contrast to a camera's feature) is provided for selected cameras; of those, XCAP-Lite provides manual, but not automatic contrast enhancement.
(Y) The Save Graphics, Save Data, Copy Data, and Descriptive Statistics features are not available in XCAP-Viewer or XCAP-Lite.
(Z) The Contrast and other enhancements of the magnified area not available in XCAP-Ltd.
(W95) Feature available only under Windows 95, 98, and ME.
(Win) Feature available only under Windows.


 

 

 

6. Getting Started with XCLIB

The optional XCLIB C/C++ library allows controlling the PIXCI® frame grabber from ''C/C++'' programs. Under Windows, the XCLIB library can also be accessed by any programming environment able to call functions within a DLL; such as VB.NET, C#, LabView, Matlab, and Python. Under Linux, the XCLIB library can also be accessed by any programming environment able to call functions within a Shared Object (SO); such as LabView, Matlab, and Python.

The XCLIB library is designed to be a component which is called by the user's application, rather than an application template with pre-selected and limited customizability. In other words, the XCLIB library forces the fewest possible architectural choices upon the user's application. Under Windows the XCLIB library is composed of ''C'' functions within a DLL and can be used from non-MFC, MFC, C#, or even ''console'' applications. With one optional exception, the XCLIB library does not create any windows or dialogs of its own; rather it allows displaying imagery into a window provided by the user.

This quick introduction focuses primarily on XCLIB library functions themselves; programming environment, operating system issues, and compilation instructions are addressed in the XCLIB Reference Manual and in the example programs provided with the XCLIB library. Nor is this introduction intended to cover every XCLIB library function or to provide complete programs; rather it is intended to provide the ''feel'' of XCLIB library programming, without the complications of user interfaces and application specific functionality.

Alternatives to use of XCLIB are available. The Media Foundation Frame Server (DirectShow) driver for PIXCI® frame grabbers provides a Windows Media Foundation, Media Source driver to control PIXCI® frame grabbers and retrieve video and image data. The Video for Linux Driver (V4L2) for PIXCI® frame grabbers provides a Linux standard V4L2 API to control PIXCI® frame grabbers and retrieve video and image data.

 

6.1. XCLIB Architecture Overview

The XCLIB library has two series of functions. The Simple C Functions (SCF), whose names start with pxd_, suffice for most application programs. This introduction only discusses the SCF functions.

Frame buffers are preallocated by the library, and selected by ordinals 1, 2, etc. The number of frame buffers is dependent on the camera resolution and the total memory size reserved for frame buffers. Under Windows and Linux, the reserved memory size can easily be set in XCAP application's Driver Assistant, or by following the installation instructions.

For cameras with raw Bayer output, the XCLIB library automatically provides processed RGB pixel values. For multi-tap cameras with pixels output in an order other than left-to-right, top-to-bottom, the XCLIB library automatically provides pixels in the correct order.

Functions to snap a video field (such as pxd_goSnap, discussed below) capture the next video field following its invocation. In other words, the function ''arms'' the PIXCI® frame grabber to capture the next video field into a frame buffer. This is in contrast to having the frame grabber consume resources continuously capturing everything, and having a hypothetical snap function retrieve the last field captured. This hypothetical behavior can be obtained in XCLIB using pxd_goLivePair (also discussed below) or similar functions, but it is not the behavior of the snap function.

 

6.2. The Simplest XCLIB Program

The following code captures an image into the first frame buffer with the frame grabber and camera in the default mode:

    #include "xcliball.h"
        ...
    pxd_PIXCIopen("",           // driver configuration parameters: use default
                  "Default",    // video format name: use default as per specific frame grabber
                  "");          // video setup file exported by XCAP: none
    pxd_doSnap(0x1,             // select PIXCI(R) unit 1
               1,               // select frame buffer 1
               0);              // default timeout
    pxd_PIXCIclose();
For a shorter program, under Windows and Linux (but not DOS) the:
    pxd_PIXCIclose();
may be eliminated, but for the sake of robustness and portability including the pxd_PIXCIclose is recommended.

A note on syntax for users of languages other than C/C++. A string of characters in C/C++ is denoted by " characters; a "" represents the empty string. XCLIB doesn't expect the " characters. Use whatever syntax is required by the current language to provide the characters shown within the "" characters.

For PIXCI®E EB1mini, miniH2B, miniH2F, miniH2x4F, and mf2280 frame grabbers, the pxd_PIXCIopen parameter ''Default'' selects the camera for which the current PIXCI® frame grabber is intended, as coded into the PIXCI® frame grabber's EEPROM. If no selection is coded, or ''Generic Camera Link'' is coded (image resolution, pxd_imageXdim() and pxd_imageYdim(), of 888×888), after configuring the XCAP application to the desired camera and format, a video setup file can be exported and its path name specified as the third parameter to pxd_PIXCIopen.

A slightly longer program that does something useful with the captured image:

    #include "xcliball.h"
        ...
    pxd_PIXCIopen("", "Default", "");
    pxd_doSnap(0x1, 1, 0);
    pxd_saveTiff(0x1,           // select PIXCI(R) unit 1
                 "image.tif",   // pathname
                 1,             // select frame buffer 1
                 0, 0,          // upper left X, Y AOI of buffer
                 -1, -1,        // lower right X, Y AOI of buffer,
                                // -1 is an abbreviation for the maximum X or Y
                 0, 0);         // reserved
    pxd_PIXCIclose();
which saves the captured image to a file. Or:
    #include "xcliball.h"
        ...
    pxd_PIXCIopen("", "",  "/user/application/myVideoSetup.fmt");
    pxd_doSnap(0x1, 1, 0);
    {
        void *buf = malloc(  pxd_imageXdim()    // horizontal resolution
                           * pxd_imageYdim()    // vertical resolution
                           * sizeof(short));

pxd_readushort(0x1, // select PIXCI(R) unit 1 1, // select frame buffer 1 0, 0, // upper left X, Y AOI of buffer -1, -1, // lower right X, Y AOI of buffer, // -1 is an abbreviation for the maximum X or Y buf, // program buffer to be filled pxd_imageXdim() * pxd_imageYdim(), // size of program buffer in short's "Grey"); // color space to access .. process data .. free(buf); } pxd_PIXCIclose();
which copies the captured image into a program buffer. Both pxd_saveTiff and pxd_readushort allow saving or reading from an area of interest (AOI) of the captured image. The latter example also shows use of a video setup file exported by the XCAP application. (Use of a solidus (''/'') instead of reverse solidus (''\'') is allowed by all operating systems and avoids any complications of C/C++ treating the latter as a special character).

The XCLIB library provides data conversions, ''unsigned char'' versus ''unsigned short'', as necessary, as well as color space conversions. Thus, pxd_readushort will work with 8, 10, or 12 bit pixels, enlarging 8 bit pixels to unsigned shorts (right justified). And the similar pxd_readuchar also works with 8, 10, or 12 bit pixels, truncating 10 or 12 bit pixels to unsigned chars (keeping the most significant bits).

Similarly, these functions convert color spaces as needed; in the example above, correct grey level data is provided regardless of whether the captured image is monochrome, RGB, BGR, or Bayer.

The XCLIB-Lite library does not provide data size or color space conversions. For data size and color space dependent access to pixel data the pixel size, resolution and color space can be queried:

    ..
    pxd_doSnap(0x1, 1, 0);
    {
        void *buf = malloc(  pxd_imageXdim()    // horizontal resolution
                           * pxd_imageYdim()    // vertical resolution
                           * (pxd_imageBdim()>8? sizeof(short): sizeof(char))
                                                // bit depth
                           * pxd_imageCdim());  // number of color components

if (pxd_imageBdim() <= 8) pxd_readuchar(0x1, 1, 0, 0, -1, -1, buf, pxd_imageXdim() * pxd_imageYdim() * pxd_imageCdim(), pxd_imageCdim()==1? "Grey": "RGB"); else pxd_readushort(0x1, 1, 0, 0, -1, -1, buf, pxd_imageXdim() * pxd_imageYdim() * pxd_imageCdim(), pxd_imageCdim()==1? "Grey": "RGB"); .. process data .. free(buf); }
In practice, most application programs are designed for a specific camera and resolution, and the above code can be simplified by using only the relevant pxd_readuchar or pxd_readushort.

For Bayer output cameras, the pxd_imageCdim() is the number of effective and useful color components, namely 3, not the number of raw values per pixel!

 

6.3. XCLIB Error Detection

Every real application should check for errors. Most XCLIB library functions return an integer value, with values less than 0 indicating an error. The pxd_mesgErrorCode function provides a textual description for each error:

    int     r;
    r = pxd_saveTiff(0x1, "image.tif", 1, 0, 0, -1, -1, 0, 0);
    if (r < 0) {
        // For Windows GUI
        MessageBox(NULL, pxd_mesgErrorCode(r)), "XCLIB Error", MB_OK|MB_TASKMODAL);
        // For Windows Console, DOS, Linux
        printf("XCLIB Error: %s\n", pxd_mesgErrorCode(r));
    }
In addition, the pxd_mesgFault provides a detailed report for errors occurring during pxd_PIXCIopen and video capture functions.
    int     r;
    r = pxd_PIXCIopen("", "Default", "");
    if (r < 0)
        pxd_mesgFault(0x1); // select PIXCI(R) unit 1
Under Windows, the pxd_mesgFault pops up a dialog. Under DOS or Linux it displays error information to ''stderr''.

Hereafter, for the sake of brevity and clarity, error checking will not be shown.

 

6.4. PIXCI® EB1mini, miniH2B, miniH2F, miniH2x4F, mf2280 Video Configuration

The PIXCI® EB1mini, miniH2B, miniH2F, miniH2x4F, or mf2280 video setup defaults to match the camera's default configuration. For most cameras the default configuration is full resolution, free-running.

To change the video setup, such as to select a camera trigger mode (if available on the camera used) or to reduce resolution so as to obtain more frame buffers within a given amount of memory:

  1. Using XCAP, configure the desired format and resolution.
  2. Use:
        PIXCI®
        PIXCI® Export Video Setup
    
    to save the video setup to a specified file name.
  3. Use:
        pxd_PIXCIopen("", "", "/user/application/myVideoSetup.fmt");
    
    to open XCLIB with the same video setup. The third parameter can be a fully qualified path name or a file name; if the latter, the standard operating system default determines what directory (folder) is expected to contain the file name. (Use of a solidus (''/'') instead of reverse solidus (''\'') is allowed by all operating systems, and avoids any complications of C/C++ treating the latter as a special character).

    Alternately, the pxd_videoFormatAsIncluded allow switching the video setup without re-opening XCLIB, as well as compiling the video setup file into the application. See the XCLIB Reference Manual for more information.

For many Camera Link cameras, the exported video setup file also includes the RS-232-like Camera Link serial commands to setup the camera; these commands are automatically sent to the camera by pxd_PIXCIopen or pxd_videoFormatAsIncluded.

For other cameras, the camera's default configuration can be changed using the manufacturer's software. Alternately, an application note in the XCLIB Reference Manual describes how to explicitly send serial commands to re-configure the camera via XCLIB. In all cases, it is important that the camera's configuration, such as trigger mode versus free-run mode, match the PIXCI® frame grabber's configuration.

 

6.5. More Video Capture Modes

The:

    pxd_doSnap(...);
is the easiest function for capturing single images; the programmer specifies the buffer and the function returns when the capture is completed.

Other capture functions return immediately, allowing the application to proceed with other tasks without having to utilize multiple execution threads. The:

    pxd_goSnap(0x1, // select PIXCI(R) unit 1
               1);  // select frame buffer 1
initiates capture of a single video field into the specified buffer, the:
    pxd_goLive(0x1, // select PIXCI(R) unit 1
               1);  // select frame buffer 1
initiates continuous capture of each video field into the specified buffer, the:
    pxd_goLivePair(0x1, // select PIXCI(R) unit 1
                   1,   // select frame buffer 1
                   2);  // select frame buffer 2
initiates continuous captured of each video field into alternate buffers, the:
    pxd_goLiveSeq(0x1               // select PIXCI(R) unit 1
                  1,                // select start frame buffer 1
                  pxd_imageZdim(),  // select end as last frame buffer
                  1,                // incrementing by one buffer
                  pxd_imageZdim(),  // once per buffer
                  1);               // advancing to the next buffer after each frame
initiates capture at video rate of ten fields into ten buffers, and finally the:
    pxd_goLiveSeq(0x1               // select PIXCI(R) unit 1
                  1,                // select start frame buffer 1
                  pxd_imageZdim(),  // select end as last frame buffer
                  1,                // incrementing by one buffer
                  0,                // for ever
                  1);               // advancing to next buffer after each 1 frame
initiates continuous capturing of video fields at video rate into a ''ring'' composed of all frame buffers.

For use along with capture functions that run in the ''background'' are functions to monitor their progress. For example:

    pxd_goSnap(0x1, 1);
    for (;;) {
        if (!pxd_goneLive(0x1, 0))
            break;
        .. do some useful work while waiting..
    }
is one method of checking whether the previous pxd_goSnap is done. Or,
    pxbuffer_t  last = -1;

pxd_goLivePair(0x1, 1, 2); for (;;) { if (pxd_capturedBuffer(0x1) == last) continue; // nothing new captured yet last = pxd_capturedBuffer(0x1); .. process last captured image .. }
continuously captures into a pair of buffers, processing each video field as the next is being captured and can also be used with pxd_goLiveSeq().

Of course, many applications prefer to avoid ''polling'' for status within a loop. The XCLIB library also provides asynchronous notification of both:

  1. A field has arrived from the camera (whether PIXCI® frame grabber was instructed to capture it or not), and
  2. A field or frame has been captured.
In Windows these notifications take the form of an ''Event'', in DOS these notifications take the form of a callback function, and in Linux these notifications take the form of a ''signal''. For example, under Windows:
    HANDLE event = pxd_eventCapturedFieldCreate(0x1);   // select PIXCI(R) unit 1
Thereafter, any thread waiting upon the event will be notified whenever a field has been captured by pxd_goSnap, pxd_goLive, pxd_goLivePair, pxd_goLiveSeq, or by the pxd_goLiveTrig discussed below.

The pxd_goLivePair or pxd_goLiveSeq start the video engine to continuously and automatically fill the ring of frame buffers; the application monitors progress and must read data from a frame buffer before being overwritten by the video engine. An alternative approach is to queue empty frame buffers which are to be filled by the DMA engine:

    pxbuffer_t  last = -1;
    pxd_quLive(0x1, 1); // add buffer 1 to video engine queue
    pxd_quLive(0x1, 2); // add buffer 2 to video engine queue
    for (;;) {
        if (pxd_capturedBuffer(0x1) == last)
            continue;   // nothing new captured yet
        last = pxd_capturedBuffer(0x1);
        .. process last captured image ..
        pxd_quLive(0x1, last);  // re-add buffer to video engine queue
    }
The application monitors progress and must read data and re-queue each frame buffer; if no frame buffer is queued the video engine skips capture of a frame. Both approaches share the same performance - video, bus, and CPU efficiency; they differ as to what is captured when the application falls behind its processing of image data.

 

6.6. PIXCI® EB1mini, miniH2B, miniH2F, miniH2x4F, mf2280 Triggered Capture

Cameras used with the PIXCI® EB1mini, miniH2B, miniH2F, miniH2x4F, or mf2280 frame grabber typically have a free-run mode; continuously exposing and sending fields or frames to the frame grabber. Some may also have a asynchronous trigger mode; where the camera exposure and video is quiescent until arrival of a trigger, upon which the sensor is exposed once and a single image sent to the frame grabber.

When combined with the capabilities of the PIXCI® frame grabber, the camera may be in asynchronous trigger mode but with the frame grabber generating periodic triggers (in XCAP this is usually governed by the Controlled Frame Rate). For the purposes of this discussion on XCLIB triggered capture, this combination is effectively the same as if the camera were in a free-run mode.

6.6.1. Free-Run Trigger Capture

For a camera and frame grabber combination in free-run mode, triggering consists of selecting a field or frame to capture.

A simple trigger example using the general purpose level sensitive input, is:

    int odata;
    odata = pxd_getGPIn(0x1,    // select PIXCI(R) unit 1
                        0);     // reserved
    while (odata == pxd_getGPIn(0x1, 0))
        ;
    pxd_doSnap(0x1, 1, 0);
which waits until any of the general purpose input(s) have changed, then snaps the next field or frame arriving from the camera.

Or,

    int odata = pxd_getGPIn(0x1, 0);    // save current G.P inputs
    pxd_goLive(0x1, 1);                 // capture continuously
    pxd_setGPout(0x1, 0x01);            // set output flag that we are ready
    while (odata == pxd_getGPIn(0x1, 0))
        ;                               // wait for trigger
    pxd_setGPout(0x1, 0x00);            // set output flag that we saw the trigger
    pxd_goUnLive(0x1);                  // terminate continuous capture
    while pxd_goneLive(0x1, 0))         // wait for capture to cease
        ;
    pxd_setGPout(0x1, 0x01);            // set output flag that we are done
This variation captures the field or frame which was being sent while the trigger was received; the former example captures the field or frame following the trigger. It also demonstrates use of the general purpose output for ''handshaking'' with the external equipment.

Both of these examples depend on the application responding to the general purpose input in a timely manner, and both consume time in wait loops. Neither is a significant problem under single-tasking DOS, but can be a problem under multi-tasking Windows or Linux depending upon how much latency the application allows and what other tasks are running.

Alternately, the pxd_goLiveTrig described in the XCLIB Reference Manual performs the same function as the latter example including use of general purpose output ''strobes'', but returns immediately leaving the trigger capture running in the ''background''. It also provides minimal latency and additional options for delaying the capture following the trigger by a specified number of fields or frames.

Triggering can also be done using the general purpose edge sensitive trigger:

    int ocnt = pxd_getGPTrigger(0x1, 0);        // save current trigger count
    while (ocnt == pxd_getGPTrigger(0x1, 0))    // wait for change
        ;
    pxd_doSnap(0x1, 1, 0);                      // snap
or
    int ocnt = pxd_getGPTrigger(0x1, 0);        // save current trigger count
    pxd_goLive(0x1, 1);                         // capture continuously
    while (ocnt == pxd_getGPTrigger(0x1, 0))    // wait for change
        ;
    pxd_goUnLive(0x1);                          // terminate continuous capture
    while pxd_goneLive(0x1, 0))                 // wait for capture to cease
        ;
For applications which prefer to avoid ''polling'' for status within a loop, XCLIB also provides asynchronous notification of the general purpose trigger. As for video field notifications, in Windows these notifications take the form of an ''Event'', in DOS these notifications take the form of a callback function, and in Linux these notifications take the form of a ''signal''. For example, under Windows:
    HANDLE event = pxd_eventGPTriggerCreate(0x1, 0, 0);   // select PIXCI(R) unit 1
Thereafter, any thread waiting upon the event will be notified upon the general purpose trigger, and can then do a pxd_goSnap or pxd_goUnLive, as appropriate.

6.6.2. Asynchronous Trigger Capture

For a camera in asynchronous trigger mode, there are two possible submodes. In one submode, the trigger is external. An example of capturing a single triggered image is:

    pxd_goSnap(0x1, 1);             // call BEFORE trigger is expected
    while pxd_goneLive(0x1, 0))     // wait for trigger then
        ;                           // wait for capture to cease
The pxd_doSnap should not be used, unless its timeout parameter adjusted to accommodate the delay before the trigger arrives. The pxd_goLive, pxd_goLivePair, and pxd_goLiveSeq can also be used to continuously capture triggered images, or to capture a sequence of triggered images. Neither pxd_getGPTrigger nor its asynchronous notification (e.g. pxd_eventGPTriggerCreate) need be used.

In the second submode, the PIXCI® frame grabber automatically issues a single trigger pulse (in XCAP this is described as the ''Button'' or ''Snap Button'' trigger selection.) In XCLIB, the equivalent is simply:

    pxd_doSnap(0x01, 1);
or
    pxd_goSnap(0x01, 1, 0);
which both ''arm'' the PIXCI® frame grabber to capture an image and trigger the camera. Neither pxd_getGPTrigger nor its asynchronous notification (e.g. pxd_eventGPTriggerCreate) need be used. The pxd_goLive, pxd_goLivePair, and pxd_goLiveSeq are not appropriate for this mode.

 

6.7. PIXCI® EB1mini, miniH2B, miniH2F, miniH2x4F, mf2280 Triggered Sequence Capture

For a camera and frame grabber combination in free-run mode, triggering consists of selecting a field or frame on which to start or end capture. For example:

    int odata;
    odata = pxd_getGPIn(0x1,    // select PIXCI(R) unit 1
                        0);     // reserved
    while (odata == pxd_getGPIn(0x1, 0))
        ;
    pxd_goLiveSeq(0x1               // select PIXCI(R) unit 1
                  1,                // select start frame buffer 1
                  pxd_imageZdim(),  // select end as last frame buffer
                  1,                // incrementing by one buffer
                  pxd_imageZdim(),  // for this many captures
                  1);               // advancing to next buffer after each 1 frame
    while pxd_goneLive(0x1, 0))     // wait for capture to cease
        ;
which waits until any of the general purpose inputs have changed, then fills the frame buffers with fields or frames at video rate.

Or,

    int ocnt = pxd_getGPTrigger(0x1, 0);
    pxd_goLiveSeq(0x1               // select PIXCI(R) unit 1
                  1,                // select start frame buffer 1
                  pxd_imageZdim(),  // select end as last frame buffer
                  1,                // incrementing by one buffer
                  0,                // for ever
                  1);               // advancing to next buffer after each 1 frame
    while (ocnt == pxd_getGPTrigger(0x1, 0))
        ;
    pxd_goUnlive(0x1);
    while pxd_goneLive(0x1, 0))         // wait for capture to cease
        ;
    printf("Most recent captured buffer: %d\n", pxd_capturedBuffer(0x1);
which continuously captures until the general purpose trigger arrives, leaving the frame buffers filled with video fields or frames that predate the trigger.

Or,

    int         odata = pxd_getGPIn(0x1, 0);
    pxvbtime_t  fieldcount;
    pxd_goLiveSeq(0x1               // select PIXCI(R) unit 1
                  1,                // select start frame buffer 1
                  pxd_imageZdim(),  // select end as last frame buffer
                  1,                // incrementing by one buffer
                  0,                // for ever
                  1);               // advancing to next buffer after each 1 frame
    while (odata == pxd_getGPIn(0x1, 0))
        ;
    fieldcount = pxd_videoFieldCount(0x1);  // get current value of field counter
    while (pxd_videoFieldCount(0x1) < fieldcount+(pxd_imageZdim()/2)*pxd_imageIdim())
        ;
    pxd_goUnlive(0x1);
    while pxd_goneLive(0x1, 0))         // wait for capture to cease
        ;
    printf("Most recent captured buffer: %d\n", pxd_capturedBuffer(0x1);
which continuously captures until the trigger arrives, waits for half of the frame buffers to be filled following the trigger, then terminates capture. The captured result is half of the frame buffers predate the trigger and half postdate the trigger.

As for single image trigger capture, polling on the pxd_getGPTrigger can be avoided by using asynchronous notifications (e.g. pxd_eventGPTriggerCreate). Alternately, the pxd_goLiveSeqTrig described in the XCLIB Reference Manual performs the same function as the last three examples, but returns immediately leaving the trigger capture running in the ''background'' and provides minimal latency.

For a camera in asynchronous trigger mode, with an external trigger, sequence capture is simply:

    pxd_goLiveSeq(0x1               // select PIXCI(R) unit 1
                  1,                // select start frame buffer 1
                  pxd_imageZdim(),  // select end as last frame buffer
                  1,                // incrementing by one buffer
                  pxd_imageZdim(),  // for this many captures
                  1);               // advancing to next buffer after each 1 frame
    while pxd_goneLive(0x1, 0))     // wait for capture to cease
        ;

In the second trigger submode, where the PIXCI® frame grabber automatically issues a single trigger pulse (in XCAP this is described as the ''Button'' or ''Snap Button'' trigger selection), sequence capture is simply:

    int     i;
    for (i = 1; i <= pxd_imageZdim(); i++) {
        pxd_goSnap(0x1, i);
        while pxd_goneLive(0x1, 0))         // wait for capture to cease
            ;
    }
As before, the polling can be avoided by using asynchronous event notifications.

 

6.8. Additional XCLIB Documentation

For additional guidance in using the XCLIB library, consult the XCLIB Reference Manual and the example programs provided with the XCLIB library.


 

 

 

7. Specifications

 

7.1. Signal Input and Output:

EIA RS-644 (LVDS) signals are driven and received by the Intel FPGA.

 

7.2. EIA RS-644 Low Voltage Differential Signaling (LVDS)

Voltage Input Low Maximum: 0.8 Volts
Voltage Input High Minimum: 2.0 Volts
Absolute Maximum Input Voltage Range: -0.3 volts to +3.6 volts.

Voltage Output Low Minimum: 0.9 Volts.
Voltage Output High Maximum: 1.6 Volts.
Absolute Maximum Output Voltage Range: -0.3 volts to +3.6 volts.

 

7.3. Resolution:

The number of pixels and lines is determined by the camera.

 

7.4. Frame Rate

The frame rate of the camera determines the frame rate of the PIXCI® frame grabber.

 

7.5. Size

The PIXCI® miniH2BL circuit board is 1.69 inches long (42.92mm) by 2.42 inches wide (61.46mm).
The MDR/SDR with LSHM connector circuit board is 1.515 inches wide (38.5mm) by 1.2 inches deep (30.48mm).
The Mini PCIe half length circuit board is 1.055 inches long (26.80mm) by 1.181 inches wide (30.0mm).

 

7.6. Power

The PIXCI® miniH2BL requires 250 milliamps from a 12 volt supply.
The P6 power connector is a right angle Molex 22051022.

 

7.7. Bus Requirements


Specifications subject to change without notice.

 

 

 

8. Trigger and Camera Integration Control Registers

This chapter of the manual is a ''generic'' version that discusses triggering and camera integration control for most cameras. Note that some cameras use unique control signals which are not described here. Contact EPIX if detailed programming information is required for a specific camera.

The trigger and camera integration control registers generate the CC1 signal to the camera via the Camera Link cable. The CC1 signal can be generated in response to an external rising or falling edge trigger input, in response to a write to the EXSYNC register, or can be continuously running.

Two 16 bit counters and a pixel clock divider determine the timing of the CC1 signal. The EXSYNC counter determines the width of CC1 while the PRIN counter determines the time from the end of CC1 to the start of the next CC1. EXSYNC is used to program the exposure width, while PRIN is used to program the time for readout of the sensor. Some camera modes do not use the width of the CC1 signal, instead they use the edge of CC1 to start an exposure and readout with the exposure controlled internally by the camera.

 

8.1. PRIN and EXSYNC Bit Definitions



PRINC. Trigger Control and PRIN Delay Count. Write Only. 32 bits.
0x0000 on power up.
Bits 31 thru 16 control the width of PRIN.
0x0000 on power up.

Bits 9-7, EPCD, Exposure Pixel Clock Divide.
Selects one of 8 outputs of the Pixel Clock divide counter that clocks the camera control state machine clock.
9,8,7=111 selects Pixel Clock divide by 512.
9,8,7=110 selects Pixel Clock divide by 256.
9,8,7=101 selects Pixel Clock divide by 128.
9,8,7=100 selects Pixel Clock divide by 64.
9,8,7=011 selects Pixel Clock divide by 32.
9,8,7=010 selects Pixel Clock divide by 16.
9,8,7=001 selects Pixel Clock divide by 8.
9,8,7=000 selects Pixel Clock divide by 4.


Bit 4, TRIGNEG, Trigger Input Polarity Select.
Bit 4=1 selects a 1 to 0 transition of the Trigger input.
Bit 4=0 selects a 0 to 1 transition of the Trigger input. The trigger input is on the LEMO and P3 connectors.

Bit 2, EXPS, EXSYNC Polarity Select.
Bit 2=1 selects a positive CC1 pulse.
Bit 2=0 selects a negative CC1 pulse. The EXSYNC signal is connected to CC1.

Bit 1, CNTS, Continuous Select.
Bit 1=1 selects continuous operation of the EXSYNC state machine. If TIS=1, a trigger will generate an EXSYNC that is the width of the EXSYNC count down time, load the PRIN count, count down the PRIN count, and wait for the next trigger input. If TIS=0, the state machine will run continuously, counting down the EXSYNC (and generating CC1), then counting down PRINC, and looping.
Bit 1=0 selects single shot operation of EXSYNC. Each time the EXSYNC register is written, one EXSYNC pulse will be produced while the EXCYNC is counted down, followed by the PRINC count down. Each EXSYNC write will start this cycle.

Bit 0, TIS, Trigger Input Select.
Bit 0=1 causes the start of EXSYNC to be delayed until the trigger input goes from 0 to 1 (if TRIGNEG =1) or 1 to 0 (if TRIGNEG =0). CNTS must be =1 for TIS=1 to operate.
Bit 0=0 ignores the trigger input and causes the EXSYNC to be loaded after both counters have counted down (if CNTS =1), or wait for next write of EXSYNC (if CNTS =0).

EXSYNC. EXSYNC Count. Write Only. 32 bits.
0x0000 on power up.
Bits 31 thru 16 controls the width of EXSYNC.

 

8.2. Camera Timing Formula and Examples

Exposure for area scan cameras is determined by the formula:
Exsync = (Camera_clock x Exposure) / (1024 x 2N )
Prin = Camera_clock x (Frame_time - Exposure_time - 2 x 10-6 ) / (1024 x 2N)

Exposure for line scan cameras is determined by the formula:
Exsync = (Camera_clock x Exposure) / (4 x 2N )
Prin = Camera_clock x (Frame_time - Exposure_time - 2 x 10-6 ) / (4 x 2N)

Note that the value of the pixel clock divider, N, must be the same for both Exsync and Prin calculations. The Exsync and Prin counters are 16 bits and the value of Exsync and Prin must be less than 65535 (decimal) and greater than 0.

The examples that follow assume use of a line scan camera with a pixel clock of 67.58 MHz, and results are rounded to the nearest whole number.

8.2.1. PRIN and EXSYNC Calculations Example 1


For an exposure_time of 2 milliseconds and a line rate of 200 Hz (5 milliseconds) with N=0:
Exsync = (67.58 x 106 x 2 x 10-3 ) / (4 x 20 ) = 33790.
Prin = 67.58 x 106 x ( 5 x 10-3 - 2 x 10-3 - 2 x 10-6 ) / (4 x 20 ) = 50651.

8.2.2. PRIN and EXSYNC Calculations Example 2


For an exposure time of 4 milliseconds and a line rate of 50 Hz (20 milliseconds)with N=0:
Exsync = (67.58 x 106 x 4 x 10-3 ) / (4 x 20 ) = 67580 (greater than 65535).
Prin = 67.58 x 106 x ( 20 x 10-3 - 4 x 10-3 - 2 x 10-6 ) / (4 x 20 ) = 270286 (more than 4 times greater than 65535).
Since the line rate requires a divisor for the pixel clock, a divisor of N=3 is chosen. Recalculating:
Exsync = (67.58 x 106 x 4 x 10-3 ) / ( 4 x 23 ) = 8448.
Prin = 67.58 x 106 x ( 20 x 10-3 - 4 x 10-3 - 2 x 10-6 ) / ( 4 x 23 ) = 33786.

 

8.3. XCLIB Trigger and Camera Integration Register Programming

The EXSYNC and PRIN are set by loading a video configuration format file previously saved by XCAP, via

    pxd_PIXCIopen(...)
or
    pxd_videoFormatAsIncluded(...);

The EXSYNC and PRIN 16 bit count values, which are the upper 16 of the 32 bit registers, can set and queried in the XCLIB library with functions:

    int  pxd_setExsyncPrin(int unitmap, uint exsync, uint prin);
    uint pxd_getExsync(int unitmap);
    uint pxd_getPrin(int unitmap);

The lower 16 bits of these registers can be queried and set in the XCLIB library with functions:

    int  pxd_setExsyncPrincMode(int unitmap, uint exsyncbits, uint princbits);
    uint pxd_getExsyncMode(int unitmap)
    uint pxd_getPrincMode(int unitmap);
Only those bits which control the scaling of EXSYNC and/or PRIN values, or similar features should be changed by using pxd_setExsyncPrincMode. Other features, such as a change to resolution, or trigger mode also require a change to the video format configuration, which this function does not automatically perform. Use of pxd_PIXCIopen or pxd_videoFormatAsIncluded with a video format configuration exported by XCAP should be used to effect change to all EXSYNC and PRINC values and bits.

See the XCLIB Reference Manual for additional information.


 

 

 

9. In Case of Trouble

If problems are encountered during operation of the PIXCI® frame grabber, an error message may appear in the center of the XCAP main window, or a Message Log window may appear in the upper-right corner of the XCAP main window containing an error message, or if using XCLIB an error message window may appear. If using the XCLIB library, display of the error message is under control of the user's application. To help resolve any problems, it is recommended to first read the frequently asked questions (FAQ) posted on the support page of the EPIX, Inc. website. The FAQ addresses several of the most commonly encountered problems. Highly detailed computer configuration tips are available by selecting PC Configuration Tips from the Help menu in the XCAP main window.

Third party applications using XCLIB may choose not to display error messages. So as to assist providing technical support, error messages describing a fault on open of the PIXCI® frame grabber are automatically logged to the Windows Event Log (for Windows 2000 and later) or the Linux syslog.

Below are listed all of the potential errors that may be encountered, along with a brief description of the error and brief summary of how to resolve the error condition.

 

9.1. Fault on Open Error Messages

The following error messages are reported when a fault occurs preventing use of the PIXCI® frame grabber.

Bad Link/Load/Env! (NN)!

For DOS. Contact EPIX, Inc. Technical Support.


Bad Linux memory specification? (-IA parameter inconsistent w. lilo/grub)!

Using ''forceful'' frame buffer memory allocation, the specified frame buffer memory overlaps memory owned by Linux. Either the -IA Driver Configuration Parameter is invalid, or the Linux configuration via lilo or grub is invalid, or the option to reserve memory for frame buffers was not selected when Linux booted.


Bad or conflicting IRQ? (DD request_irq NN)!

For Linux. Contact EPIX, Inc. Technical Support.


Bad or conflicting IRQ? (DDK VPICD_Virtualize_IRQ)!

For Windows 95, 98, ME. Contact EPIX, Inc. Technical Support.


Bad or conflicting IRQ? (DDK IoConnectInterrupt NN)!

For Windows NT, 2000, XP, Vista, 7, 8, 10, 11. Contact EPIX, Inc. Technical Support.


Bad or conflicting register address? (DDK HalTranslateBusAddress)!

For Windows NT. Contact EPIX, Inc. Technical Support.


Bad or conflicting register address? (DD request_(mem_)region)!

For Linux. Linux refuses to grant access to the PIXCI® frame grabber's registers. Can occur when another driver already has exclusive access to the registers. Contact EPIX, Inc. Technical Support.


Bad Windows memory specification? (-IA parameter inconsistent w. boot.ini)!

For Windows NT, 2000, XP, Vista, 7, 8, 10, 11. Using ''forceful'' frame buffer memory allocation, the specified frame buffer memory overlaps memory owned by Windows. Either the -IA Driver Configuration Parameter is invalid, or the Windows configuration via boot.ini or bcdedit is invalid, or the option to reserve memory for frame buffers was not selected when Windows booted.


Bad Windows memory specification? (Inconsistent MaxPhysPage and -IA parameters)!

For Windows 95, 98, ME. Using forceful memory allocation, either the -IA Driver Configuration Parameter is invalid, or the Windows configuration via MaxPhysPage is invalid, as the specified frame buffer memory overlaps memory used by Windows.


Can't access PCI Configuration Registers! (NN)!

Contact EPIX, Inc. Technical Support.


Can't access 24C16! (NN:NN).

Possible hardware fault. Contact EPIX, Inc. Technical Support.


Can't allocate frame buffer memory! (NN)!

The Driver Configuration Parameters do not specify a sufficiently large memory size. Or, the operating system is unable to provide sufficient memory.


Can't allocate serial data buffer(s)!

The operating system is unable to provide sufficient memory for serial data buffers.


Can't allocate capture enqueue/dequeue buffer!
The operating system is unable to provide sufficient memory for the ''enqueue/capture/dequeue'' video capture mode. Other video capture modes are unaffected.

Can't identify imaging board model! (NN/NN/NN)!

Deprecated, see ''Can't identify frame grabber model! (NN/NN/NN)!''.


Can't identify frame grabber model! (NN/NN/NN)!

The PIXCI® driver and/or library predates the installed PIXCI® frame grabber. Contact EPIX, Inc. for newer drivers and software.


Can't obtain DDK timer services! (NN)!

For Windows 95, 98, ME. Contact EPIX, Inc. Technical Support.


Can't open format file: ... !

A format (video setup) file specified in pxd_PIXCIopen or xclib_open does not exist or can't be opened.


Data path error! (%.8lX -> %.8lX)(%lc).

Possible hardware fault in PIXCI® frame grabber or computer's motherboard. Try a different slot on motherboard, or a different motherboard. With some PIXCI® frame grabbers, can also occur if Windows entered sleep or hibernation mode; newer drivers provide a ''hibernate compatibility patch'' enabled via registry (reboot to take effect), to resolve the problem. With some PIXCI® frame grabbers and motherboards, can occur if Windows' ''Fast Startup'' option is enabled; disable the ''Fast Startup'' option.


Camera serial configure: no response (error=NN)(Command = '...')

The camera did not respond, or did not respond as expected, to one or more serial commands contained in the video setup (video format). Check that the camera is connected and powered on. For most cameras, inclusion of serial commands in the video setup is optional.


DPMI host not found!

Only occurs under DOS.


DPMI error! (Op NN)!

The specified DPMI operation code failed. Only occurs under DOS.


Driver/Library Interface Phase Error! (NN:NN:NN)!

Contact EPIX, Inc. Technical Support.


Driver access denied: ... !

For Linux. The driver module appears to be installed (and is listed by ''lsmod''), but the /dev/pixci node may not exist, have the wrong major or minor numbers, or have the wrong permissions. Generally, occurs only when alternate methods or scripts (other than those provided by EPIX, Inc.) have been used to install the driver.


Driver installed ... version is incompatible with library ... !

Self explanatory.


Driver installed ... is wrong version - requires ... !

Deprecated. Self explanatory.


Driver not installed - requires ... or frame grabber not installed!

Generally self explanatory.

Note that on Windows systems supporting Plug & Play (i.e. other than Windows NT), the driver will only be installed if a PIXCI® frame grabber is detected. Use the Windows' Device Manager (run ''devmgmt.msc'') to distinguish whether a PIXCI® frame grabber isn't installed versus the driver not installed. Error can also occur on Windows 2K and later if using a newer V3.8.1 driver with an older DLL, as the driver was modified to pass Microsoft's ''style'' checks; a driver registry option provides for backward compatibility.

On Linux, the driver is installed during boot. When compiled with current default options, the driver remains installed regardless of whether the PIXCI® frame grabber is detected. Compiled with backward-compatible options, the driver will remain installed only if a PIXCI® frame grabber is detected; run ''lspci'' to distinguish whether the driver wasn't installed upon boot versus a PIXCI® frame grabber isn't installed.[8]


Driver communication error!

For Linux. Contact EPIX, Inc. Technical Support.


Eeprom contents invalid! (NN:MN)

The EEPROM used to specify the PIXCI® frame grabber's default configuration can't be accessed or has been overwritten. Contact EPIX, Inc. Technical Support.


Format init error: ... !

An error occurred while initializing the library and the video setup. Contact EPIX, Inc. Technical Support.


Format init error ... for ... !

An error occurred while initializing the library and the video setup for the named video format. Contact EPIX, Inc. Technical Support.


Format name not recognized: ... !

The specified video format name is not recognized in conjunction with the current PIXCI® frame grabber.


Format unsupported for model=... submodel=... for: ... !

An error occurred while initializing the library and the video setup for the named video format. Contact EPIX, Inc. Technical Support.


Format init error: Can't open file ... !

The specified video format file can't be found or opened.


Format init error ... for file: ... !

An error occurred while initializing the library and the video setup for the specified video format file.


Frame buffer memory extends above the 4 GB address limit with 32 bit XCLIB on 64 bit O.S.!

On a 64 bit computer with more than 4 GB of memory, set the ''Restrict Non-Forceful Memory to be below 4 GiByte'' (in PIXCI®, PIXCI® Open/Close, Advanced) option.


Imaging board already in exclusive use!

The PIXCI® frame grabber is already open, and was opened for exclusive use rather than for shared use.


Imaging board hardware resource conflict! (DDK HalAssignSlotResources NN)!

For Windows NT. Contact EPIX, Inc. Technical Support.


Imaging board hardware resource conflict? (DDK IoReportResourceUsage NN)!

For Windows NT. Contact EPIX, Inc. Technical Support.


Imaging board not correctly installed! (No PNP DevNode)!

For Windows 95, 98, ME. Windows Plug & Play configuration of the PIXCI® frame grabber and driver is incorrect.


Invalid driver configuration parameters!

The Driver Configuration Parameters (in the Windows registry entry of the PIXCI® driver, appended to the Linux insmod command, in the first parameter to pxd_PIXCIopen, or in the third parameter to xclib_open) are invalid, such as an undefined flag, or a numeric value containing invalid characters.


Invalid register base address! (NN)!

With some PIXCI® frame grabbers, can occur if Windows entered sleep or hibernation mode; newer drivers provide a ''hibernate compatibility patch'' enabled via registry, reboot Windows to resolve the problem. Otherwise, contact EPIX, Inc. Technical Support.


Multiple imaging boards not identical!

Deprecated, see ''Multiple frame grabbers not identical!''.


Multiple frame grabbers not identical!

Multiple PIXCI® frame grabbers opened ''as a group'' (i.e. with one instance of XCLIB, or under XCAP with ''Common Controls'') must be of identical models. Depending on the model and revision(s), some different revisions of a given model are transparent to the PIXCI® imaging board driver, for others, the revisions must also be identical.


Multiple imaging board revisions not identical!

Deprecated, see ''Multiple frame grabber revisions not identical!''.


Multiple frame grabber revisions not identical!

Multiple PIXCI® frame grabbers opened ''as a group'' (i.e. with one instance of XCLIB, or under XCAP with ''Common Controls'') must be of identical models. Depending on the model and revision(s), some different revisions of a given model are transparent to the PIXCI® imaging board driver, for others, the revisions must also be identical.


No imaging board installed!

Deprecated, see ''No frame grabber installed!''.


No frame grabber installed!

No PIXCI® frame grabber is installed; check if the PIXCI® frame grabber is properly seated or try a different slot.


No imaging board selected!

Deprecated, see ''No frame grabber selected!''.


No frame grabber installed!

No PIXCI® frame grabbers are installed.


No frame grabber selected!

XCAP's Multiple Devices selection (PIXCI®, PIXCI® Open/Close, Multiple Devices), or XCLIB's Driver Configuration Parameters, does not select use of any PIXCI® frame grabber.


Operating system not supported!

The PIXCI® driver and/or library predates the current operating system. Contact EPIX, Inc. for newer drivers and software.


PCI BIOS not present!

For DOS.


Selected imaging boards not installed! (Select=NN Install=NN)!

Deprecated, see ''Selected frame grabbers not installed! (Select=NN Install=NN)''.


Selected frame grabbers not installed! (Select=NN Install=NN)!

XCAP's Multiple Devices selection (PIXCI®, PIXCI® Open/Close, Multiple Devices), or XCLIB's Driver Configuration Parameters, selects use of the N'th PIXCI® frame grabber, but there are fewer PIXCI® frame grabber's installed.


Unable to access imaging board registers! (DDK MapPhysToLinear)!

Deprecated, see ''Unable to access frame grabber registers! (DDK MapPhysToLinear)!''.


Unable to access frame grabber registers! (DDK MapPhysToLinear)!

For Windows 95, 98, ME. Contact EPIX, Inc. Technical Support.


Unable to access imaging board registers! (DDK MmMapIoSpace)!

Deprecated, see ''Unable to access frame grabber registers! (DDK MmMapIoSpace)!''.


Unable to access frame grabber registers! (DDK MmMapIoSpace)!

For Windows NT, 2000, XP, Vista, 7, 8, 10, 11. Contact EPIX, Inc. Technical Support.


Unable to access imaging board registers! (DD ioremap)!

Deprecated, see ''Unable to access frame grabber registers! (DD ioremap)!''.


Unable to access frame grabber registers! (DD ioremap)!

For Linux. Contact EPIX, Inc. Technical Support.


Unable to lock memory! (DDK VDMAD_Lock_DMA_Region)!

For Windows 95, 98, ME. Contact EPIX, Inc. Technical Support.


Unable to map image memory? (DD ioremap)!

For Linux. Contact EPIX, Inc. Technical Support.


Unable to map image memory? (DD request_mem_region)!

For Linux. Contact EPIX, Inc. Technical Support.


Unable to map image memory! (DDK PageReserve/CommitPhys/Lock)!

For Windows 95, 98, ME. Contact EPIX, Inc. Technical Support.


Unable to map image memory! (DDK MmMapIoSpace)!

For Windows NT, 2000, XP, Vista, 7, 8, 10, 11. Contact EPIX, Inc. Technical Support.


Unable to map image memory! (DDK MapPhysToLinear)!

For Windows NT, 2000, XP, Vista, 7, 8, 10, 11. Contact EPIX, Inc. Technical Support.


Unable to map image memory! (DDK ZwMapViewOfSection)!

For Windows NT, 2000, XP, Vista, 7, 8, 10, 11. Contact EPIX, Inc. Technical Support.


Unable to map image memory! (DDK IoAllocateMdl/MmMapLockedPages NN)!

For Windows NT, 2000, XP, Vista, 7, 8, 10, 11. Contact EPIX, Inc. Technical Support.


Unrecognized format: ... !

The named video format, specified in pxd_PIXCIopen or xclib_open, does not match any predefined video format for the current PIXCI® frame grabber.


Unsupported format: ... !

The named video format, specified in pxd_PIXCIopen or xclib_open, is not supported by the current PIXCI® frame grabber.


XCLIB-Lite does not support multiple imaging boards!

Deprecated, see ''XCLIB-Lite does not support multiple frame grabbers!''.


XCLIB-Lite does not support multiple frame grabbers!

Self explanatory.


XCLIB-Lite does not support more than 64 MiByte of frame buffer memory!

Self explanatory.

 

9.2. Run-Time Error Messages

The following error messages are reported when a fault occurs during operation of the PIXCI® frame grabber.

Invalid frame buffer number! (.../...)!

A frame buffer number, larger than the current number of frame buffers, was specified for capture. Most likely an error by application software.


Serial communication receive framing error! (NN)

The camera sent a ''break'' signal, or the camera held the serial transmit line low during reset or while power is cycled.

May also occur if the camera power is cycled, or if cables are removed or attached, while the PIXCI® frame grabber is in use.


Serial communication receive overrun! (NN)

PIXCI® driver and/or application software could not process serial data from the camera quickly enough. Typically occurs when use of IRQ's are disabled (PIXCI®, PIXCI® Open/Close, Advanced).

May also occur if the camera power is cycled, or if cables are removed or attached, while the PIXCI® frame grabber is in use.


Unable to record frame buffer status & time stamp! (buffer/s=NN/NN)!

The frame buffer memory is not writable from the interrupt handler. Typically occurs when using forceful memory allocation. Set the ''Per Frame-Buffer Status: Use System Memory'' (in PIXCI®, PIXCI® Open/Close, Advanced) option.


Video not captured! (Image Adrs FIFO)!

Contact EPIX, Inc. Technical Support.


Video not captured! (PCI Bus Error NN)!

During video capture via DMA, the PCI Express bus logged an error. Contact EPIX, Inc. Technical Support.


Video not captured! (PCI FIFO Overflow)!

The bandwidth provided by the PCI Express bus is insufficient for capturing video-rate data. Updating the computer's firmware and BIOS, trying a different PCI Express slot, and disabling power conservation features in BIOS may increase the bandwidth provided by the bus. Reduce the camera's horizontal resolution, reduce the camera's bit depth, reduce the camera's pixel clock, or enable camera binning (subsampling), or, if capturing 10 or 12 bits per pixel enable use of bit-packing, to decrease the bandwidth required. Can also be caused by excessive cable length (relative to the camera's pixel clock frequency), causing the clock to be garbled.


 

 

 

10. Hardware Revisions

Revision 0: Frame grabber released. Revision 1: Changed Trigger I/O connector to Molex 501190-2017. April 2019.


 

 

 

11. Glossary


Active Video
Portion of an analog video signal which contains information on intensity and color; i.e the viewable portion.

By analogy, the term may be used with digital video signals: the portion of signal(s) containing useful pixel values as indicated by the ''Line Valid'' and ''Frame Valid'' signals.


AOI
Area of interest. An area of an image subject to modification, loading, saving, printing, etc. Typically, within EPIX® imaging software, when used in conjunction with, or contrasted against, the term ''ROI'': an AOI is rectangular, with sides parallel to the image axis while an ROI is any other closed geometric shape or orientation. However, there is no industry standard for use of AOI vs ROI, and within EPIX® imaging software various camera specific controls typically follow the conventions of each camera's manufacturer.

An AOI is sometimes referred to as a ''window'' within the image, but is not to be confused with a ''window'' or ''dialog'' of a Graphical User Interface, such as Windowstm, Javatm, or GTK.


Analog Camera
A video camera which outputs pixel intensities (imagery) and timing or synchronization information as one or more continuously varying electrical signals. A camera with analog output might contain an analog sensor or a digital sensor.

Analog Gain
Amplification of the analog pixel intensity signal so as to modify the resulting pixel values. Ideal analog gain would multiply the pixel intensity by a constant without addition of noise. In practice, analog gain adds a random noise component which is independent of pixel intensity, and adds a random noise component which increases, perhaps non-linearly, for higher pixel intensities. Typically, both noise components increase for higher levels of gain.

In contrast to ''Digital Gain'', use of analog gain on dim pixel intensities will, typically, produce an image with both greater contrast and greater continuous tonality, albeit with increased levels of random noise.


Aperture (Lens)
The opening, often of adjustable diameter, through which light enters into the camera.

Area of Interest
See ''AOI''.

Area Scan
A method of image acquisition which uses a two-dimensional array of photo sensitive elements or a two-dimensional photo sensitive surface.

Aspect Ratio
The ratio of a pixel's width to height, or the ratio of an image's width to height; the two are not equivalent, but can be related given the image's horizontal and vertical resolution. Image analysis and measurement is simplified by having square pixels - the real world distance represented by a given number pixels is the same whether extended horizontally or vertically. An image might consist of square pixels but with different horizontal and vertical resolution; resulting in a non-square image aspect ratio, but is still convenient for image analysis and measurement.

Authorization Key
Small device which must be connected to a computer, typically via the parallel port or USB port, to enable use of software protected against unauthorized duplication.

AVI (.AVI)
The Audio-Video Interleaved, multi-media, image file format specified by Microsoft for use with Windows. Can contain sequences of images within a single file. AVI 1.0 files may be as large as 4 GiByte, however, some programs may not be able to read AVI 1.0 files larger than 2 GiByte. AVI 2.0 files may be larger than 4 GiByte.

Back Focus (Adjustment)
A mechanical adjustment within a camera to change the distance from the lens' back mounting flange to the image sensor. Adjustment may be required if, due to manufacturing tolerances, a lens set to a given object distance does not focus on an object at that distance. Adjustment may also be required when switching between visible and infrared illumination.

Back Porch
The portion of an analog video signal which follows the rising edge of the horizontal sync and precedes the active video.

Bayer Pattern
A 2×2 mosaic of red, green, green, and blue filters:
          . . . .
    ...  R  G  R  G  ...
    ...  G  B  G  B  ...
    ...  R  G  R  G  ...
    ...  G  B  G  B  ...
          . . . .
which cover the photosites of some CCD or CMOS image sensors. There are four possible alignments of the mosaic with the image's upper left photosite; a particular alignment is often referred to as ''Bayer Phase''. A color RGB image is constructed by interpolating the pixel values derived from photosites under the various filters.

BigTIFF
An extension to the Tagged Image File Format (TIFF) for saving digital images and image sequences; BigTIFF files may be as large as 16 EiByte (264 bytes). BigTIFF is not as widely supported as the TIFF format.

Binary
The base 2 numbering system used by most computers and digital circuits.

Bit
The smallest, fundamental, unit of binary data.

Bits per Pixel
Number of bits assigned to represent grey intensity (or level), or luminance and chrominance intensity (or level), information in a single pixel. Indirectly, the number of different discrete levels that represent the variations of such information. For example, 8 bits per pixel yields 256 distinct grey levels.

For color pixels, the number of bits may refer to the number of bits per color component, or to the total number of bits for all components; ''16 bit RGB'' may refer to an older S/VGA standard that provides low quality color by using 5 or 6 bits for red, blue, and green, or may refer to high quality color using a total 48 bits per pixel and providing 65536 intensity levels for each of red, green, and blue.


BGR Color
Same as ''RGB Color'', with the order changed to blue, green, and red.

Black Level (Control)
Same as ''Brightness (Control)''.

BMP (.BMP)
The BitMaP image file format specified by Microsoft for use with Windows for saving graphics and digital images.

Brightness (Control)
A parameter to modify the image's brightness - the average pixel value. Typically, a brightness control modifies the image by adding or subtracting a constant from (digital) pixel values or (analog) pixel intensities.

Buffer
RAM or other memory used to store data. See ''Image Buffer'', ''Frame Buffer''.

Capture
To convert a field or frame of video into pixel values stored in a frame buffer.

Camera Format
A standardized numerical description of camera's sensor size, used to specify optics and select lenses. A camera format of 1/4 inch corresponds to a physical sensor size of 3.6×2.7 mm with a 4.5 mm diagonal a camera format of 1/3 inch corresponds to a physical sensor size of 4.8×3.6 mm with a 6.0 mm diagonal, a camera format of 1/2 inch corresponds to a physical sensor size of 6.4×4.8 mm with a 8.0 mm diagonal, a camera format of 1/1.8 inch corresponds to a physical sensor size of 7.2×5.4 mm with a 9.0 mm diagonal, a camera format of 2/3 inch corresponds to a physical sensor size of 8.8×6.6 mm with a 11.0 mm diagonal, a camera format of 1 inch corresponds to a physical sensor size of 12.8×9.6 mm with a 16.0 mm diagonal, a camera format of 1.1 inch corresponds to a physical sensor size of 12×12 mm with a 17.0 mm diagonal. a camera format of 4/3 inch corresponds to a physical sensor size of 17.3×13.0 mm with a 21.6 mm diagonal.

Sensor formats and suggested lens formats for SILICON VIDEO® cameras are:

Camera Sensor Format Suggested Lens Pixel Size
or Size Format or Pitch(p),
micrometer

10C-CL and 10M-CL 1/2.3 in. 1/2 in. C-Mount 1.67×1.67
10C6 and 10M6 1/2.3 in. 1/2 in. C-Mount 1.67×1.67
1281M and 1281C 2/3 in. 2/3 in. C-Mount 7.0×7.0
1310 and 1310C 1/2 in. 1/2 in. C-Mount 6.0×6.0 (p)
15C5 and 15M5 1/2.3 in. 1/2 in. C-Mount 1.4×1.4
1514CL 1/2.3 in. 1/2 in. C-Mount 1.4×1.4
1820CL 1/2.3 in. 1/2 in. C-Mount 1.25×1.25
1C45 and 1M45 1/3 in. 1/3 in. C-Mount 3.75×3.75 (p)
20C-CL and 20M-CL 32.77×24.58mm2 F-Mount 6.4×6.4
2112 and 2112C 1 in. 1 in. C-Mount 7.5×7.5 (p)
2KS-C and 2KS-M 2/3 in. 2/3 in. C-Mount 5.5×5.5
5M10 and 5C10 1/2.5 in. 1/2 in. C-Mount 2.2×2.2
642M and 642C 1/2 in. 1/2 in. C-Mount 9.9×9.9
643M and 643C 1/2 in. 1/2 in. C-Mount 9.9×9.9
9C10 1/2.3 in. 1/2 in. C-Mount 1.75×1.75
9M001 and 9M001C 1/2 in. 1/2 in. C-Mount 5.2×5.2
9T001C 1/2 in. 1/2 in. C-Mount 3.2×3.2
WGA-M and WGA-C 1/3 in. 1/3 in. C-Mount 6.0×6.0

Camera Link
A standard for a high performance serial data interface using an 11 pair conductor cable and the MDR 26-pin connector, or the smaller SDR 26-pin connector, intended for the connection of digital cameras to frame grabbers. Camera Link utilizes the Channel Link interface and chips for transmission of pixel data and video timing, and utilizes LVDS for transmission of serial data and other signals. The cable length is limited to 10 meters; however, some cameras operating with higher pixel clock rates may specify a shorter maximum length; some thinner or more flexible cables may also specify a shorter maximum length. The cable may be effectively extended by use of a repeater.

The Base Configuration uses one Channel Link chip, one MDR or SDR 26-pin connector, and can transfer 24 pixel bits per clock, such as 8×1, 8×2, 8×3, 10×1, 10×2, 12×1, 12×2, 14×1, 16×1 monochrome or Bayer color, and 8×3 RGB color. The Medium Configuration uses two Channel Link chips, two MDR or SDR 26-pin connectors and can transfer 48 pixel bits per clock, such as 8×4, 10×3, 10×4, 12×3, 12×4 monochrome or Bayer color, and 10×3, 12×3 RGB color. The Full Configuration uses three Channel Link chips, two MDR or SDR 26-pin connectors and can transfer 64 pixel bits per clock, such as 8×8 monochrome or Bayer color. The 80-Bit Configuration (formerly referred to as Expanded Configuration, Extended Configuration, Full Plus Configuration or Deca Configuration), uses three Channel Link chips, two MDR or SDR 26-pin connectors and can transfer 80 pixel bits per clock, such as 8×10 or 10×8 monochrome or Bayer color.

The standard provides for four trigger/control signals, ''CC1'', ''CC2'', ''CC3'', and ''CC4''.


Camera Link DLL
A standardized API (Application Program Interface) that provides serial transport functions; i.e. to send a string of characters (bytes) or receive a string of characters (bytes). The standard does not specify how strings (bytes) are to be formatted into commands or responses; each camera manufacturer, or each camera, specifies its own syntax and semantics. Camera Link DLLs are assigned clserXXX.DLL names, where ''XXX'' is a unique frame grabber identifier or frame grabber manufacturer identifier. The Camera Link DLL for PIXCI® frame grabbers is named clserEPX.DLL.

Camera Link Lite
A standard for a high performance serial data interface using a 7 pair conductor cable and SDR 14 pin connector, intended for the connection of digital cameras to frame grabbers and can transfer 10 pixel bits per clock, such as 8×1 or 10×1 monochrome or Bayer color. The standard provides for a single trigger/control signal, ''CC1''.

CCIR
Consultative Committee International Radio. The European video standard for monochrome television transmission which specifies 625 lines per frame, divided into two interlaced fields, and a 25 Hz frame rate.

Channel Link
A standard for a high performance serial data interface using a 9 or 11 conductor cable and operating at speeds of 840 to 1848 megabits per second, developed by National Semiconductor which provides Channel Link interface chips.

Chroma Key
A rule for combining two video signals, or two images, based on the color of one image, such as: The output signal/image is taken from signal/image A, except where A contains the chroma key value, where the output is taken from signal/image B, allowing signal/image A and B to be overlaid, with A's chroma key pixels effectively transparent.

Clamping (in Analog Video)
The process of restoring a DC reference level which was removed to make an AC coupled signal. Without a known DC reference level, an analog video waveform can't be digitized correctly.

Clipping
Limiting a signal or numeric value, such as pixel intensity to not be below a limit and/or not be above a limit. For example: Eight bit pixel values are limited to be between values 0 and 255, inclusive; a pixel intensity greater than the intensity which corresponds to value 255 must be limited to value 255. Clipping pixel values introduces non-linear errors; non-linear errors cause problems with color correction, PRNU and DSNU correction, intensity based image measurements, and other features.

C-Mount Lens
A lens specification in which the mounting threads are 1 inch diameter with 32 threads per inch, and a distance of 17.526 mm from the lens' back mounting flange to the image sensor. The similar ''CS-Mount'' lens specification has the same mounting threads but with a distance of 12.526 mm from the lens' back mounting flange to the image sensor.

CMY Color
Color space composed of three components: cyan, magenta, and yellow. CMY and RGB are easily related: cyan is the complement of red, magenta the complement of green, and yellow the complement of blue. Alternately, red is the complement of cyan, green the complement of magenta, and blue the complement of yellow.

CMYK Color
Color space composed of four components: cyan, magenta, yellow, and black. The ''natural'' color space for printing and graphic arts, as so-called ''four color'' material is printed using combinations of cyan, magenta, yellow, and black inks.

Color Temperature
The spectrum of illumination produced by an ideal blackbody which is at a specified temperature in degrees Kelvin. Often used synonymously with Correlated Color Temperature which is the color temperature of a black body whose perceived color is most closely matched by a whitish illuminate, as judged by a human observer. Lower temperature illuminators such as tungsten lamps at 2800°K to 3000°K radiate more reddish (lower energy) wavelengths, higher temperature illuminators such as cool white fluorescent lamps at 4100°K to 4300°K radiate more bluish (higher energy) wavelengths. The color temperature of natural illumination - sunlight on planet Earth - varies depending on the season, time of day, and degree of cloud cover; typical values are 5000°K for sunrise & sunset daylight, 6500°K for noon daylight, and 7500°K for overcast daylight.

Color Camera, One Chip
A color camera with a single solid state imaging sensor in which the sensor's photosites are covered with different colored filters. Typically a pattern of red, green, and blue filters is used. Each color pixel is created by combining values from three or more adjacent photosites. Contrast to ''Color Camera, Three Chip''.

Color Camera, Three Chip
A color camera with three solid state imaging sensors in which through the use of filters or other optical means, each sensor is exposed to a narrow color band of the full field of view. Typically, the sensors are exposed to reddish, greenish, and bluish colors (as typical filters are wideband and admit colors other than pure red, green, and blue). Each color pixel is created by combining one value from corresponding photosites of each of the three imaging sensors. Contrast to ''Color Camera, One Chip''.

Color Gamut
Color range attainable by a display monitor or other media. The color gamut of a display monitor is dependent on the CRT's phosphor coating, or the LCD's filters and illuminant. A printed image's color gamut is dependent on the inks and paper.

Color Key
See ''Chroma''Key"''.''

Color Lookup Table
An association between each possible value of an index pixel and (typically) an RGB color.

Composite Video
Analog video signal which combines active video, sync, and blanking into a single waveform. Examples include RS-170, NTSC, PAL, CCIR, and RS-343.

Compression
Reduction in the size of a image, usually in conjunction with being saved to disk or transmitted. See Lossy Compression and Lossless Compression.

Contrast
A measure of the relative intensity differences within an image. A low contrast image may be dark (e.g. a foggy night), or bright (e.g. a foggy day); a high contrast image has both bright and dark areas. Typically, the difference between an image's lightest and darkest grey level value.

Contrast (Control)
A parameter to modify the image's contrast - the difference between the brightest and darkest pixels. Typically, a contrast control modifies the image by multiplication of (digital) pixel values, or (analog) pixel intensities, with a constant.

Instead of multiplying pixel values (V) by a constant (C):

    V*C
which leaves the 0 value pixel unchanged, image processing algorithms may instead use:
    (V-(M/2))*C + (M/2)
where (M) is the maximum pixel value and leaves mid-value pixels unchanged. In this context, the former equation may be referred to as ''Gain'' and the latter as ''Contrast''. In other contexts, ''Gain'' and ''Contrast'' are synonyms.

Controlled (Video) Mode
A camera mode in which the camera is normally quiescent; that is, not continuously and autonomously exposing photosites and outputting the corresponding pixel values. Upon receiving an external trigger signal or command, the camera exposes and outputs a specified number of images, typically one, and resumes its quiescent state. The ''Controlled (Video) Mode'' allows synchronizing the camera's exposure to an external event, such as when an object obstructs a photoelectric sensor. The ''Controlled (Video) Mode'' also allows synchronizing two or more cameras, by use of a common external trigger signal. Contrast to ''Free-Run (Video) Mode''.

In ''Controlled (Video) Mode'' some cameras can overlap exposure of the next frame with output of the current frame, yielding the same frame rate as in free-run mode (assuming that the exposure period isn't longer than the output period). In other cameras, the exposure and output are sequential; the frame rate decreases as the exposure increases, and a frame rate near that of free-run mode is achieved only as the exposure period approaches zero.

Different camera manufacturers use various synonyms, such as ''Frame on Demand Mode'', ''Triggered (Video) Mode'', ''External Triggered (Video) Mode'', ''External Sync (Video) Mode'', ''Single Shot (Video) Mode'', ''Controlled (Video) Mode'', or ''Async Shutter (Video) Mode''.


CRT
Cathode Ray Tube. An older technology for display monitors and televisions, using an electron gun, magnetic or electrostatic deflection, and phosphors, coating the display surface, that fluoresce when struct by the electron beam.

CS-Mount Lens
See ''C-Mount Lens''.

Digital Camera
A camera which outputs pixel intensities (imagery) and timing or synchronization information as discrete data.

Digital Gain
Modifies pixel values by multiplying, or scaling, the digital pixel value by a constant. Any noise in the pixel values is scaled up, or down, in the same proportion as the original pixel values.

Digital gain can make a dim image more pleasant to view, but can't introduce additional grey levels or colors. For example (assuming 8 bit pixels), a very dim grey level image whose pixel values range from zero through four can be scaled by 64. The result will have high contrast - both dark and bright pixels - but still have only 5 different grey levels and lack continuous tonality.

Contrast to ''Analog Gain''.


Digitize
To convert an analog signal into discrete values. Sometimes used as synonym for Capture, as in ''to digitize an image''.

Dongle
Same as Authorization Key.

DSNU
Dark Signal Non-Uniformity. A camera or sensor's variation of values from pixel to pixel, other than random noise, with no illumination. The pattern of variation is typically unique to each camera or sensor. Some cameras correct DSNU within the camera, other cameras expect DSNU to be corrected outside of the camera. See also ''FPN''.

DSP
Digital Signal Processor. Component which executes computations and gives instructions to manipulate data, specifically designed to operate on signals and images, in contrast to general purpose processors.

EISA Bus
Extended Industry Standard Architecture Bus. Faster successor to the ISA bus. A ISA board will function correctly in an EISA slot.

EMI
Electromagnetic interference.

Equalization Pulses
Two groups of pulses used in some analog video signals which occur before and after serrated vertical sync pulses. Equalization pulses occur at twice the normal horizontal scan rate to insure correct 2:1 interlacing.

Even Field
See ''Interlace''.

Exposure (Period)
The duration of time that a sensor's photosites are sensitive to, and integrating the intensity of, light so as to affect the image intensity. Often a synonym for ''Shutter (Period)'' when used in the context of a camera with digital sensor.

ExpressCard/34
A style of peripheral card used on laptop computers. An ExpressCard/34 host supports both PCIExpress and USB 2.0; a specific ExpressCard/34 typically uses one or the other. See PCI-Express Interface.

Actual throughput on most computers is approximately 190 MByte/sec.

The PIXCI® ECB1-34 is an ExpressCard/34 card, using the PCIExpress x1 interface.


ExpressCard/54
A style of peripheral card used on laptops. An ExpressCard/54 host supports both PCIExpress and USB 2.0; a specific ExpressCard/54 typically uses one or the other. See "PCI-Express Interfaces" .

Actual throughput on most computers is approximately 190 MByte/sec.

An ExpressCard/54 host accepts both ExpressCard/54 and ExpressCard/34 cards.

The PIXCI® EC1, ECB1, and ECB2 are ExpressCard/54 cards, using the PCIExpress x1 interface.


File System
The partitioning and sharing of raw disk space into volumes, directories (folders), and multiple files, by the host operating system. Limits on the number of files and their sizes are imposed by the operating system.
File System Max # of Files Max File Size (bytes)

Windows FAT16 512 per folder 232-1

Windows FAT16 w. 512 per folder 231-1
DOS, Win 95/98/ME

Windows FAT32 65534 per folder 232-1

Windows NTFS 232-1 per volume 244 - 64*1024
Under Windows FAT16 and FAT32, the maximum number of files per folder (directory) is reduced when long file names (i.e. larger than 8.3) are used. Under Windows NTFS, using 300,000 or more long file names per folder decreases performance.

Under Linux, there are 10 or more varieties of file systems, each with unique limits.

The maximum number of files is significant when capturing video to multiple files, one per image. The maximum file size is significant when capturing video with multiple images in a single file.


FITS (.FTS)
The Flexible Image Transport System file format. An image file format popular in the scientific - particularly astronomy - communities.

Flat Field Correction (FFC)
Correction of an image for the effects of a sensor or camera's photo response non-uniformity and/or fixed pattern noise. See ''FPN'', ''PRNU'', and ''DSNU''. Also known as Non-Uniform Correction (NUC), or Per-Pixel Normalization.

Free-Run (Video) Mode
A camera mode in which the camera is continuously and autonomously exposing photosites and outputting the corresponding pixel values. The exposing and outputting of pixel values continues regardless of whether a frame grabber is connected, or whether the connected frame grabber is in capture mode. Contrast to ''Controlled (Video) Mode''.

Different camera manufacturers use various synonyms, such as ''Continuous (Video) Mode'', ''Internal Sync (Video) Mode'', ''Auto (Video) Mode'', or ''Live (Video) Mode''.


FPN
Fixed Pattern Noise. Used to describe the effects due to ''DSNU'', or used to describe the effects due to both DSNU and ''PRNU''.

Frame
For frame versus field: see ''Interlace''.

Frame Buffer
An ''Image Buffer'' dedicated to receive video fields or frames from a camera at video rate, or from which video fields or frames are sent to a display device at display rate. An Image Buffer physically attached to the video capture or display hardware. Or, an Image Buffer in computer memory for video capture or display hardware supporting DMA; typically dedicated for purpose and pre-reserved so as to avoid allocation or configuration overhead as each video field or frame arrives from the camera or as each video field or frame is to be sent to the display device.

Frame Buffer Memory
A memory for one or more Frame Buffers. Often reconfigurable - enlarging the memory or reducing the image size allows fitting more Frame Buffers and thus more video frames (images) can be captured without incurring the overhead of copying the image data elsewhere.

Frame Valid
A Camera Link signal indicating which scan lines correspond to valid pixel values, and which is the first and last scan line of each image. Other cameras with digital output may also have a ''Frame Valid'' signal, or may have a ''Vertical Blanking'', ''Vertical Sync'', ''V-Sync'', or similar signal for the same (possibly logically inverted) purpose.

Front Porch
The portion of an analog video signal that follows the start of the horizontal blank and precedes the horizontal sync pulse.

Gain (Control)
See as ''Contrast (Control)''.

Gamut
See ''Color Gamut''.

Genlock
To recover and use the original horizontal and vertical timing control signals from an analog video signal.

Genlock (Video) Mode
A camera mode in which the camera is continuously exposing photosites and outputting the corresponding pixel values, with the cycles synchronized to an external signal or video waveform.

Typically, a camera in genlock video mode can only operate at, or near, a specific frame rate; a slower external signal or video waveform ''genlock input'' will either be ignored or corrupt the video output. In contrast, a camera in ''Controlled (Video) Mode'' can operate at various frame rates, from zero up to the camera's designed maximum rate.


Global Reset, Rolling Shutter
Or, ''Rolling Shutter, Global Reset''. A mechanism within some CCD or CMOS sensors in which all photosites start exposing at the same time, but stop exposing at different times. Intended for use with a mechanical shutter or a strobe light to freeze motion. When used without a mechanical shutter and with ''normal'' lighting, the image will darker on one side (typically the top), and brighter on the opposite side (typically the bottom).

Global Shutter
A mechanism within some CCD or CMOS sensors in which all photosites are exposed at the same time. Use of the term ''Global Shutter'' with an ''Interlaced'' camera is ambiguous; all photosites of both fields may be exposed at the same time, or only the photosites of each field may be exposed at the same time.

Different camera manufacturers use various synonyms, such as ''Free-Run Shutter'' (but is not to be confused with ''Free-Run (Video) Mode'').


Gray
Alternate spelling for ''Grey''.

Grey
Alternate spelling for ''Gray''.

Grey Level Image
An image in which each pixel has component value, interpreted as luminance and rendered as black, white, and, optionally, shades of grey. See also ''Monochrome''.

Halftoning
Conversion of a grey level image so as to be representable by (typically) a printer that only prints black (over white), or white (over black). Conversion of a multi-toned color image so as to be representable by (typically) a printer that only prints three, four, or perhaps eight colors (over white).

HDD
Hard Disk Drive.

HDMI Display
A display/monitor using the High-Definition Multimedia Interface to connect to a display controller.

Horizontal Blanking
The portion of the analog video signal when brightness is suppressed at the end of a scan line during which the electron beam retraces from right to left on a CRT-based video monitor.

By analogy, the term may be used with digital video signals as a synonym for the complement of ''Line Valid''.


Horizontal Sync
A pulse contained within horizontal blanking of an analog video signal which synchronizes hardware with the start/end of each line of each frame.

By analogy, the term may be used with digital video signals as a synonym for the complement of ''Line Valid''.


HSB Color
Color space composed of Hue (e.g. red, yellow, orangish-red, etc.), Saturation (degree of dilution with white), and Brightness (level of intensity). The HSB color space is modeled upon human perception of color; in contrast to, for example, ''RGB Color'', which is derived from technical methods used to encode and reproduce color.

Image
A rectangular grid of pixels.

Image Buffer
RAM or other memory used to hold an image or images.

Image Frame Buffer
See ''Frame Buffer''.

Image Sequence
A linear group of images, usually time indexed.

Interlace
Use of (typically) two fields, one termed ''odd'' and the other ''even'', to scan a video frame, each field representing alternate scan lines from the imaging sensor. An interlaced system decreases perceived flicker of live video by increasing the field update rate and originated with the earliest broadcast television systems. But captured and thus static images may show horizontal banding or show the subject material as a ''ghost'' due to each field being exposed at different times and the subject having moved between exposures. Contrast to ''Progressive Scan''.

Some cameras are designed to expose all scan lines of the sensor at the same time, eliminating temporal shifts between fields, but output the scan lines in interlace format so as to maintain compatibility with display and capture devices, these are often called ''Progressive Exposure and interlaced Output''.


Interrupt
Technique used to determine when a device requires attention, by having the device alter the processor's execution in a controlled manner. Contrast to ''Polling''.

IR-Cut Filter
An optical filter which blocks light of infrared (IR) wavelengths, passing other wavelengths. Most CCD and CMOS sensors are inherently sensitive to near-infrared, as well as visible, wavelengths. Lack of an IR-cut filter with a monochrome camera shifts the tonal balance of the image but increases sensitivity, and has (roughly) equal arguments for and against its use. Lack of an IR-cut filter with a single chip color camera using a Bayer pattern sensor will cause, unless the illumination contains little or no infrared, ''washed out'' color, as the typical Bayer pattern color filters all pass infrared wavelengths.

Some cameras contain a built-in (perhaps removable) IR-cut filter between the sensor and the lens. Other cameras do not contain an IR-cut filter, allowing a filter, if desired, to be attached to the end of the lens farthest from the sensor.

Most SILICON VIDEO® color cameras contain an optional IR-cut filter between the sensor and the lens - within the back focus adjustment ring. The filter can be removed by replacing one back focus adjustment ring with another.


IR Filter
An optical filter which passes light of infrared (IR) wavelengths, blocking other, including visible, wavelengths. Not to be confused with an ''IR-Cut Filter''.

ISA Bus
Industry Standard Architecture Bus. The original 8 or 16 bit peripheral bus of the IBM PC.

JPEG (.JPG)
The Joint Photographic Experts Group file format. An industry standard file format used to save digital images. A widely used file format as it is not company or product specific. Most often uses - and to many people, it implies - lossy compression, although optional features also support lossless compression.

Line Valid
A Camera Link signal indicating which pixel clocks correspond to a valid pixel value, and which is the first and last pixel of each scan line. Other cameras with digital output may also have a ''Line Valid'' signal, or have a ''Horizontal Blanking'', ''Horizontal Sync'', ''H-Sync'', or similar signal for the same (possibly logically inverted) purpose.

Line Scan
A method of video acquisition which uses a one-dimensional array or line of photo sensitive elements. Color line scan cameras may have three, closely spaced, parallel one-dimensional arrays or lines of photo sensitive elements, one for each RGB color; or may have two, closely spaced, parallel one-dimensional arrays or lines of photo sensitive elements, the two lines covered by a ''Bayer'' mosaic of color filters; or may have a single array or line of photo sensitive elements, with every third pixel covered by a red, green, or blue filter. A two-dimensional image is ''built up'' by moving the sensor relative to the object being imaged.

Lossless Compression
Any image compression method in which the decompressed image is an exact copy of the original image, bit for bit.

Lossy Compression
Any image compression method in which the decompressed image is not an exact copy of the original image, bit for bit. The quality of lossy (de)compression varies from images which, to most observers, appear identical to the original image, to images that are almost identical except for a few artifacts, to images which are obviously and grossly distorted.

LVDS
Low Voltage Differential Signalling. Also known as RS-644, an EIA standard for differential signalling format for binary data. Capable of higher speeds over greater distance as compared to RS-422.

LVTTL
Specifically: Low Voltage TTL. Generally: Single-ended signalling format for binary data using levels of 0.0 and +3.3 volts (nominal). TTL is intended for high speed signalling between integrated circuits on the same or adjacent boards, although may be used at slower speeds over several feet. Also referred to as ''3.3V TTL''.

Mapping
A correspondence between one set of objects to another; often one set of numbers to another. Often used to describe a rule to convert measured units to real world units. For example, fractional inches on a map to miles, or a number of pixels to inches.

Monochrome
In general: An image or other visual representation using a single color, or shades of a single color. Typically, in the context of digital imaging: An image using only black, white, and, optionally, shades of grey.

A ''grey level image'' is monochrome.

An image composed of RGB pixels, each pixel having identical red, green, and blue values, can be referred to as a monochrome image or a ''colorless color'' image. As can an image using any other color space (such as ''HSB Color'' or ''YCrCb Color'') in which each pixel value resolves to black, white, or a shade of grey.


Monochrome Video
A video mode which has one component, usually luminance, producing a monochrome image.

Multiplexor
A device or component which steers one of several input signals to its output as directed by a control input. Also spelled Multiplexer.

M.2
The Next Generation Form Factor (NGFF) is a specification for expansion cards and connectors. The A-Key, B-Key, and E-Key variations support the PCIe x1 Gen 2 interface (along with other interfaces). The M-Key variation supports the PCIe x4 Gen 2 interface (along with other interfaces).

NTSC
National Television Standards Committee. Color analog video standard composed of a luminance signal and two color difference signals. 30 frames per second, 525 lines per frame, where 483 of these lines are visible on the display, the remainder used for blanking. For interlaced video, the 525 lines are split into 262.5 lines per field. Also see ''Interlace''.

NUC
Non-Uniformity (Pixel) Correction. See ''PRNU''.

Odd Field
See ''Interlace''.

Offset (Control)
Same as ''Brightness (Control)''.

PAL
Phase Alternation Line. Color analog video standard used in Europe and other countries. 625 lines per frame, 25 frames per second.

Palette
See Color Lookup Table.

Pan
To move the viewed area of text or image left and right through the horizontally larger text or image. See also ''Scroll''.

PC/AT Bus
The ISA Bus, 16 bit version. Capable of transferring two to four megabytes per second.

PCI Bus
The Peripheral Component Interconnect Bus. A 32 or 64 bit wide bus operating at 33 or 66 MHz capable of transferring 132, 264, or 528 million bytes per second (or approximately 125.88, 251.77, or 503.54 megabytes per second). Actual throughput on most computers is approximately 100 to 110 MByte/sec. for 32 bit 33 MHz PCI, and approximately 480 MByte/sec. for 64 bit 66 MHz PCI.

The PIXCI® A, CL1, CL3SD, D, D24, D32, D2X, D3X, SI, SV2, SV3, SV4, SV5, SV5A, SV5B, and SV5L are 32 bit PCI cards. The PIXCI® CL2 is a 64 bit PCI card.


PCI-X Bus
A 64 bit wide bus operating at 133 MHz. The ''PCI-X Bus'' is not the same as ''PCI-Express Interfaces''.

PCI-Express 1.1 Interface
A four wire serial interface capable of a raw bidirectional data rate of 2.5 GBits per second (x1 link), 10 GBits per second (x4 link), 20 GBits per second (x8 link), or 40 GBits per second (x16 link). Actual throughput varies, depending in part on the Packet Payload size implemented by the motherboard.
Approximate Throughput (Gbits per Second)

Lane Width Payload size (bytes)
16 128 256

x1 1.7 1.7 2.0
x4 6.8 7.0 7.8
x8 13.7 14.0 15.7
x16 27.4 28.0 31.4

Also referred to as ''PCI-Express Gen 1'' or ''PCIe Gen 1''.

Actual throughput on most computers is approximately 190 MByte/sec. for PCI-Express 1.1 x1 cards, approximately 777 MByte/sec. for PCI-Express 1.1 x4 cards, and approximately 1600 MByte/sec. for PCI-Express 1.1 x8 cards.

The PCI-Express Interface specification allows operating a card using a lower lane width in a slot supporting a higher lane width, such as using a x1 card in a x4 slot, resulting in x1 bandwidth. However, the higher lane width slot need not support all lower lane bandwidths; for example, typical computers (circa 2008) with x16 slots might operate a x4 card but only provide x1 bandwidth, not the desired x4 bandwidth.

The PIXCI® A110, D3XE, E1, E1DB, EB1, EB1-PoCL, EL1 (Rev. 6 and earlier), EL1DB (Rev. 6 and earlier), ELS2, SI1, SI2, SV7, and SV8 are PCI-Express 1.1 x1 cards. The PIXCI® A310, E4, E4DB, and SI4 are PCI-Express 1.1 x4 cards. The PIXCI® E8, E8CAM, and E8DB are PCI-Express 1.1 x8 cards.


PCI-Express 2.0 Interface
A four wire serial interface capable of a raw bidirectional data rate of 5.0 GBits per second (x1 link), 20 GBits per second (x4 link), 40 GBits per second (x8 link), or 80 GBits per second (x16 link). Actual throughput varies, depending in part on the Packet Payload size implemented by the motherboard.

Also referred to as ''PCI-Express Gen 2'' or ''PCIe Gen 2''.

Actual throughput on most computers is approximately 448 MByte/sec. for PCI-Express 2.0 x1 cards, and approximately 1011 MByte/sec. for PCI-Express 2.0 x4 cards.

The PCI-Express Interface specification allows operating a card using a lower lane width in a slot supporting a higher lane width, such as using a x1 card in a x4 slot, resulting in x1 bandwidth. The specification also allows operating a card designed for PCI-Express 1.x in a slot supporting PCI-Express 2.0, and vice versa, resulting in the lower of the two bandwidths.

The PIXCI® E4G2-2F, E4G2-4B, E4G2-F2B, e104x4-2f, e104x4-4b, e104x4-f2b, EL1 (Rev. 7 and later), and EL1DB (Rev. 7 and later) are PCI-Express 2.0 x4 cards. The PIXCI® EB1G2 and EB1G2-PoCL PCI-Express 2.0 x1 cards. The PIXCI® E4TX2-2F, E4TX2-4B, E4TX2-F2B, miniH2x4F, and mf2280 are PCI-Express 2.0 x4 devices. The PIXCI® miniH2B and miniH2F are PCI-Express 2.0 x1 cards or M.2 E-Key/M-Key PCIe x1 gen2 cards. The PIXCI® miniH2x4F and mf2280 are M.2 M-Key PCIe x4 gen2 cards.


PCI Express mini Interface
The PIXCI® EB1mini is a PCI Express mini card, using the PCIExpress x1 interface. The PIXCI® miniH2B and miniH2F are PCI Express mini cards, using the PCIExpress x1 Gen 2 interface.

PCX (.PCX)
An image file format specified by Zsoft for saving S/VGA graphics.

Photosite
The light sensitive cells that compose a solid state imaging sensor.

Pixel
Short for picture element. The fundamental unit of digital imaging. The smallest unit of an image with homogeneous intensity and color. The numeric representation of an intensity and color. Sometimes used interchangeably with ''photosite'' to refer to the light sensitive cells that compose a solid state imaging sensor.

Pixel Binning
To combine pixel values, typically by summation, creating a smaller image. Binning by a factor of ×2 horizontally and vertically yields an image with ¼ the number of pixels, with pixel at coordinates (x,y) in the binned image corresponding to the sum of pixels at (x×2+0,y×2+0), (x×2+0,y×2+1), (x×2+1,y×2+0), and (x×2+1,y×2+1) in the original or potential image. Contrast to ''Pixel''Subsampling"''.''

Pixel Clock
An oscillator, timing circuit, or externally provided signal which is used to sample (i.e. partition) a video signal scan line into pixels. For analog signals, the scan line can be sampled more or less often, with a larger or smaller pixel clock frequency, to provide higher or lower resolution; cameras outputting analog video typically do not provide a pixel clock signal along with the analog scan line. For digital signals, the scan line must be sampled at a precise frequency and phase; cameras outputting digital signals typically provide a pixel clock signal to control sampling of the digital scan line.

Separately, a pixel clock is used to control the timing and readout within cameras using digital sensors. For some cameras the pixel clock frequency is adjustable; a higher or lower pixel clock frequency provides faster or slower frame rates with corresponding side effects, such as shorter or longer exposure limits, greater or lesser levels of fixed pattern noise, photo response non-uniformity, and random noise. For cameras with an adjustable pixel clock outputting digital signals, a higher or lower pixel clock frequency also affects the maximum length of the electrical cable connecting the camera and frame grabber.


Pixel Subsampling (Decimation)
To retrieve or utilize fewer pixels than are otherwise available, creating a smaller image. Subsampling by a factor of ×2 horizontally and vertically yields an image with ¼ the number of pixels, with pixel at coordinates (x,y) in the subsampled image corresponding to pixel (x×2,y×2) in the original or potential image. Contrast to ''Pixel Binning''.

Pixie
One component value of a pixel. A monochrome pixel contains one pixie, a color pixel typically contains three or four pixies. For example, an RGB pixel is composed of green, red, and blue pixies.

PoCL (POCL)
Power over Camera Link. An enhancement to the Camera Link specification that allows providing power to the camera (12V 4W maximum in Base mode, 12V 8W maximum in other modes) over the Camera Link cable. A PoCL compliant Camera Link cable is required. The PIXCI® EB1-PoCL, E4 (Rev. 4 & later), E4DB (Rev. 4 & later), E8, and E8DB are PoCL compliant cards. The PIXCI® E4TX2-2F, E4TX2-4B, and E4TX2-F2B are PoCL compliant devices.

PNG (.PNG)
The Portable Network Graphics file format. A file format for the lossless, portable, storage of images.

Polling
Technique used to determine when a device requires attention, by having the processor continuously test the device's status. Contrast to ''Interrupt''.

Portable Map (.PBM/.PGM/.PPM)
The Portable Bit Map (.PBM), Portable Gray Map (.PGM), and Portable Pixel Map (.PPM) file formats for saving black&white, grey level, or RGB color images, respectively, as well as image sequences. A common, uncompressed, file format as it is not company or product specific. Does not have any limitation as to image size, number of images in one file, or maximum file size.

PRNU
Photo Response Non Uniformity. A camera or sensor's variation in gain from pixel to pixel. The pattern of variation is typically unique to each camera or sensor. Some cameras correct PRNU within the camera, other cameras expect PRNU to be corrected outside of the camera. See also ''FPN''.

Progressive Scan
A camera in which all scan lines of the imaging sensor are exposed at the same time and output in order. Contrast to ''Interlace''.

Pseudo-color
A technique that assigns a color to each grey level, or blocks of grey levels, of a monochrome image, helping visualize patterns of intensities.

Raster
A sequence of scan lines which constitute a field or frame of video.

Rec. 709
The CIE Rec. 709 is a video standard intended for use with HDTV.

Region of Interest
See ''ROI''.

Resolution - Depth
Measure of the number of bits, grey levels and colors, which compose each pixel.

Resolution - Spatial
Measure of the number of pixels, horizontally and vertically, that compose an image.

Resolution - Temporal
Measure of the number of images that compose an image sequence. Implies a period of time, at a fixed time interval per image, or implies a time interval per image, for a fixed period of time.

RGB Color
Color space composed of three components: red, green, and blue. The ''natural'' color space for video hardware, as most video monitors use red, green, and blue phosphors or filters, and most video cameras use red, green, and blue filters. RGB color, by itself, is not colorimetric calibrated; the perceived intensity of a given RGB value varies on different hardware. Often abbreviated to ''RGB''.

ROI
Region of Interest. An area of an image subject to modification or analysis. See ''AOI''.

Rolling Shutter
A mechanism within some CCD or CMOS sensors in which each line or column of photosites are exposed at different, or overlapping times. Has the same effect as a mechanical slit shutter; an opaque material containing a transparent slit which is moved across the sensor in a direction orthogonal to the length of the slit. A rolling shutter is best used to image stationary, or slowly moving objects; an image of a rapidly moving object - particularly an object moving parallel to the movement of the slit - will be distorted.

Contrast to


Global Shutter

RS-170
EIA standard for broadcast, monochrome, analog video which defines voltage levels, blanking times and sync pulses. 525 lines, 30 frames per second.

RS-232
(1) EIA standard for single-ended signalling of binary data, (2) EIA standard for interpreting a binary data stream as bytes, (3) EIA standard for communication of data and status between two devices using a group of RS-232 signals, and (4) EIA standard for the physical connectors used for RS-232 communication cables. The RS-232 connection between a computer and modem, or between a computer and an RS-232 controlled camera, involves all of the above specifications.

RS-330
EIA standard for non-broadcast, monochrome, analog video which defines voltage levels, blanking times, and sync pulses. 525 lines, 30 frames per second. Compared to RS-170, has optional formats for sync pulses.

RS-343
An EIA standard for high-resolution, non-broadcast, analog, monochrome video which defines voltage levels, blanking times and width of sync pulses. The RS-343 standard covers a range of different resolutions and frame rates.

RS-422
EIA standard for differential signalling format for binary data. Capable of higher speeds over greater distance as compared to RS-232.

RS-644
EIA standard for differential signalling format for binary data, also known as LVDS. Capable of higher speeds over greater distance as compared to RS-422.

Saturated
The combination of lighting, aperture, and camera sensitivity is such that the pixel value is at its maximum and remains at the maximum value after the light intensity is reduced by an amount which would normally cause a drop in pixel value.

Saturation
The degree of vividness, strength, or purity of a color. The degree to which a color has not been weakened by mixture with white.

Scan Line
The (almost) horizontal line scanned by the electron beam in a CRT-based video monitor, and the corresponding line scanned by a vidicon-based (or similar) video camera. For cameras with digital sensors that serialize pixel data, a scan line is a sequence of pixel values, typically from a horizontal row, of sensor's photosites.

However, many digital cameras may serialize the light sensor's photosites in other than left-to-right and top-to-bottom order. For example, a camera might output the left-most pixel of a row followed by the middle pixel of a row, continue with each pair of neighboring pixels within the row, and continue in the same fashion with each row. Or a camera might output a pixel of the top row, a pixel of the bottom row, continue with each pair of neighboring pixels within those rows, and continue with each pair of rows inward toward the middle. The number of possible serialization order permutations is quite large. With such cameras, the term ''Scan Line'' may either refer to pixel values from one line of the sensor, or to a ''line'' of values output by the camera during one ''Line Valid''.


Scroll
To move the viewed area of text or image up and down through the vertically larger text or image. See also Pan.

Serration Pulses
Synchronization pulses used in some analog video signals which occur within vertical sync at twice the normal horizontal scan rate to ensure correct 2:1 interlacing.

Shutter (Period)
The duration of time that a sensor's photosites are sensitive to, and integrating the intensity of, light so as to affect the image intensity.

Some cameras may have a mechanical shutter or electronic shutter (e.g. LCD) mechanism passing light for a ''Shutter (Period)'', separate from the sensor's integration control. The sensor's integration control (if any) may then be distinguished as ''Exposure (Period)''.


Snap
To capture a single video field or frame and store it in a frame buffer.

sRGB Color
A calibrated colorimetric RGB color space intended for use on the Internet.

SOG
Sync on Green. For component analog video using one analog video signal, such as RS-170 or RS-343, for each of the red, green, and blue intensities; ''Sync on Green'' specifies that composite sync is present (from the signal source's point of view), or expected (from the monitor's, recorder's, or frame grabber's point of view), on the green signal.

SDD
Solid State Drive.

SVGA
A type of graphics display for IBM compatible computers, providing 800×600 resolution. Often used in the generic sense to describe any SVGA or better graphic display system for IBM compatible computers. Also spelled as ''S/VGA''.

S-Video
A variation of the NTSC or PAL video format, in which the luminance and chrominance are separate analog signals, providing higher quality images.

SWIR
Short-wavelength infrared.

SXGA
A type of graphics display for IBM compatible computers, providing 1280×1024 resolution. Often SVGA or S/VGA is used in a generic sense to include SXGA.

TARGA (.TGA)
A file format specified by TrueVision for saving digital images.

TDI
Time Delay Integration. A variant of Line Scan, whereby a stack of one-dimensional sensing arrays are aligned with and synchronized to the object being imaged such that the stored charge in the stack of arrays moves in synchronization to the object.

Threshold
Image processing operation which transforms a grey level or color image into a two-toned, or binary image, by comparing each pixel against a threshold value.

TIFF (.TIF)
The Tagged Image File Format. An industry standard file format for saving digital images and image sequences. A widely used file format as it is not company or product specific. TIFF files may be as large as 4 GiByte. See ''BigTIFF'' for larger file sizes.

TTL
Specifically: Transistor-Transistor-Logic. Generally: Single-ended signalling format for binary data using levels of 0.0 and +5.0 volts (nominal). TTL is intended for high speed signalling between integrated circuits on the same or adjacent boards, although may be used at slower speeds over several feet.

Triggered (Video) Mode
See ''Controlled (Video) Mode''.

White Balance
Corrections to a color image, or color video, so that a whitish object appears white. The color balance is affected by the color temperature of the illumination (e.g. sunlight versus fluorescent versus incandescent), and also affected by the display monitor.

USB
Universal Serial Bus. A standard for a relatively low performance serial data bus, operating at speeds of 12 megabits per second, with a maximum cable length of 5 meters (although several devices may be daisy-chained with several 5 meter cables).

UXGA
A type of graphics display for IBM compatible computers, providing 1600×1200 resolution. Often SVGA or S/VGA is used in a generic sense to include UXGA.

VGA
A type of graphics display for IBM compatible computers, providing 640×480 resolution.

Vertical Blanking
The portion of the analog video signal when brightness is suppressed at the end of a field, during which the electron beam retraces from the bottom to the top of the CRT-based video monitor.

By analogy, the term may be used with digital video signals as a synonym for the complement of ''Frame Valid''.


Vertical Sync
The portion of the analog video signal, within vertical blanking, which synchronizes hardware with the top/bottom of each frame.

By analogy, the term may be used with digital video signals as a synonym for the complement of ''Frame Valid''.


Video
A representation of a visual scene, or a sequence of visual scenes, in an electrical or other format suitable for transmission, storage, retrieval, modification or display.

Video Camera
An instrument in which light is admitted through a lens, forming an image of external objects on a surface placed at the focus of the lens, and producing an electrical or other signal corresponding to the image formed.

Video Format
Specifications which define the characteristics of video signals.

For analog video, the specifications include voltage levels, blanking times, width of sync pulses, lines per frame, and frames per second. Examples of common standard analog video formats are: NTSC, CCIR, PAL, RS-170, RS-330, and RS-343.

For digital video, the Camera Link specification provides part of the video format, such as the signals used and their relationship; additional specifications are provided by individual cameras using the Camera Link standard, such as resolution, bit depth, pixel clock frequency, and frame rate.

A ''Video Format (File)'' is also used as a synonym for ''Video Setup (File)''.


Video Sampling
The process of obtaining digital data from an analog video signal.

Video Setup (File)
A collection of parameters used to configure specific capture hardware and software for a desired ''Video Format'' and camera.

VIF (.VIF)
The Video Frame File format used by EPIX® imaging software for raw video to disk files. The internal format is dependent on the characteristics of the specific PIXCI® frame grabber and camera used to capture the video. The VIF format is not intended for exporting of images or video to other applications; after recording a video to disk sequence the VIF file is typically resaved in TIFF, AVI, or other industry standard format.

YCrCb Color
Color space where the Y component represents the brightness signal and the Cr and Cb components represent color difference signals. ''4:2:2 YCrCb'' indicates that Y is sampled at twice the rate of Cr and Cb.

YUYV, YVYU, UYVY, VYUY Color
Color space where the Y component represents the brightness signal and the V and U components represent red and blue color difference signals, respectively. The four variations differ only in the order of the components. Similar to ''4:2:2 YCrCb''; Y is sampled at twice the rate of U and V.

YUY2 Color
Same as ''YUYV Color''.

Zoom
To magnify an image in order to observe more detail.

 

 

 

12. Certification and Warranty


 

12.1. Certification and Testing

The PIXCI® miniH2BL frame grabber has been tested per EMC directive 89/336/EEC and has met the following test requirements:

These tests are more commonly known as the ''CE'' test. The testing was performed to class B which has a more restrictive emission limit than the FCC class A limit.

If you find that the computer system in which the PIXCI® frame grabber is installed is causing interference with other devices, try increasing the distance between the devices, reorienting (turning) the devices, or using additional shielding on the computer system (such as placing covers on the computer and installing metal shields in unused slots or over unused drive slots).

It may be that the camera connected to the PIXCI® frame grabber is the source of radiation. To determine if the camera is the source of interference, remove power to the camera or reorient the camera. If a shielded camera cable is not being used, use a shielded cable. If the camera is the source of interference, contact the camera manufacturer.

 

12.2. Limited Warranty

EPIX, Inc. warrants to the original purchaser of the PIXCI® frame grabber that the PIXCI® frame grabber shall be in good working order for a period of one year from the date of shipment from EPIX, Inc. Should this product fail to be in good working order at any time during this one year warranty period, EPIX, Inc. will, at its option, repair or replace this product at no additional charge except as set forth below. Repair parts and replacement products will be furnished on an exchange basis and will be either reconditioned or new. All replaced parts and products become the property of EPIX, Inc.
This limited warranty does not cover damage to the product resulting from accident, disaster, lightning, misuse, abuse, improper packaging, shipping damage, hot plugging, hot removal, installation of the frame grabber into a powered Mini PCI Express slot, removal of the frame grabber from a powered Mini PCI Express slot, installation into any slot other than a Mini PCI Express slot, connection to external equipment, such as a camera, that is operational while being connected to the frame grabber, or unauthorized modification of the frame grabber.
Limited warranty service may be obtained by delivering the product during the one year warranty period to an EPIX, Inc. distributor or to EPIX, Inc. and providing proof of the purchase date. Insure the product or assume the risk of loss or damage in transit. Prepay shipping charges to EPIX, Inc. or to the distributor. Use the original shipping container, or the equivalent, and static dissipative packaging material.
EPIX, Inc. hereby disclaims all other express and implied warranties for this product, including the warranties of merchantability and fitness for a particular purpose. Some states do not allow the exclusion of implied warranties, so the above limitations may not apply to you.
If this product is not in good working order as warranted above, your sole remedy shall be repair or replacement as provided above. In no event will EPIX, Inc. be liable to you for any damages, including any lost profits, lost savings or other incidental or consequential damages arising out of the use of or inability to use such product, even if EPIX, Inc. or an authorized EPIX, Inc. distributor has been advised of the possibility of such damages, or for any claim by any other party.

 

12.3. Life Support

EPIX® imaging products are not authorized for use as critical components in life support devices or systems without the express written approval of the president of EPIX, Inc.


13. Footnotes

[1]
See the ''Intel Chipset 4 GB System Memory Support'' white paper by Intel Corp.
[2]
See the ''Intel Chipset 4 GB System Memory Support'' white paper by Intel Corp.
[3]
Assuming use of the installation procedure's default options to create the ''xcap'' stub and/or create the shortcut.
[4]
See the ''Intel Chipset 4 GB System Memory Support'' white paper by Intel Corp.
[5]
See the ''Intel Chipset 4 GB System Memory Support'' white paper by Intel Corp.
[6]
The activation or ID code is provided on a card enclosed with the CD/DVD and is also shown on the packing list. The card and the activation or ID code may be required as proof of purchase for future software upgrades. Keep the card in a safe place!!
[7]
XCAP-Plus, XCAP-Std, and XCAP-Ltd require an authorization key to activate all features.
[8]
The Linux' ''lspci'' command lists PCI/PCIe cards regardless of whether a suitable driver was installed.