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: 30-Oct-2009
Thank you for purchasing imaging products from EPIX, Inc. We expect our products to perform to their specifications and provide support via the Internet at epix@epixinc.com, via FAX at 847 464 1919, and via telephone at 847 465 1818 to help with installation or to answer questions about the use of our products.
The SILICON VIDEO® 642M or 642C CMOS digital camera and PIXCI® SI imaging board, for the PCI bus, are packed in antistatic bags. Please keep the bags and box in which they were shipped should the need arise to return them. Prior to opening the bags, place the bags near the PC into which the PIXCI SI board will be installed.
We recommend installing the XCAP software prior to installing the PIXCI imaging board.
Please refer to the Software Installation chapter for the XCAP installation
directions, then follow the board installation instructions below.
The size and the number of images that can be stored in DRAM on the motherboard is a function of the amount of DRAM that is not needed by the operating system. XCAP, by default, reserves 16 MB of memory for image buffers. If more memory is required for image sequences, the ''Driver Assistant'' in the ''PIXCI Open/Close'' menu should be used to set the reserved memory size.
The PIXCI® imaging board can capture and store full resolution images
to DRAM on a burst mode PCI motherboard provided that other devices do not
significantly compete for PCI bus bandwidth.
The data transfer capabilities of the motherboard may limit the size of the
image that the PIXCI imaging board can transfer to memory on the motherboard.
PCI bus transfers from other devices will compete for data
transfer time with images to be transferred from the PIXCI imaging board to
memory on the motherboard.
The updating of clocks and other background tasks may interfere with the
capture of images.
These tasks should be disabled if error messages indicate that video
transfers have been interrupted.
Most motherboards manufactured since January 2001 should be capable of operation with the PIXCI imaging board, but motherboard manufacturers never cease to amaze us. If you have questions about the compatibility of the motherboard intended for use with the PIXCI imaging board, contact EPIX, Inc.
EPIX can provide complete, tested computer systems with PIXCI board, or boards and all
required software installed.
The PIXCI® SI imaging board has an 8 pin RJ45 and 9 pin D-Subminiature connectors which are accessible thru the bracket that mounts the board to the computer chassis. A shielded RJ45 cable is included with the SILICON VIDEO 9M001 or 9T001 Camera Kit for connecting to the camera. The cable carries power, control, and pixel clock to the camera, and carries pixel data from the camera.
Typically a 25 foot or 7.6 meter cable will operate at up to 70 MHz pixel clock rates. A 50 foot or 15 meter cable will operate at up to 32 MHz pixel clock rates.
A wire list for the 8 pin RJ45 cable follows.
| Pin No. | Name |
| 1 | Power |
| 2 | Ground |
| 3 | Negative pixel clock |
| 4 | Positive camera data |
| 5 | Negative camera data |
| 6 | Positive pixel clock |
| 7 | Positive SI data |
| 8 | Negative SI data |
CON2 is wired to most of the signals which are on HDR1 for external connection.
See the description for Header 1 for the signal functions.
| Signal | IN/ | Pin | Pin | IN/ | Signal |
| Name | OUT | Number | Number | OUT | Name |
| Ground | 1 | 6 | +5 VDC (0.75 Amp max) | ||
| NTRIG | I | 2 | 7 | I | PTRIG |
| Trigger | Trigger | ||||
| In - | In + | ||||
| Frame- | I | 3 | 8 | I | Frame+ |
| NFEN1 | PFEN1 | ||||
| Strobe- | O | 4 | 9 | O | Strobe+ |
| NSTR1 | PSTR1 | ||||
| OPTION | - | 5 | - | - | - |
See the Trigger and Camera Integration Register Programming section of
this manual in the Camera Control Register chapter for more information
on these signals.
An optional signal on pin 5 is available for custom use.
CON2 signals on pins 1 thru 4 and pins 6 thru 9 are wired to the same
signals on HDR1.
Header 1 is for signals external or internal to
the computer case.
External signals can be connected with a cable to 9 pin D-Subminiature
connector thru a second slot with a bracket to mount the D-Subminiature
connector.
A differential to TTL conversion module and 2 meter cable are available for
connecting TTL trigger, vertical drive, and strobe signals to the PIXCI SI.
Two 10 pin headers are provided for connecting external and internal signals to the PIXCI SI.
The description for Header 1 follows.
| Signal | IN/ | Pin | Pin | IN/ | Signal |
| Name | OUT | Number | Number | OUT | Name |
| Ground | 1 | 2 | +5 VDC (0.75 Amp max) | ||
| NTRIG | I | 3 | 4 | I | PTRIG |
| Trigger | Trigger | ||||
| In - | In + | ||||
| Frame- | I | 5 | 6 | I | Frame+ |
| NFEN | PFEN | ||||
| Strobe- | O | 7 | 8 | O | Strobe+ |
| PSTR | NSTR | ||||
| NIO | I/O | 9 | 10 | I/O | PIO |
| In/Out- | In/Out+ | ||||
See the Trigger and Camera Integration Register Programming section of
this manual in the Camera Control Register chapter for more information
on these signals.
Header 1 is for signals external or internal to
the computer case.
External signals can be connected with a cable to 9 pin D-Subminiature
connector thru a second slot with a bracket to mount the D-Subminiature
connector.
A differential to TTL conversion module and 2 meter cable are available for
connecting TTL trigger, vertical drive, and strobe signals to the PIXCI SI.
Header 1 is located in the lower left of the PIXCI SI board to the right of DB9 CON2 connector.
Pin 1 is ground.
Pin 2 is +5 volts thru a 0.75 ampere thermal sensing, self resetting fuse.
Pin 3, NTRIG, is a negative differential trigger input.
Pin 4, PTRIG, is a positive differential trigger input.
Pin 5, NFEN, is the negative differential frame enable input.
Pin 6, PFEN, is the positive differential frame enable input.
Pin 7, NSTR, is a negative differential strobe output.
Pin 8, PSTR, is a positive differential strobe output. The PSTR and NSTR signals are driven from the camera control state machine and the strobe signal is delayed by two state machine cycles from the exposure signal. The polarity of the NSTR and PSTR can be controlled via bit 5 in the PRIN camera control register.
Pin 9, NIO, is a negative differential board-to-board signal, which can be configured as an output, input, or both.
Pin 10, PIO, is a differential board to board control signal, which can be configured as an output, input, or both.
The intended use for NIO and PIO is for board to board wiring of the exposure signal when multiple cameras must have
the same exposure signal.
One board is configured as a master (driver), the other boards as slaves (receivers).
| Signal | IN/ | Pin | Pin | IN/ | Signal |
| Name | OUT | Number | Number | OUT | Name |
| Ground | 1 | 2 | +12 VDC (fused at 0.75 A) | ||
| Out 1 | Out | 3 | 4 | Ground | |
| Out 2 | Out | 5 | 6 | Ground | |
| In 1 | In | 7 | 8 | Ground | |
| In 2 | In | 9 | 10 | Ground | |
HDR2 is located in the lower left of the board near the DB9 CON2 connector.
Pin 1 of HDR2 is in the upper left position.
Pin 1 is ground.
Pin 2 is +12 volts thru a 0.75 ampere thermal sensing, self resetting fuse.
Pin 3, OUT1, is a general purpose TTL output. The General Purpose OUT1 is controlled by bit 17 in the IET register at offset 4. It is not buffered and should be used only to drive other devices internal to the enclosure.
Pin 4 is ground.
Pin 5, OUT2, is a general purpose TTL output. The General Purpose OUT2 is controlled by bit 18 in the IET register at offset 4. It is not buffered and should be used only to drive other devices internal to the enclosure.
Pin 6 is ground.
Pin 7, IN1, is a general purpose TTL input. This input is bit 23 of the IES register at offset 0. IN1 is pulled up to +5 volts via a 2K ohm resistor. It is not buffered and should be used only to receive signals from other devices internal to the enclosure.
Pin 8 is ground.
Pin 9, IN2, is a general purpose TTL input. This input is bit 24 of the IES register at offset 0. IN2 is pulled up to +5 volts via a 2K ohm resistor. It is not buffered and should be used only to receive signals from other devices internal to the enclosure.
Pin 10 is ground.
XCAP-Plus, XCAP-Std, XCAP-Ltd, and XCAP-Lite are easy to install by following the instructions below.
While XCAP is easy to install, like most manufacturers of computer software, we recommend the precaution of performing a hard disk backup before installing XCAP.
> Z:SETUP (replace Z with drive letter for your CD)
from the EPIX, Inc. ftp site.ftp.epixinc.com/software/xcap_v37/XCAPWIN32.EXE (for 32 bit Windows)
> XCAPWIN32.EXE (for 32 bit Windows) > XCAPWIN64.EXE (for 64 bit Windows)
PCITIPS.TXT
file provides the
PC Configuration Tips,
with tips for resolving hardware and software conflicts.
Command Line: InstallDir \ XCAPWXX
Name: XCAP
replacing
''InstallDir''
with the name of the installation directory chosen above.
Select
''OK''.
The printer port authorization key is approximately the size and shape of a printer cable's connector (5.5×4.5×1.6 cm), but having 25-pin connectors at both ends and no cable attached. 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 USB port authorization key is approximately the size of a small finger (6.0×1.6×0.8 cm), having a USB standard 4-pin connector at one end. If provided, connect the authorization key to a USB port. Operating system support for USB devices is required; XCAP does not add USB support to the operating system.
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.
> C:\XCAP\HARDLOCK\HLDINST -install
> CHDIR C:\XCAP\HARDLOCK
and execute:
HLDINST -install
to run the authorization key utility program.
Start
Settings
Control Panel
Add New Hardware
...
If the PIXCI® imaging board was not previously installed, the first time Windows starts after installation of the PIXCI® imaging board, Windows will notice the new device and inquire.
The first time Windows 95 starts after installation of the PIXCI® imaging board, a window titled ''New Hardware Found'' appears; select ''Driver from disk provided by hardware manufacturer'', click ''OK''. A window stating ''Insert the manufacturer's installation disk ...'', ''Copy manufacturer's files from ...'' appears; click ''Browse'' enter path Drivers\Win95\EPIXXCW5.INF (or EPIXXC32.INF for version 2.0 and earlier) within the chosen installation directory, typically C:\XCAP or C:\Program Files\EPIX\XCAP, and click ''OK'', ''OK''. Do not accept the offer to ''Reboot''; a full shutdown and reboot is required. Some later releases of Windows 95 behave similar to Windows 98; the inquiries and responses may instead follow the steps below.
The first time Windows 98 starts after installation of the PIXCI® imaging board, a pop-up window with the message ''New PCI Multimedia Device'' will flash. A window stating ''The wizard searches for new driver for PCI Multimedia Video Device'' appears; click ''Next'', select ''Search for the best driver for your device'', click ''Next''. A window stating ''Windows will search for new driver ...'' and ''Specify Location'' appears; enter path Drivers\Win98\EPIXXCW5.INF (or EPIXXC32.INF for version 2.0 and earlier) within the chosen installation directory, typically C:\XCAP or C:\Program Files\EPIX\XCAP, and click ''Next''. A window reports that a driver was found, namely ...\Drivers\Win98\EPIXXCW5.INF, click ''Next'' and ''Finish''.
The first time Windows ME starts after installation of the PIXCI® imaging board, a pop-up window with the message ''New PCI Multimedia Device'' will flash. A window stating ''Windows has found the following new hardware: PCI Multimedia Video Device'' appears; select ''Specify the location of the driver (Advanced)'', click ''Next'', select ''Search for the best driver for your device'', check box ''Specify a Location'', Enter path Drivers\WinME within the chosen installation directory, typically C:\XCAP or C:\Program Files\EPIX\XCAP, and click ''Next''. A window reports that a driver was found, namely ...\Drivers\WinME\EPIXXCW5.INF, click ''Next'' and ''Finish''.
If the PIXCI® imaging board was already installed under Windows 95 or 98, and ''Cancel'' was clicked when Windows started and announced the presence of new ''PCI Multimedia Hardware'', then instruct Windows to load the appropriate driver. Click ''Start'', ''Control Panel'', ''System'', ''Device Manager'', and under ''Other Devices'' double-click ''PCI MultiMedia Video Device'' or ''PIXCI(R) Video Capture Board''. Select ''Driver'', ''Change Driver'', ''Other''. Select ''PCI MultiMedia Video Device'' or ''PIXCI(R) Video Capture Board'', select ''Have Disk'', enter path Drivers\Win95 (Drivers\Win98 may be used interchangeably) within the chosen installation directory, typically C:\XCAP or C:\Program Files\EPIX\XCAP, and click ''OK''.
If the PIXCI® imaging board was already installed under Windows ME, and ''Cancel'' was clicked when Windows started and announced the presence of new ''PCI Multimedia Hardware'', then instruct Windows to load the appropriate driver. Click ''Start'', ''Settings'', ''Control Panel'', ''System'' (if ''System'' is not listed, click on ''View all Control Panel options''), ''Device Manager'' and under ''Other Devices'' double-click ''PCI MultiMedia Video Device'' or ''PIXCI(R) Video Capture Board''. Select ''Properties'', ''Driver'', ''Change Driver'' or ''Update Driver''. A window reporting ''This wizard searches for updated drivers for PCI MultiMedia Video Device'' or ''This wizard searches for updated drivers for PIXCI(R) Video Capture Board'' appears; select ''Specify the location of the driver (Advanced)'', ''Next'', ''Search for the best driver for your device'', ''Specify a Location'', enter path Drivers\WinME within the chosen installation directory, typically C:\XCAP or C:\Program Files\EPIX\XCAP, and click ''Next'', ''Next'', ''Finish''.
SYSTEM.INI
file.
If additional frame buffer memory is desired, then
at the end of the Windows'
SYSTEM.INI
file,
add a section:
[EPIX_XC]
PIXCI=-IM <memorysize>
replacing the
''<memorysize>''
with the desired memory size in kBytes.
Windows must be rebooted for the new specification to take effect.
Windows 95, 98, and ME limits the maximum amount of allocatable frame buffer memory, dependent upon what other devices are installed, the total computer memory size, and other factors.
Windows may provide less frame buffer memory than was requested. If no memory could be allocated, the PIXCI® imaging board will not be usable; reporting ''Can't allocate frame buffer memory''. Otherwise, within XCAP, the amount of frame buffer memory can be checked under PIXCI®, PIXCI® Open/Close.
Use of EPIXXCW5.INF (or EPIXXC32.VXD for version 2.0 and earlier), above, provides automatic installation of EPIXXCW5.VXD (or EPIXXC32.VXD for version 2.0 and earlier) in most circumstances. The following information allows manual installation, correcting problems, or integration with an OEM's procedures.
C:\WINDOWS\SYSTEM
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Unknown\0000
replacing the \0000, if such an entry already exists,
with the next available sequential number.
This entry must contain:
DevLoader= "epixxc32.vxd" (for version 2.0-)
DevLoader= "epixxcw5.vxd" (for version 2.1+)
DriverDesc= "PIXCI(R) PCI Video Capture Board" (optional)
InfSection= "Unknown"
StaticVxD= "epixxc32.vxd" (for version 2.0-)
StaticVxD= "epixxcw5.vxd" (for version 2.1+)
or the existing entry for PIXCI® SV4:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_8086&DEV_1223\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_8086&DEV_1223&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entries for PIXCI® SV5, SV5A, or SV5B:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_109E&DEV_0350\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_109E&DEV_0350&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entries for PIXCI® SV6:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_109E&DEV_036E\BUS_**&DEV_**&FUNC_** (Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_109E&DEV_0878\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_109E&DEV_036E&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_109E&DEV_0878&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® D, PIXCI® D24, or PIXCI® D32:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_14F1&DEV_8800\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_14F1&DEV_8800&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® A:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_10E8&DEV_80D6\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_10E8&DEV_80D6&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® CL3SD:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_10E8&DEV_82B1\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_10E8&DEV_82B1&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® CL3SD:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C300\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C300&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® CL1:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C301\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C301&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® CL1:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C100\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C100&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® CL2:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C10A\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C10A&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® D2X:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C200\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C200&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® D2X:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_D200\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_D200&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® D2X:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_D201\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_D201&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® D3X:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_D20A\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_D20A&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® E1:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_D300\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_D300&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® E1:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_E001\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_E001&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® E4:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_E0A1\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_E0A1&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® E1DB:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_E004\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_E004&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® E1DB:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_ED01\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_ED01&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® E4DB:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_EDA1\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_EDA1&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® EB1:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_ED04\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_ED04&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® EB1-PoCL:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_EB01\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_EB01&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® EC1:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_EB11\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_EB11&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® ECB1:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_EC01\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_EC01&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® ECB1-34:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_ECB1\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_ECB1&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® ECB2:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_ECB3\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_ECB3&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® EL1:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_ECB2\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_ECB2&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® EL1:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_F001\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_F001&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® EL1:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_F0A1\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_F0A1&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® EL1DB:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_F0F1\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_F0F1&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® EL1DB:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_FD01\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_FD01&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® SI:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_FDF1\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_FDF1&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® SI:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C000\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C000&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® SI1:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C001\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C001&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® SI1:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C011\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C011&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
or the existing entry for PIXCI® SI4:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C011\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C011&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
where the **'s may be any digits (assigned and created by Windows after detection of the PIXCI® imaging board).[2] This entry must contain:(Win 95) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C004\BUS_**&DEV_**&FUNC_** (Win 98) HKEY_LOCAL_MACHINE\Enum\PCI\VEN_165A&DEV_C004&SUBSYS_00000000&REV_**\BUS_**&DEV_**&FUNC_**
Class= "Unknown"
ConfigFlags= 00 00 00 00
DeviceDesc= "PIXCI(R) PCI Video Capture Board" (optional)
Driver= "Unknown\0000" (substitute 0000)
Mfg= "EPIX, Inc." (optional)
where the
''0000''
is replaced by the sequential number used in the previous step.
As described above, frame buffer memory allocated by EPIXXCW5.VXD (or EPIXXC32.VXD for version 2.0 and earlier) during Windows startup is limited to a small percentage of total computer memory.
A larger frame buffer memory can often be obtained by reserving memory before Windows starts:
DEVICE=C:\XCAP\Drivers\Win95\EPIXXC.SYS -IM <framebuffermemorysize>
or
DEVICE=C:\XCAP\Drivers\Win95\EPIXXC.SYS -OS <reservememorysize>
after
DEVICE=HIMEM.SYS,
replacing
''<framebuffermemorysize>''
with the desired frame buffer memory size, in kBytes.
Alternately, the second form reserves
''<reservememorysize>''
kBytes,
for Windows and allocates (almost) all of the remaining memory
for use as frame buffer memory.
[EPIX_XC]
PIXCI=-IM 0
so that
EPIXXCW5.VXD
(or
EPIXXC32.VXD
for version 2.0 and earlier)
doesn't reserve and then waste additional frame buffer memory.
This technique allows most of the computer's memory to be reserved as frame buffer memory (e.g. typically all but 8 or 16 MBytes, as required by Windows). However, the memory is unavailable to Windows, even when the PIXCI® imaging board's driver is not open.
If the specified amount of frame buffer memory could not be allocated,
EPIXXC.SYS
will attempt to allocate smaller amounts.
If no memory can be allocated
EPIXXC.SYS,
will display an error message during Windows startup,
and the PIXCI® imaging board will not be available, stating
''Can't allocate frame buffer memory''.
This alternate frame buffer allocation method is not available under Windows ME.
As described above, frame buffer memory allocated by EPIXXCW5.VXD during Windows startup is limited to a small percentage of total computer memory.
A larger frame buffer memory can be obtained by limiting the amount of memory recognized by Windows ME, and then instructing EPIXXCW5.VXD to explicitly use a section of memory without allocating it from Windows:
[386Enh]
MaxPhysPage=4000 ;; 64 MByte in 4096 byte pages, in hexadecimal
[EPIX_XC]
PIXCI= -IA <image_memory_adrs_in_kByte>
-IM <size_of_image_memory_in_kByte>
-MB <image_memory_partition_size_in_kByte>
In practice, all three 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. 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 GBytes 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 /MaxPhysPage limit - including exact base2 to base10 conversions! (i.e. for MaxPhysPage=4000 or 64 MByte, 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!
For example, for a computer with 256 MByte of memory, allocating 192 MByte for Windows and the remainder for frame buffer memory, use:
MaxPhysPage=C000
and
PIXCI = -IA 196608 -IM 65536 -MB 16384
Use of HLDINST.EXE, as described above, provides automatic installation of the printer port authorization key's driver, needed under Windows 95, 98, and ME, for XCAP-Plus, XCAP-Std, and XCAP-Ltd (but not needed for XCAP-Lite). The following information allows manual installation, correcting problems, or integration with an OEM's procedures for the printer port version of authorization keys.
HARDLOCK.VXD
must be copied to
the Windows
SYSTEM
directory, typically:
C:\WINDOWS\SYSTEM
or placed within the XCAP installation directory, typically:
C:\XCAP\PROGRAM
AUTOEXEC.BAT,
specifying:
SET HL_SEARCH=378p
SET HL_SEARCH=278p,378p
forces only the I/O port addresses listed (in hexadecimal)
to be searched.
Note that setting HL_SEARCH from a DOS box has no effect,
as the setting is not
''carried back''
from DOS into the Windows 95, 98, or ME environment.
XCAP requires Windows NT Version 4 with Service Pack 3 or later. You must be logged on as Administrator, or have equivalent privileges, to complete the installation procedure.
> Z:SETUP (replace Z with drive letter for your CD)
from the EPIX, Inc. ftp site.ftp.epixinc.com/software/xcap_v37/XCAPWIN32.EXE (for 32 bit Windows)
> XCAPWIN32.EXE (for 32 bit Windows) > XCAPWIN64.EXE (for 64 bit Windows)
PCITIPS.TXT
file provides the
PC Configuration Tips,
with tips for resolving hardware and software conflicts.
Command Line: InstallDir \ XCAPWXX
Name: XCAP
replacing
''InstallDir''
with the name of the installation directory chosen above.
Select
''OK''.
The printer port authorization key is approximately the size and shape of a printer cable's connector (5.5×4.5×1.6 cm), but having 25-pin connectors at both ends and no cable attached. 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 USB port authorization key is approximately the size of a small finger (6.0×1.6×0.8 cm), having a USB standard 4-pin connector at one end. If provided, connect the authorization key to a USB port. Operating system support for USB devices is required; XCAP does not add USB support to the operating system.
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.
> C:\XCAP\HARDLOCK\HLDINST -install
> CHDIR C:\XCAP\HARDLOCK
and execute:
HLDINST -install
to run the authorization key utility program.
Use of EPIXXCWT.INF (or EPIXXCNT.INF for version 2.0 and earlier), above, provides automatic installation of EPIXXCWT.SYS (or EPIXXCNT.SYS for version 2.0 and earlier) in most circumstances. The following information allows manual installation, correcting problems, or integration with an OEM's procedures.
C:\WINNT\SYSTEM32\DRIVERS
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCWT (version 2.1+)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCNT (version 2.0-)
This entry must contain:
ErrorControl = 0x00000001
Group = "Extended base"
Start = 0x00000001
Type = 0x00000001
and may, as described below, also contain:
PIXCI = "-IM <memorysize>"
Create an entry such as:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\System\EPIXXCWT (version 2.1+)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\System\EPIXXCNT (version 2.0-)
This entry must contain:
EventMessageFile = "%SystemRoot%\System32\IoLogMsg.dll"
TypesSupported = 0x00000007
Under Windows NT, frame buffer memory must be allocated during Windows' initialization.
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 kBytes.
If no frame buffer memory size is specified,
a default size of 32768 kBytes is used.
Windows must be rebooted 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.
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, which has on-board frame buffer memory, memory reserved by the -IM parameter is needed only for support of time stamping of captured frames, and only if 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 NT limits the maximum amount of allocatable frame buffer memory, dependent upon what other devices are installed, the total computer memory size, and other factors. Using the Control Panel's Device Manager to select Boot or System priority startup for EPIXXCWT.SYS (or EPIXXCNT.SYS for version 2.0 and earlier) allows more frame buffer memory to be allocated than selection of Automatic startup.
Windows may provide less frame buffer memory than was requested. If no memory could be allocated, the PIXCI® imaging board 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.
As described above, frame buffer memory allocated by EPIXXCWT.SYS (or EPIXXCNT.SYS for version 2.0 and earlier) during Windows startup may be limited to a small percentage of the computer memory size.
A larger frame buffer memory can be obtained by limiting the amount of memory recognized by Windows NT, and then instructing EPIXXCWT.SYS (or EPIXXCNT.SYS for version 2.0 and earlier) to explicitly use a section of memory without allocating it from Windows NT:
[operating systems]
multi(0)disk(0)rdisk(0)partition(7)\WINNT="Windows NT V 4.00"
to:
[operating systems]
multi(0)disk(0)rdisk(0)partition(7)\WINNT="Windows NT V 4.00 [NT=64M PIXCI=256M]" /MAXMEM=64
multi(0)disk(0)rdisk(0)partition(7)\WINNT="Windows NT V 4.00"
Do
not
copy this new line as shown above; the first portion of the line must be
copied from an existing configuration line in
your
C:\BOOT.INI
file.
The text between quotes appears as a boot selection prompt,
use of
''[NT=64M PIXCI=256M]''
is a suggested reminder, but not required.
Also in C:\BOOT.INI, change the timeout selection to be greater than 0:
[boot loader]
timeout=30
Otherwise the BOOT.INI configuration options will not be shown when Windows starts.
Keeping the original configuration line, as a boot selection option, is highly recommended as a backup.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCWT (version 2.1+)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCNT (version 2.0-)
On the
''PIXCI''
field add:
-IA <image_memory_adrs_in_kByte>
-IM <size_of_image_memory_in_kByte>
-MB <image_memory_partition_size_in_kByte>
-BH <size_of_BIOS_hole_below_4GB_in_kByte>
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. 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 GBytes 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 /MAXMEM limit - including exact base2 to base10 conversions! (i.e. for /MAXMEM=64, 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 GBytes of memory, some of the memory directly below the 4 GByte address overlaps other hardware resources such as BIOS, memory mapped I/O, PCI configuration space, etc.[5] 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 GByte address minus -BH size up to the 4 GByte address. The -BH size may be set to 0 (or not specified) if the computer has significantly less than 4 GBytes of memory.
For example, for a computer with 1 GByte of memory, allocating 256 MByte for Windows and the remainder for frame buffer memory, use:
/MAXMEM=256
in C:\BOOT.INI, 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.
Use of HLDINST.EXE, as described above, provides automatic installation of the printer port authorization key's driver, needed under Windows NT, for XCAP-Plus, XCAP-Std, and XCAP-Ltd (but not needed for XCAP-Lite). The following information allows manual installation, correcting problems, or integration with an OEM's procedures for the printer port version of authorization keys.
C:\WINNT\SYSTEM32\DRIVERS
C:\WINNT\SYSTEM
or placed within the XCAP installation directory, typically:
C:\XCAP\PROGRAM
or
C:\Program Files\EPIX\XCAP\PROGRAM
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HardLock
This key must contain values:
ErrorControl = 0x00000001
Group = "Extended Base"
Start = 0x00000002
Type = 0x00000001
or, if using REGEDT32, the values should appear as:
ErrorControl:REG_DWORD:0x1
Group:REG_SZ:ExtendedBase
Start:REG_DWORD:0x2
Type:REG_DWORD:0x1
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HardLock\Parameters
which contains a value:
IoPortAddress0 = 0x???? (for REGEDIT)
IoPortAddress0:REG_DWORD:0x???? (for REGEDT32)
where the
''????''
is replaced with the parallel port's I/O address in hexadecimal.
As before, Windows must be shut down and restarted.
> Z:SETUP (replace Z with drive letter for your CD)
from the EPIX, Inc. ftp site.ftp.epixinc.com/software/xcap_v37/XCAPWIN32.EXE (for 32 bit Windows)
> XCAPWIN32.EXE (for 32 bit Windows) > XCAPWIN64.EXE (for 64 bit Windows)
PCITIPS.TXT
file provides the
PC Configuration Tips,
with tips for resolving hardware and software conflicts.
Command Line: InstallDir \ XCAPWXX
Name: XCAP
replacing
''InstallDir''
with the name of the installation directory chosen above.
Select
''OK''.
The printer port authorization key is approximately the size and shape of a printer cable's connector (5.5×4.5×1.6 cm), but having 25-pin connectors at both ends and no cable attached. 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 USB port authorization key is approximately the size of a small finger (6.0×1.6×0.8 cm), having a USB standard 4-pin connector at one end. If provided, connect the authorization key to a USB port. Operating system support for USB devices is required; XCAP does not add USB support to the operating system.
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.
> C:\XCAP\HARDLOCK\HLDINST -install
> CHDIR C:\XCAP\HARDLOCK
and execute:
HLDINST -install
to run the authorization key utility program.
If the PIXCI® imaging board was not previously installed, the first time Windows starts after installation of the PIXCI® imaging board, Windows will notice the new device and inquire.
The first time Windows 2000 starts after installation of the PIXCI® imaging board, a pop-up window with the message "Multimedia Video Controller" will flash. A window stating ''Welcome to the Found New Hardware Wizard'' appears; click ''Next'', select ''Search for the best driver for your device'', click ''Next'', check box ''Specify a location'', enter path Drivers\Win2K within the chosen installation directory, typically C:\XCAP or C:\Program Files\EPIX\XCAP, and click ''Next''. A window reports that a driver was found, namely ...\Drivers\Win2K\EPIXXCW2.INF; click ''Next''. A window reports that Microsoft's ''Digital Signature was not found''; click ''Yes''. A window states ''Completing the Found New Hardware Wizard'' and ''This device is not configured correctly. (Code 1)'' (this error indicates that the newly installed driver will be functional only after a reboot); click ''Finish'' and restart Windows.
If the PIXCI® imaging board was already installed, and ''Cancel'' was clicked when Windows started and announced the presence of a new ''Multimedia Video Controller'', then instruct Windows to load the appropriate driver. Click ''Start'', ''Settings'', ''Control Panel'', ''System'' (if ''System'' is not listed, click on ''View all Control Panel options''), ''Device Manager'', and under ''Other Devices'' or ''Imaging Devices'' double-click ''PCI MultiMedia Video Device'' or ''PIXCI(R) Video Capture Board''. Click ''Properties'', ''Driver'', ''Change Driver'' or ''Update Driver''. A window stating ''Welcome'' appears; click ''Next''. A window stating ''This wizard searches for updated drivers for: PCI MultiMedia Video Device'' or ''This wizard searches for updated drivers for: PIXCI(R) Video Capture Board'' appears; select ''Search for a suitable driver for my device (recommended)'', click ''Next'', select ''Specify a Location'', enter path Drivers\Win2K within the chosen installation directory, typically C:\XCAP or C:\Program Files\EPIX\XCAP, and click ''Next'', ''Next''. A window reports that Microsoft's: ''Digital Signature was not found''; click ''Yes''. A window reports ''This device is not configured correctly. (Code 1)'' (this error indicates that the newly installed driver will be functional only after a reboot); click ''Finish'' and restart Windows.
Use of EPIXXCW2.INF (or EPIXXCNT.INF for version 2.0 and earlier), above, provides automatic installation of EPIXXCW2.SYS (or EPIXXCNT.SYS for version 2.0 and earlier) in most circumstances. The following information allows manual installation, correcting problems, or integration with an OEM's procedures.
C:\WINNT\SYSTEM32\DRIVERS
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW2 (version 2.1+)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCNT (version 2.0-)
This entry must contain:
ErrorControl = 0x00000001
Group = "Extended base"
Start = 0x00000001
Type = 0x00000001
and may, as described below, also contain:
PIXCI = "-IM <memorysize>"
Create an entry such as:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\System\EPIXXCW2 (version 2.1+)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\System\EPIXXCNT (version 2.0-)
This entry must contain:
EventMessageFile = "%SystemRoot%\System32\IoLogMsg.dll"
TypesSupported = 0x00000007
Under Windows 2000, the Windows NT driver EPIXXCWT.SYS can be, and was previously, used instead of EPIXXCW2.SYS. In contrast to EPIXXCWT.SYS, the EPIXXCW2.SYS is Plug & Play compatible.
Under Windows 2000 frame buffer memory must be allocated during Windows' initialization.
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 kBytes.
If no frame buffer memory size is specified,
a default size of 32768 kBytes is used.
Windows must be rebooted 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.
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, which has on-board frame buffer memory, memory reserved by the -IM parameter is needed only for support of time stamping of captured frames, and only if 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 2000 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 2000, the maximum amount of memory that can be allocated by this method is typically limited to 64 or 92 MByte.
Windows may provide less frame buffer memory than was requested. If no memory could be allocated, the PIXCI® imaging board 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.
As described above, frame buffer memory allocated by EPIXXCW2.SYS for Windows 2000, during Windows startup may be limited to a small percentage of the computer memory size; typically 64 to 96 MByte.
A larger frame buffer memory can be obtained by limiting the amount of memory recognized by Windows and then instructing EPIXXCW2.SYS for Windows 2000 to explicitly use a section of memory without allocating it from Windows 2000:
[operating systems]
multi(0)disk(0)rdisk(0)partition(7)\WINNT="Windows 2000"
to:
[operating systems]
multi(0)disk(0)rdisk(0)partition(7)\WINNT="Windows 2000 [NT=64M PIXCI=256M]" /MAXMEM=64
multi(0)disk(0)rdisk(0)partition(7)\WINNT="Windows 2000"
Do
not
copy this new line as shown above; the first portion of the line must be
copied from an existing configuration line in
your
C:\BOOT.INI
file.
The text between quotes appears as a boot selection prompt,
use of
''[NT=64M PIXCI=256M]''
is a suggested reminder, but not required.
Also in C:\BOOT.INI, change the timeout selection to be greater than 0:
[boot loader]
timeout=30
Otherwise the
BOOT.INI
configuration options will not be shown when Windows starts.
Keeping the original configuration line, as a boot selection option, is highly recommended as a backup.
Under Windows XP, the
BOOTCFG
command, provided with Windows, can be used to
change the
BOOT.INI
file
instead of manual editing.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW2
On the
''PIXCI''
field add:
-IA <image_memory_adrs_in_kByte>
-IM <size_of_image_memory_in_kByte>
-MB <image_memory_partition_size_in_kByte>
-BH <size_of_BIOS_hole_below_4GB_in_kByte>
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. 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 GBytes 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 /MAXMEM limit - including exact base2 to base10 conversions! (i.e. for /MAXMEM=64, 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 GBytes of memory, some of the memory directly below the 4 GByte address overlaps other hardware resources such as BIOS, memory mapped I/O, PCI configuration space, etc.[7] 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 GByte address minus -BH size up to the 4 GByte address. The -BH size may be set to 0 (or not specified) if the computer has significantly less than 4 GBytes of memory.
For example, for a computer with 1 GByte of memory, allocating 256 MByte for Windows and the remainder for frame buffer memory, use:
/MAXMEM=256
in
C:\BOOT.INI,
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.
Use of HLDINST.EXE, as described above, provides automatic installation of the printer port authorization key's driver, needed under Windows 2000 for XCAP-Plus, XCAP-Std, and XCAP-Ltd (but not needed for XCAP-Lite). The following information allows manual installation, correcting problems, or integration with an OEM's procedures for the printer port version of authorization keys.
C:\WINNT\SYSTEM32\DRIVERS
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HardLock
This key must contain values:
ErrorControl = 0x00000001
Group = "Extended Base"
Start = 0x00000002
Type = 0x00000001
or, if using REGEDT32, the values should appear as:
ErrorControl:REG_DWORD:0x1
Group:REG_SZ:ExtendedBase
Start:REG_DWORD:0x2
Type:REG_DWORD:0x1
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HardLock\Parameters
which contains a value:
IoPortAddress0 = 0x???? (for REGEDIT)
IoPortAddress0:REG_DWORD:0x???? (for REGEDT32)
where the
''????''
is replaced with the parallel port's I/O address in hexadecimal.
As before, Windows must be shut down and restarted.
Command Line: InstallDir \ XCAPWXX
Name: XCAP
replacing
''InstallDir''
with the name of the installation directory chosen above.
Select
''OK''.
The printer port authorization key is approximately the size and shape of a printer cable's connector (5.5×4.5×1.6 cm), but having 25-pin connectors at both ends and no cable attached. 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 USB port authorization key is approximately the size of a small finger (6.0×1.6×0.8 cm), having a USB standard 4-pin connector at one end. If provided, connect the authorization key to a USB port. Operating system support for USB devices is required; XCAP does not add USB support to the operating system.
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.
> C:\XCAP\HARDLOCK\HLDINST -install
> CHDIR C:\XCAP\HARDLOCK
and execute:
HLDINST -install
to run the authorization key utility program.
If the PIXCI® imaging board was not previously installed, the first time Windows starts after installation of the PIXCI® imaging board, Windows will notice the new device and inquire.
The first time Windows XP or XP(x64) starts after installation of the PIXCI® imaging board, a pop-up window with the message ''Multimedia Video Controller'' will flash. A window stating ''Welcome to the Found New Hardware Wizard'' appears; select ''Install from a list or a specific location. (Advanced)'', click ''Next'', select ''Search for the best driver in these locations'', uncheck box ''Search removable storage media'', check box ''Include this location in the search'', enter path Drivers\WinXP for Windows XP, or Drivers\WinXP64 for Windows XP(x64), within the chosen installation directory typically C:\XCAP or C:\Program Files\EPIX\XCAP, and click ''Next''. A window reports that a driver was found, namely ...\Drivers\WinXP\EPIXXCW2.INF, Or ...\Drivers\WinXP64\EPIXXCW6.INF for Windows XP(x64), click ''Next''. A window states ''The software that you are installing for ... has not passed compatibility testing''; click ''Continue Anyway''. A window states ''Completing the Found New Hardware Wizard'' and ''The hardware you installed will not work until you restart your computer''; click ''Finish'' and restart Windows.
If the PIXCI® imaging board was already installed, and ''Cancel'' was clicked when Windows started and announced the presence of a new ''Multimedia Video Controller'', then instruct Windows to load the appropriate driver. Click ''Start'', ''Control Panel'', ''Performance and Maintenance'', ''System'', ''Hardware'', ''Device Manager'', and under ''Other Devices'' or ''Imaging Devices'' double-click ''PCI MultiMedia Video Device'' or ''PIXCI(R) Video Capture Board'' (the latter appears if a PIXCI® imaging board driver was previously installed). Click ''Properties'', ''Driver'', ''Change Driver'' or ''Update Driver''. A ''Welcome'' window appears; select ''Install from a list or a specific location. (Advanced)'', click ''Next'', select ''Search for the best driver in these locations'', uncheck ''Search removable storage media'', check ''Include this location in the search'', enter path Drivers\WinXP for Windows XP, or Drivers\WinXP64 for Windows XP(x64), within the chosen installation directory typically C:\XCAP or C:\Program Files\EPIX\XCAP, and click ''Next'', ''Next''. A window reports ''The software that you are installing for ... has not passed compatibility testing''; click ''Continue Anyway''. A window reports ''The hardware you installed will not work until you restart your computer''; click ''Finish'' and restart Windows.
Use of EPIXXCW2.INF or EPIXXCW6.INF, above, provides automatic installation of EPIXXCW2.SYS or EPIXXCW6.SYS in most circumstances. The following information allows manual installation, correcting problems, or integration with an OEM's procedures.
C:\WINDOWS\SYSTEM32\DRIVERS
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW2
for Windows XP
or
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW6
for Windows XP(x64).
This entry must contain:
ErrorControl = 0x00000001
Group = "Extended base"
Start = 0x00000001
Type = 0x00000001
and may, as described below, also contain:
PIXCI = "-IM <memorysize>"
Create an entry such as:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\System\EPIXXCW2
for Windows XP
or
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\System\EPIXXCW6
for Windows XP(x64).
This entry must contain:
EventMessageFile = "%SystemRoot%\System32\IoLogMsg.dll"
TypesSupported = 0x00000007
Under Windows XP or XP(x64), frame buffer memory must be allocated during Windows' initialization.
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 kBytes.
If no frame buffer memory size is specified,
a default size of 32768 kBytes is used.
Windows must be rebooted 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, which has on-board frame buffer memory, memory reserved by the -IM parameter is needed only for support of time stamping of captured frames, and only if 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 XP or XP(x64), 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 XP the maximum amount of memory that can be allocated by this method is typically limited to 512 MByte, but not more than half of the physical memory. Under Windows XP(x64), the typical amount of allocated memory has not yet been determined.
Windows may provide less frame buffer memory than was requested. If no memory could be allocated, the PIXCI® imaging board 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.
As described above, frame buffer memory allocated by EPIXXCW2.SYS for Windows XP, or EPIXXCW6.SYS for Windows XP(x64), during Windows startup may be limited to a small percentage of total computer memory. Under Windows XP, the amount of memory that Windows may grant during startup is typically limited to 512 MByte, but not more than half of the computer memory size. Under Windows XP(x64), the amount of memory that Windows may grant during startup is typically limited to the computer memory size minus 1 GByte, but not more than 27 Gbyte. 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 XP, or EPIXXCW6.SYS for Windows XP(x64), to explicitly use a section of memory without allocating it from Windows XP or XP(x64):
[operating systems]
multi(0)disk(0)rdisk(0)partition(7)\WINNT="Windows XP"
to:
[operating systems]
multi(0)disk(0)rdisk(0)partition(7)\WINNT="Windows XP [NT=64M PIXCI=256M]" /MAXMEM=64
multi(0)disk(0)rdisk(0)partition(7)\WINNT="Windows XP"
Do
not
copy this new line as shown above; the first portion of the line must be
copied from an existing configuration line in
your
C:\BOOT.INI
file.
The text between quotes appears as a boot selection prompt,
use of
''[NT=64M PIXCI=256M]''
is a suggested reminder, but not required.
Also in C:\BOOT.INI, change the timeout selection to be greater than 0:
[boot loader]
timeout=30
Otherwise the
BOOT.INI
configuration options will not be shown when Windows starts.
Keeping the original configuration line, as a boot selection option, is highly recommended as a backup.
Under Windows XP, the
BOOTCFG
command, provided with Windows, can be used to
change the
BOOT.INI
file instead of manual editing.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW2
for Windows XP,
or
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW6
for Windows XP(x64).
On the
''PIXCI''
field add:
-IA <image_memory_adrs_in_kByte>
-IM <size_of_image_memory_in_kByte>
-MB <image_memory_partition_size_in_kByte>
-BH <size_of_BIOS_hole_below_4GB_in_kByte>
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 GBytes 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 /MAXMEM limit - including exact base2 to base10 conversions! (i.e. for /MAXMEM=64, 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 GBytes of memory, some of the memory directly below the 4 GByte address overlaps other hardware resources such as BIOS, memory mapped I/O, PCI configuration space, etc.[9] 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 GByte address minus -BH size up to the 4 GByte address. The -BH size may be set to 0 (or not specified) if the computer has significantly less than 4 GBytes of memory.
For example, for a computer with 1 GByte of memory, allocating 256 MByte for Windows and the remainder for frame buffer memory, use:
/MAXMEM=256
in
C:\BOOT.INI,
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.
Use of HLDINST.EXE, as described above, provides automatic installation of the printer port authorization key's driver, needed under Windows XP, or XP(x64), for XCAP-Plus, XCAP-Std, and XCAP-Ltd (but not needed for XCAP-Lite). The following information allows manual installation, correcting problems, or integration with an OEM's procedures for the printer port version of authorization keys.
C:\WINDOWS\SYSTEM32\DRIVERS
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HardLock
This key must contain values:
ErrorControl = 0x00000001
Group = "Extended Base"
Start = 0x00000002
Type = 0x00000001
or, if using REGEDT32, the values should appear as:
ErrorControl:REG_DWORD:0x1
Group:REG_SZ:ExtendedBase
Start:REG_DWORD:0x2
Type:REG_DWORD:0x1
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HardLock\Parameters
which contains a value:
IoPortAddress0 = 0x???? (for REGEDIT)
IoPortAddress0:REG_DWORD:0x???? (for REGEDT32)
where the
''????''
is replaced with the parallel port's I/O address in hexadecimal.
As before, Windows must be shut down and restarted.
> Z:SETUP (replace Z with drive letter for your CD)
from the EPIX, Inc. ftp site.ftp.epixinc.com/software/xcap_v37/XCAPWIN32.EXE (for 32 bit Windows)
> XCAPWIN32.EXE (for 32 bit Windows) > XCAPWIN64.EXE (for 64 bit Windows)
PCITIPS.TXT
file provides the
PC Configuration Tips,
with tips for resolving hardware and software conflicts.
Command Line: InstallDir \ XCAPWXX
Name: XCAP
replacing
''InstallDir''
with the name of the installation directory chosen above.
Select
''OK''.
The printer port authorization key is approximately the size and shape of a printer cable's connector (5.5×4.5×1.6 cm), but having 25-pin connectors at both ends and no cable attached. 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 USB port authorization key is approximately the size of a small finger (6.0×1.6×0.8 cm), having a USB standard 4-pin connector at one end. If provided, connect the authorization key to a USB port. Operating system support for USB devices is required; XCAP does not add USB support to the operating system.
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.
> C:\XCAP\HARDLOCK\HLDINST -install
> CHDIR C:\XCAP\HARDLOCK
and execute:
HLDINST -install
to run the authorization key utility program.
If the PIXCI® imaging board was not previously installed, the first time Windows starts after installation of the PIXCI® imaging board, Windows will notice the new device and inquire.
The first time Windows Vista or Vista(x64) starts after installation of the PIXCI® imaging board, a window titled ''Found New Hardware'' appears. Select ''Locate and install driver software (recommended)'', click ''Continue'', select ''I don't have the disk. Show me other options'', select ''Browse my computer for driver (advanced)'', enter path Drivers\WinVS for Windows Vista, or Drivers\WinVS64 for Windows Vista(x64), 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.
If the PIXCI® imaging board was already installed, and ''Ask me again later'' or ''Don't show this message again for this device'' was clicked when Windows started and announced the presence of a new ''Multimedia Video Controller'', then instruct Windows to load the appropriate driver. Click ''Start'', ''Control Panel'', ''System and Maintenance''. Select ''Device Manager'' and under ''Other Devices'' or ''Imaging Devices'' double-click ''PCI MultiMedia Video Device'' or ''Coprocessor'' or ''PIXCI(R) Video Capture Board'' (the former two may appear if a PIXCI® driver was never installed, otherwise the latter appears). A ''Properties'' window appears; click ''Driver'' (tab), and ''Update Driver''. An ''Update Driver Software'' window appears; select ''Browse my computer for driver (advanced)'', enter path Drivers\WinVS for Windows Vista, or Drivers\WinVS64 for Windows Vista(x64), 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.
The Driver Assistant feature within XCAP simplifies configuration of the PIXCI® imaging board's driver. Under Windows Vista and Vista(x64), such a feature must have administrator privileges. To run XCAP once with administrator privilege, right click on its shortcut or on the ''XCAP for Windows'' and select ''Run as administrator''. To always run XCAP with administrator privilege, right click on its shortcut or on the ''XCAP for Windows'' and select ''Properties'', ''Shortcut'', ''Run as administrator'', and ''OK''.
Use of EPIXXCW2.INF or EPIXXCW6.INF, above, provides automatic installation of EPIXXCW2.SYS or EPIXXCW6.SYS in most circumstances. The following information allows manual installation, correcting problems, or integration with an OEM's procedures.
C:\WINDOWS\SYSTEM32\DRIVERS
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW2
for Windows Vista
or
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW6
for Windows Vista(x64).
This entry must contain:
ErrorControl = 0x00000001
Group = "Extended base"
Start = 0x00000001
Type = 0x00000001
and may, as described below, also contain:
PIXCI = "-IM <memorysize>"
Create an entry such as:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\System\EPIXXCW2
for Windows Vista
or
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\System\EPIXXCW6
for Windows Vista(x64).
This entry must contain:
EventMessageFile = "%SystemRoot%\System32\IoLogMsg.dll"
TypesSupported = 0x00000007
Under Windows Vista or Vista(x64), frame buffer memory must be allocated during Windows' initialization.
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 kBytes.
If no frame buffer memory size is specified,
a default size of 32768 kBytes is used.
Windows must be rebooted 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, which has on-board frame buffer memory, memory reserved by the -IM parameter is needed only for support of time stamping of captured frames, and only if 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 Vista or Vista(x64) 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 Vista, the amount of memory that Windows may grant during startup is typically limited to 1024 MByte, but not more than half of the computer memory size. Under Windows Vista(x64), the amount of memory that Windows may grant during startup is typically limited to the smaller of 6 GByte 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® imaging board 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.
As described above, frame buffer memory allocated by EPIXXCW2.SYS for Windows Vista, or EPIXXCW6.SYS for Windows Vista(x64), during Windows startup may be limited to a small percentage of total computer memory. Under Windows Vista, the amount of memory that Windows may grant during startup is typically limited to 1024 MByte, but not more than half of the computer memory size. Under Windows Vista(x64), the amount of memory that Windows may grant during startup is typically limited to the smaller of 6 GByte 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 Vista, or EPIXXCW6.SYS for Windows Vista(x64), to explicitly use a section of memory without allocating it from Windows Vista or Vista(x64):
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.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW2
for Windows Vista,
or
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW6
for Windows Vista(x64).
On the
''PIXCI''
field add:
-IA <image_memory_adrs_in_kByte>
-IM <size_of_image_memory_in_kByte>
-MB <image_memory_partition_size_in_kByte>
-BH <size_of_BIOS_hole_below_4GB_in_kByte>
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 GBytes 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 GBytes of memory, some of the memory directly below the 4 GByte address overlaps other hardware resources such as BIOS, memory mapped I/O, PCI configuration space, etc.[11] 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 GByte address minus -BH size up to the 4 GByte address. The -BH size may be set to 0 (or not specified) if the computer has significantly less than 4 GBytes of memory.
For example, for a computer with 1 GByte of memory, allocating 256 MByte 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.
Use of HLDINST.EXE, as described above, provides automatic installation of the printer port authorization key's driver, needed under Windows Vista or Vista(x64) for XCAP-Plus, XCAP-Std, and XCAP-Ltd (but not needed for XCAP-Lite). The following information allows manual installation, correcting problems, or integration with an OEM's procedures for the printer port version of authorization keys.
C:\WINNT\SYSTEM32\DRIVERS
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HardLock
This key must contain values:
ErrorControl = 0x00000001
Group = "Extended Base"
Start = 0x00000002
Type = 0x00000001
or, if using REGEDT32, the values should appear as:
ErrorControl:REG_DWORD:0x1
Group:REG_SZ:ExtendedBase
Start:REG_DWORD:0x2
Type:REG_DWORD:0x1
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HardLock\Parameters
which contains a value:
IoPortAddress0 = 0x???? (for REGEDIT)
IoPortAddress0:REG_DWORD:0x???? (for REGEDT32)
where the
''????''
is replaced with the parallel port's I/O address in hexadecimal.
As before, Windows must be shut down and restarted.
> Z:SETUP (replace Z with drive letter for your CD)
from the EPIX, Inc. ftp site.ftp.epixinc.com/software/xcap_v37/XCAPWIN32.EXE (for 32 bit Windows)
> XCAPWIN32.EXE (for 32 bit Windows) > XCAPWIN64.EXE (for 64 bit Windows)
PCITIPS.TXT
file provides the
PC Configuration Tips,
with tips for resolving hardware and software conflicts.
Command Line: InstallDir \ XCAPWXX
Name: XCAP
replacing
''InstallDir''
with the name of the installation directory chosen above.
Select
''OK''.
The printer port authorization key is approximately the size and shape of a printer cable's connector (5.5×4.5×1.6 cm), but having 25-pin connectors at both ends and no cable attached. 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 USB port authorization key is approximately the size of a small finger (6.0×1.6×0.8 cm), having a USB standard 4-pin connector at one end. If provided, connect the authorization key to a USB port. Operating system support for USB devices is required; XCAP does not add USB support to the operating system.
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.
> C:\XCAP\HARDLOCK\HLDINST -install
> CHDIR C:\XCAP\HARDLOCK
and execute:
HLDINST -install
to run the authorization key utility program.
If the PIXCI® imaging board was not previously installed, the first time Windows starts after installation of the PIXCI® imaging board, Windows will notice the new device and inquire.
The first time Windows 7 or 7(x64) starts after installation of the PIXCI® imaging board, a notification message will pop-up stating ''Device driver was not successfully installed'' appears. Close the notification.
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.
The Driver Assistant feature within XCAP simplifies configuration of the PIXCI® imaging board's driver. Under Windows 7 and 7(x64), such a feature must have administrator privileges. To run XCAP once with administrator privilege, right click on its shortcut or on the ''XCAP for Windows'' and select ''Run as administrator''. To always run XCAP with administrator privilege, right click on its shortcut or on the ''XCAP for Windows'' and select ''Properties'', ''Shortcut'', ''Run as administrator'', and ''OK''.
Use of EPIXXCW2.INF or EPIXXCW6.INF, above, provides automatic installation of EPIXXCW2.SYS or EPIXXCW6.SYS in most circumstances. The following information allows manual installation, correcting problems, or integration with an OEM's procedures.
C:\WINDOWS\SYSTEM32\DRIVERS
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW2
for Windows 7
or
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW6
for Windows 7(x64).
This entry must contain:
ErrorControl = 0x00000001
Group = "Extended base"
Start = 0x00000001
Type = 0x00000001
and may, as described below, also contain:
PIXCI = "-IM <memorysize>"
Create an entry such as:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\System\EPIXXCW2
for Windows 7
or
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\System\EPIXXCW6
for Windows 7(x64).
This entry must contain:
EventMessageFile = "%SystemRoot%\System32\IoLogMsg.dll"
TypesSupported = 0x00000007
Under Windows 7 or 7(x64), frame buffer memory must be allocated during Windows' initialization.
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 kBytes.
If no frame buffer memory size is specified,
a default size of 32768 kBytes is used.
Windows must be rebooted 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, which has on-board frame buffer memory, memory reserved by the -IM parameter is needed only for support of time stamping of captured frames, and only if 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 or 7(x64) 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, the amount of memory that Windows may grant during startup is typically limited to 1024 MByte, but not more than half of the computer memory size. Under Windows 7(x64), the amount of memory that Windows may grant during startup has not yet been determined, but is probably similar the limit for Windows Vista(x64): the smaller of 6 GByte or one half of the computer meory size.
Windows may provide less frame buffer memory than was requested. If no memory could be allocated, the PIXCI® imaging board 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.
As described above, frame buffer memory allocated by EPIXXCW2.SYS for Windows 7, or EPIXXCW6.SYS for Windows 7(x64), during Windows startup may be limited to a small percentage of total computer memory. Under Windows 7, the amount of memory that Windows may grant during startup is typically limited to 1024 MByte, but not more than half of the computer memory size. Under Windows 7(x64), the amount of memory that Windows may grant during startup has not yet been determined, but is probably similar the limit for Windows Vista(x64): the smaller of 6 GByte or one half of the computer meory 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, or EPIXXCW6.SYS for Windows 7(x64), to explicitly use a section of memory without allocating it from Windows 7 or 7(x64):
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.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW2
for Windows 7,
or
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EPIXXCW6
for Windows 7(x64).
On the
''PIXCI''
field add:
-IA <image_memory_adrs_in_kByte>
-IM <size_of_image_memory_in_kByte>
-MB <image_memory_partition_size_in_kByte>
-BH <size_of_BIOS_hole_below_4GB_in_kByte>
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 GBytes 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 GBytes of memory, some of the memory directly below the 4 GByte address overlaps other hardware resources such as BIOS, memory mapped I/O, PCI configuration space, etc.[13] 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 GByte address minus -BH size up to the 4 GByte address. The -BH size may be set to 0 (or not specified) if the computer has significantly less than 4 GBytes of memory.
For example, for a computer with 1 GByte of memory, allocating 256 MByte 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.
Use of HLDINST.EXE, as described above, provides automatic installation of the printer port authorization key's driver, needed under Windows 7 or 7(x64) for XCAP-Plus, XCAP-Std, and XCAP-Ltd (but not needed for XCAP-Lite). The following information allows manual installation, correcting problems, or integration with an OEM's procedures for the printer port version of authorization keys.
C:\WINNT\SYSTEM32\DRIVERS
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HardLock
This key must contain values:
ErrorControl = 0x00000001
Group = "Extended Base"
Start = 0x00000002
Type = 0x00000001
or, if using REGEDT32, the values should appear as:
ErrorControl:REG_DWORD:0x1
Group:REG_SZ:ExtendedBase
Start:REG_DWORD:0x2
Type:REG_DWORD:0x1
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HardLock\Parameters
which contains a value:
IoPortAddress0 = 0x???? (for REGEDIT)
IoPortAddress0:REG_DWORD:0x???? (for REGEDT32)
where the
''????''
is replaced with the parallel port's I/O address in hexadecimal.
As before, Windows must be shut down and restarted.
XCAP requires Linux Kernel Version 2.4.8 or later. You must have super user privileges to complete the installation procedure.
Some systems mount the CD under/mnt/cdrom/XCAP/xcaplnx_i386.bin (for 32 bit Linux) /mnt/cdrom/XCAP/xcaplnx_x86_64.bin (for 64 bit Linux)
/media
instead of
/mnt.
/usr/local/xcap.
from the EPIX, Inc. ftp site.ftp.epixinc.com/software/xcap_v37/xcaplnx_i386.bin (for 32 bit Linux) ftp.epixinc.com/software/xcap_v37/xcaplnx_x86_64.bin (for 64 bit Linux)
/usr/local/xcap.
.bin
file from your computer's hard drive.
/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
PC Configuration Tips,
with tips for resolving hardware and software conflicts.
xcaplnx
in the XCAP installation directory, such as:
/usr/local/xcap/xcaplnx
assuming use of the default installation directory,
and may use:
/usr/local/xcap/program/xcap20.png
as an icon.
Alternately, XCAP will maintain individual settings and configuration, and individual default storage of images, scripts and other data, within the current working directory.
The printer port authorization key is approximately the size and shape of a printer cable's connector (5.5×4.5×1.6 cm), but having 25-pin connectors at both ends and no cable attached. 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 USB port authorization key is approximately the size of a small finger (6.0×1.6×0.8 cm), having a USB standard 4-pin connector at one end. If provided, connect the authorization key to a USB port. Operating system support for USB devices is required; XCAP does not add USB support to the operating system.
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.
Within XCAP, the current graphics display (S/VGA) configuration can be checked under Utility, Linux Info, X11.
Use of the
Driver Assistant
within XCAP
provides interactive installation
of the
pixci_i386.o
driver in most circumstances.
The following information allows manual installation, correcting problems,
or integration with an OEM's procedures.
insmod -o pixci [ --force ] pixci_i386.o [ "PIXCIPARM=<driver_config_parameters>" ]
using
--force
if trying to install the driver under a different kernel than it was intended,
and using
PIXCIPARM=
to specify any optional Driver Configuration Parameters described below.
For example,
insmod -o pixci [ --force ] pixci_i386.o "PIXCIPARM=-IM 8192"
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
The
/dev/ttyPIXC0
/dev/ttyPIXC1
...
nodes for optional Linux tty style access to the serial ports of
Camera Link compatible PIXCI® cards
are not supported under 2.4 kernels
lsmod
for a list of currently installed modules and remove any named
videodev,
i2c,
i2c-char,
tuner,
msp3400,
bt878,
or
bttv
by using
rmmod.
Use of the
Driver Assistant
within XCAP
provides interactive installation
of the
pixci_i386.ko
32 bit driver
or the
pixci_x86_64.ko
64 bit driver
in most circumstances.
The following information allows manual installation, correcting problems,
or integration with an OEM's procedures.
insmod pixci_i386.ko [ "PIXCIPARM=<driver_config_parameters>" ]
or
using PIXCIPARM= to specify any optional Driver Configuration Parameters described below. For example,insmod pixci_x86_64.ko [ "PIXCIPARM=<driver_config_parameters>" ]
insmod pixci_i386.ko "PIXCIPARM=-IM 8192 -DM 1"
or
Some versions of insmod under 2.6 kernels do not accept quoted spaces in the Driver Configuration Parameters; an underscore (i.e. ''_'') may be used instead of each space. For example,insmod pixci_x86_64.ko "PIXCIPARM=-IM 8192 -DM 1"
insmod pixci_i386.ko PIXCIPARM=-IM_8192_-DM_1
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
insmod pixcitty_i386.ko
the
/dev/ttyPIXC0
/dev/ttyPIXC1
...
nodes for the first, second, etc. cards are created automatically.
The
pixcitty_i386.ko
is is NOT needed for access to the Camera Link serial port
via XCLIB's proprietary API, nor is it needed by XCAP.
lsmod
for a list of currently installed modules and remove any named
videodev,
i2c,
i2c-char,
tuner,
msp3400,
bt878,
or
bttv
by using
rmmod.
Under Linux, frame buffer memory must be allocated during the driver's installation.
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 kBytes.
If no frame buffer memory size is specified,
a default size of 4096 kBytes is used under 32 bit Linux.
32768 kBytes 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, which has on-board frame buffer memory, memory reserved by the -IM parameter is needed only for support of time stamping of captured frames, and only if 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® imaging board 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.
As described above, frame buffer memory allocated by
pixci_i386.o
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.o
to explicitly use a section of memory without allocating
it from Linux:
/etc/lilo.conf,
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 MByte) to the
''append''
line, and changing the prompt name.
For example, changing:
image=/boot/vmlinuz
label=linux
root=/dev/hda1
append=" devfs=mount"
read-only
to
image=/boot/vmlinuz
label=linux+PIXCI
root=/dev/hda1
append=" devfs=mount mem=64M"
read-only
Add an
''append''
line, such as:
append=" mem=64M"
if not previously present.
When booting, the modified
''label=''
provides a reminder of the modified configuration being selected.
lilo
to compile and install the
/etc/lilo.conf.
-IA <image_memory_adrs_in_kByte>
-IM <size_of_image_memory_in_kByte>
-MB <image_memory_partition_size_in_kByte>
-BH <size_of_BIOS_hole_below_4GB_in_kByte>
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. 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 GBytes of memory, some of the memory directly below the 4 GByte address overlaps other hardware resources such as BIOS, memory mapped I/O, PCI configuration space, etc.[16] 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 GByte address minus -BH size up to the 4 GByte address. The -BH size may be set to 0 (or not specified) if the computer has significantly less than 4 GBytes of memory.
For example, for a computer with 1 GByte of memory, allocating 256 MByte for Linux and the remainder for frame buffer memory, use:
mem=256M
in
lilo.conf,
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.
Some Linux 2.4.x systems may use
grub.conf
or
menu.lst
instead of
lilo.conf
for boot configuration;
see
Linux 2.6.x - Forceful Frame Buffer Memory Allocation
for instructions regarding
grub.conf
or
menu.lst.
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:
/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 MByte) 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.
-IA <image_memory_adrs_in_kByte>
-IM <size_of_image_memory_in_kByte>
-MB <image_memory_partition_size_in_kByte>
-BH <size_of_BIOS_hole_below_4GB_in_kByte>
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 GBytes of memory, some of the memory directly below the 4 GByte address overlaps other hardware resources such as BIOS, memory mapped I/O, PCI configuration space, etc.[17] 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 GByte address minus -BH size up to the 4 GByte address. The -BH size may be set to 0 (or not specified) if the computer has significantly less than 4 GBytes of memory.
For example, for a computer with 1 GByte of memory, allocating 256 MByte 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.
Some Linux 2.6.x systems may use the older
lilo.conf
instead of
grub.conf
for boot configuration;
see
Linux 2.4.x - Forceful Frame Buffer Memory Allocation
for instructions regarding
lilo.conf.
Use of the
Driver Assistant
within XCAP,
provides interactive installation
of the authorization key's driver(s).
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.
The various Driver Configuration Parameters for all operating systems are summarized below. Included are options for use under DOS; while XCAP does not run under DOS, XCAP can be used as a support tool for programming the PIXCI® imaging board under DOS.
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.
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, and EL1DB imaging boards which contain multiple, independent
functional units within a single physical board,
each functional unit is handled as an independent imaging board
except that the second half of the PIXCI® E1DB, E4DB, or EL1DB imaging board can not be opened
without the first half also opened;
0b1101 selects the first half of the first physical PIXCI® E1DB, E4DB, or EL1DB
imaging board
and both halves of the second physical PIXCI® E1DB, E4DB, or EL1DB.
Default: 1.
For the PIXCI® CL3SD which has on-board frame buffer memory,
memory reserved by this parameter is needed only for support of
recording frame buffer capture status, and only
if the
''-MU''
parameter specifies use of frame buffer memory for
recording frame buffer capture status.
Currently, 64 bytes are needed for each frame buffer's capture status.
Default: 4096 kByte.
Particularly useful for use with SILICON VIDEO® 2112(C), 1310(C), 1281(C), 9M001(C), 9T001C, 5M10, 5C10, 9C10, 642(C), and 643(C) 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 imaging boards.
Default: 0.
If bit 0x80 is set, frame buffer memory below 4 GByte is requested; this allows use of 32 bit PCI cards on 64 bit systems with more than 4 GByte of memory. Option is quietly ignored for kernels that don't support the necessary feature(s).
Other bits to be described.
Default: 0.
If bit 0x04 is not set, the frame buffer memory is not cleared after allocation, minimizing delay, particularly when using several GBytes of frame buffer memory.
If bit 0x08 is not set, a portion of frame buffer memory is reserved for recording each frame buffer's capture status, such as time stamping the capture. 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.
Default: 0x01.
Default: 0.
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, Vista(x64), 7, and 7(x64).
If bit 0x80 is set, frame buffer memory below 4 GByte is requested; this allows use of 32 bit PCI cards on 64 bit systems with more than 4 GByte of memory.
Other bits to be described.
Default: 0x20.
This chapter will guide the user through the initial steps common to most applications using the PIXCI® imaging board: 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, at this point:
The following instructions are intended to be used while operating the PC; pictures of the graphics display (S/VGA) are intentionally not shown, in favor of focusing the reader's attention on the actual graphics display's (S/VGA) screen.
Under Windows, start XCAP by clicking:
Start (on the Windows Taskbar)
XCAP Imaging
and then clicking:
XCAP for Windows
Under Linux, start XCAP by executing:
xcap
The XCAP Main Window now appears.

In the XCAP Main Window, click:
PIXCI®
PIXCI® Open/Close
A pop-up window appears.

Clicking:
Open
opens the PIXCI® imaging board for use,
removes the Open/Close pop-up window,
creates a PIXCI® Image Viewer window showing the first PIXCI® frame buffer,
creates an Adjust window with camera and video capture adjustments,
and creates a Shortcuts Toolbar for accessing the most commonly needed features.
The following windows are now active:
If XCAP has already been installed, it may have been configured with one or more variations, such as, (a) Eliminate the Main Window, automatically opening and displaying the PIXCI® Image Viewer, (b) Configure the Shortcuts and/or Adjust features to be attached to The PIXCI® Image Viewer window, rather than detached into their own windows, (c) Select whether the Shortcuts and/or Adjust features appear automatically, or only when
Capture
Adjustments
or
Capture
Shortcuts
are clicked, or
(d) Remove the status bar, increasing 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.
Once the PIXCI® imaging board is opened for use, images may 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,
continuously updating the image shown on the graphics display (S/VGA).
The Live mode may be used to adjust the camera's focus, aperture, and position. The Live mode may be halted by clicking:
Capture
UnLive
A
Live
followed immediately by
Unlive
has the same effect as
Snap.
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, in the top row, at the fifth and sixth from the left. The Shortcuts also allow changing the current frame buffer; in the top row, the four icons at the left switch to the first frame buffer, the next frame buffer (e.g. current buffer +1), the previous frame buffer (e.g. current buffer -1), and the last frame buffer, respectively.
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 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 the exact pixels, 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 (S/VGA) pixel.
Of course, depending upon the image resolution, graphics display (S/VGA) 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).
Note that when:
Resize: None (Image Pixel = Display Pixel)
is selected, 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 magnify the image, from the PIXCI® Image Viewer, click:
View
Zoom, Pan, Scroll
Zoom On

Zoom Ratio
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.
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

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.
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 right 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!
The
Capt(ure)
Frame Buffers
shows the number of frame buffers available with the
current selections.
The selections under the PIXCI® Image Viewer:
Adjustments
are automatically saved when the PIXCI® imaging board is closed,
and/or XCAP is exited.
When the PIXCI® imaging board is next opened (from the XCAP Main Window clicking):
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.
XCAP integrates controls for both the PIXCI® imaging board and the SILICON VIDEO® 642 camera within the Adjust window. The left side of the Adjust window contains controls for the PIXCI® imaging board. The right side of the Adjust window provides camera specific controls.

The Gain allows adjusting the camera's gain. Increased gain allows capturing dark scenes, but at the expense of decreased image quality (random noise); Whenever possible, increase illumination or increase exposure instead of increasing gain. A gain lower than 6 dB should only be used in special circumstances, as the sensor's saturation, linearity, and color quality are adversely affected.
The Exposure allows adjusting the camera's exposure (shutter) period.

The AOI Left, AOI Width, AOI Top, and AOI Height allow selecting an area of interest which is read-out and captured. Capturing fewer lines decreases the image size and allows a faster frame rate; capturing fewer columns only decreases the image size. If Center Aoi Width/Left is selected, the AOI Left is automatically adjusted so as to center the image as AOI Width is changed. If Center Aoi Height/Top is selected, the AOI Top is automatically adjusted so as to center the image as AOI Height is changed.

The Pixel Clock allows specifying the pixel clock rate. A faster pixel clock increases the allowable frame rate, but with reduced image quality (fixed pattern noise); a slower pixel clock increases the allowable exposure periods for longer integration and greater sensitivity.
The Video Mode allows selecting Free-Run or Controlled frame mode. In Free-Run mode the camera exposure and read-out is free-running; continuously exposing and sending frames to the imaging board at a constant frame rate without need of a trigger. In Controlled mode the Controlled Frame Rate, Continuous, and Single Shot provide frame rate and triggering control through the PIXCI® SI, SI1, or SI4 imaging board.

Capture
Adjustments
Color (or Clr)
For most common conditions:
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
Capture
Adjustments
AGC
Select whether gain, or exposure,
or both, should be modified to darken a too-bright image
or brighten a too-dark image:
AGC Adjusts Gain
AGC Adjusts Exposure
Using only gain adjustments avoids increasing blur due to moving objects
when exposure is increased.
Using only exposure adjustments avoids increasing pixel noise at high
gain settings.
If using both gain and exposure adjustments, the
AGC Adjust Priority
allows selecting whether gain or exposure should be adjusted first
for an image which is too dark (the opposite is done for an image
which is too bright); again trading off image blur versus noise.

AGC On
to enable AGC.
To save an image, from the PIXCI® Image Viewer, click:
File
Save Image
Choose a file format, such as:
TIFF
JPEG/JFIF
BMP
FITS
PCX
Targa (TGA)
X/Y Binary
X/Y ASCII
TIFF is an industry standard, and the most commonly used image file format;
TIFF is suggested for saving and reloading an image into XCAP,
and suggested for exporting images to other programs which support TIFF.
The JPEG/JFIF is also a commonly used image file format
and can provide high, but
''lossy'',
compression
(i.e. the reconstructed image is not, numerically, exactly the same
as the original image).
The FITS is a commonly used format within the scientific - particularly
astronomy - community.
The BMP, PCX, and TGA formats are useful when exporting an
image into other programs that don't support TIFF;
but these file formats support only 8 bits per pixel component
(such as 8 bit monochrome or 24 bit RGB).

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 that can assume the image's dimensions and can simply read a 2-D array of values.
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.
To save an image sequence, from the PIXCI® Image Viewer, click:
File
Save Image Sequence
Choose a file format, such as:
One TIFF w. Sequence
One AVI w. Sequence
Sequence of TIFF
Sequence of JPEG/JFIF
Sequence of BMP
Sequence of FITS
Sequence of PCX
Sequence of Targa (TGA)
Sequence of X/Y Binary
Sequence of X/Y ASCII
The One TIFF and One AVI store the entire sequence
into a single file; the other option store each image
into an individual file.
Similar to BMP (discussed above),
the AVI format supports only 8 bits per pixel component
(such as 8 bit monochrome or 24 bit RGB).

After selecting any one of the ''Sequence of ..'' file formats, 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.
If using ''One .. w. Sequence'', 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.
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.
For additional guidance in using XCAP, click
Help
XCAP Reference Manual
to browse the full manual.
XCAP is a family of sophisticated, interactive, imaging programs specifically designed to support the PIXCI® series of imaging boards, 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-Demo. All versions share the same user interface and menu structure, but selected features in XCAP-Std, XCAP-Ltd, XCAP-Lite, and XCAP-Demo are not operational. XCAP is distributed on CD, diskette(s), or downloadable from the EPIX, Inc. website. After installation, a 12 character identification code[19] is entered to configure XCAP as either XCAP-Plus, XCAP-Std, XCAP-Ltd,[20] or XCAP-Lite; or, lacking a valid code, configured as XCAP-Demo to browse, but not use, XCAP's features.
XCAP-Std is an interactive, imaging program designed for scientific, industrial, and machine vision applications. XCAP-Std supports the PIXCI® imaging board, 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® imaging boards 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® imaging board's configuration; XCAP-Std can be used with pre-existing images even when the PIXCI® imaging board 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® imaging board 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® imaging board is not present.
XCAP-Lite is a much simplified version of XCAP-Std. XCAP-Lite provides similar image acquisition and PIXCI® imaging board 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 can also be used with pre-existing images, but only while the PIXCI® imaging board is present and opened for use.
XCAP-Demo allows browsing through the dozens of processing, measurement, analysis, and graphics features provided in XCAP-Plus, XCAP-Std, or XCAP-Lite. Images can't be loaded from, or saved to, files. Nor can the PIXCI® imaging board be operated with the XCAP-Demo version.
As XCAP-Plus, XCAP-Std, XCAP-Ltd, and XCAP-Lite 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® imaging board'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 zoomed and unzoomed, 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® imaging board for use. Video setup for the PIXCI® imaging board, such as modifying the video resolution or color space, are also in the Main Window; these features may destroy and re-create the PIXCI® imaging board'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.
The XCAP main window provides a menu bar with File, Images, Scripts, Utility, PIXCI®, and Help features.

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 TIFF, AVI, BMP, JPEG, FITS, 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® imaging board'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.

The Image File Info displays information about a specified TIFF, BMP, JPEG, or FITS 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 XCAP-Lite and XCAP-Ltd versions do not support being used as a TWAIN Application.
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'').
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® imaging board's frame buffers. After creation, the new image is displayed in new instance of The Image Viewer Window, as described below.

Underneath New Image are listed all existing image windows, whether for PIXCI® imaging board frame buffers, or for independent image buffers. (The image window for PIXCI® imaging board frame buffers appears only after the PIXCI® imaging board has been opened for use, see below). An image window which has been closed and thereby off-screen can be reactivated by clicking the image window's name.
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.
The XCAP-Lite and XCAP-Ltd versions do not support recording scripts, creating user-defined tool bars, or the remote control feature. The XCAP-Lite and XCAP-Ltd versions can play scripts previously created with XCAP.
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. The XCAP-Lite and XCAP-Ltd versions allow use of the Black Board for computing values (similar to a spreadsheet), but do not allow inter-connections with other features or creating reports or graphs.
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 XCAP-Lite version does not support creating user-defined translated labels and messages, but may use translated labels and messages previously created with XCAP.
The Windows Info displays information about the current Windows environment, such as memory usage and the graphics display systems (S/VGA) features, as reported by Windows.


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 imaging board 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 (S/VGA) 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 XCAP-Lite version does not support screen capture.
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 C10 Protocol 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 Protocol 2.0 provides support for controlling the Sagebrush Pan-Tilt Gimbals that follow the Sagebrush 2.0 Protocol.
The main window's PIXCI® allows initiating access to the PIXCI® imaging board and provides configuration options. Actual operation of the PIXCI® imaging board 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® imaging board. Once open, the model (and submodel, as appropriate) of the PIXCI® imaging board is available via the Board Info button. After opening, the contents of the PIXCI® image board's 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 example, for PIXCI SV2, SV3, SV4, SV5, SV5A, and SV5B models, the PIXCI® Video Setup allows selecting NTSC, RS-170, S-VIDEO, CCIR, or PAL, allows selecting the video window size and capture resolution, and selecting other video acquisition characteristics. For other models, such as the PIXCI® CL1, CL2, CL3SD, D, D24, D32, D2X, D3X, E1, E1DB, E4, E4DB, EB1, EB1-PoCL, EC1, ECB1, ECB1-34, ECB2, EL1, EL1DB, SI, SI1, or SI4 fewer options may be provided, as these imaging boards are camera specific.

The current video setup is automatically saved when access to the PIXCI® imaging board is closed, and reloaded when the PIXCI® image board 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® imaging board'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 and submodel, 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® imaging board. For many cameras, XCAP includes more convenient, camera-specific ''smart'' controls, provided after a camera-specific imaging board is opened, via the Capture - Adjustments.

The PIXCI® Connections provides, as appropriate for the specific model of PIXCI® imaging board, 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® imaging boards. The PIXCI® Camera Info also allows viewing a non-operational Capture - Adjustments window (i.e. the ''Control Panel'', which provides integrated control of both imaging board 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® imaging board, while XCAP provides imaging board, camera controls, and, optionally, image preprocessing.[21] (The XCAP-Lite and XCAP-Ltd versions do not provide image preprocessing). 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® imaging board, while XCAP provides imaging board, camera controls, and, optionally, image preprocessing.[22]
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® imaging board's frame buffer(s) also provides a Capture feature.
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. The XCAP-Lite version does not support loading 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 TIFF or AVI format image file with multiple images. The XCAP-Lite version does not support loading or saving of image buffer sequences in a single operation; however multiple uses of Load Image or Save Image can load or save each image buffer of a sequence. The Save Image can also save images directly to an FTP URL. The XCAP-Lite version does not support saving 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 XCAP-Lite version does not support the E-Mail Image feature.

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 XCAP-Lite version does not allow printing via EPIX® imaging drivers.

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 XCAP-Lite version does not provide Duplicate Image or Duplicate Image Sequence.
The BlackBoard Image allows copying the image's pixel values into the Black Board. The XCAP-Lite and XCAP-Ltd versions do not provide BlackBoard Image.
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® imaging board's frame buffer(s) does not provide a Close & Dispose of Image; an image viewer window is available whenever the PIXCI® imaging board is open for use.
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.
For image viewer windows associated with the PIXCI® image board's frame buffer(s), the Adjustments allows setting common adjustments, as suitable for the model of the PIXCI® imaging board in use, and is described under PIXCI® Image Viewer - Capture.
The Full Screen allows displaying the image in the full graphics display (S/VGA) screen, with little or no window ''frame'' around the image. A mouse click, anywhere on the graphics display (S/VGA) screen, restores the previous mode. The XCAP-Lite version does not provide the Full Screen feature. The Full Screen feature is only supported under Windows.
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 Cursor allows activating a cursor over the image, which may be positioned via coordinates, or by clicking the mouse on an image feature.

The Display allows selecting how the image is displayed: (a) No resizing so that there is a one to one relationship between an image pixel and a displayed graphics display (S/VGA) pixel and is 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® imaging board'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, and 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.
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. The XCAP-Lite version does not provide the Launch 2nd Viewer feature.
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.
The Pixel Peek & Poke allows numeric display and modification of the pixel value at the image cursor.

The Pixel Plot displays a two-dimensional graph of pixels values along a selected image line or column, all image lines, or for image sequences, a vector. Features attached to the graph show specific pixel values and descriptive statistics such as lowest value, highest value, mean value, and standard deviation. The XCAP-Lite version does not provide a graph of all image lines, and does not provide descriptive statistics.

The Pixel Plot 3D displays a three-dimensional graph projection of the image.
The SMPTE VITC allows searching the image for valid SMPTE Vertical Interval Time Codes and displaying the decoded codes.
The XCAP-Lite and XCAP-Ltd versions do not provide the SMPTE VITC features.
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, or governed by pincushion/barrel lens distortion. 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 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.
The XCAP-Lite and XCAP-Ltd versions only provide the Patterns and Set features.
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 to subpixel accuracy, and displays the position of the edges 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).
The XCAP-Lite and XCAP-Ltd versions do not provide the Intensity Calibration, Spatial Calibration, Histogram, Histogram Pair, Mass & Moments, Radial Mass Plot, Protractor, Polar Reticle, Distance & Angle Crosshairs, Shape Analysis, Blob Analysis, Particle Tracking, SubPixel Edger, Ellipse Fitter, or Correlation Finder features; the Line Profile is limited to straight lines.
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''.
The XCAP-Lite version only provides the graphic line, graphic window, and graphic arrow features. The XCAP-Lite version does not provide the image overlay feature.
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.
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 as the ''input focus'' (e.g. that window's title bar is highlighted). The shortcuts provided are:
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.
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.
The image viewer window associated with the PIXCI® image board's frame buffer(s) has Capture which provides for capturing images from the PIXCI® imaging board and other features associated with the PIXCI® imaging board. 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 Adjustments allows setting common adjustments, as suitable for the model of the PIXCI® imaging board in use. For example, for PIXCI® SV2, SV3, SV4 SV5, SV5A, and SV5B models, the Adjustments allows selecting the video input connection and adjusting the gain, black level, hue, and saturation. Less frequently used, and more esoteric, adjustments may be found under PIXCI® Video Setup, described above. A duplicate Adjustments is provided under Image Viewer - View.
The Shortcuts activates or deactivates the PIXCI® Image Viewer - Capture - Shortcuts, described below. A duplicate Shortcuts is provided under Image Viewer - View.
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 GIO Event Capture provides single or sequence image capture, each image triggered in conjunction with the imaging board's general purpose (formerly referred to as an external TTL) input and output signals. The XCAP-Lite version does not provide the sequence option of the GIO Event Capture feature.
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 captured in response to an event. Events include mouse clicks, time of day, and the imaging board'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. When recording at subvideo rates, 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 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 XCAP-Lite version does not provide the RGB Merge feature.
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 XCAP-Lite and XCAP-Ltd versions do not provide the Quad Pixel Merge feature.

The Frame Average allows performing recursive, continuous, averaging of live video frames (or fields) and viewing the live result. The XCAP-Lite and XCAP-Ltd versions do not provide the Frame Average feature.
The Live Options combines the View - Display options, above, with additional choices governing Live mode. During Live mode, the PIXCI® imaging board can, (a) Capture continuously into the specified frame buffer, however the image shown on the graphics display (S/VGA) may contain portions from different video frames, (b) Snap, display on the graphics display (S/VGA), and repeat, however the image 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 (S/VGA), 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. The XCAP-Lite and XCAP-Ltd versions do not provide the automatic aperture and focus control features.
A tool bar of icons provides shortcuts for accessing often used features of the PIXCI® imaging board, 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 as the ''input focus'' (e.g. that window's title bar is highlighted). The shortcuts provided are:
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.
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 either button (or the area between buttons), yields an options menu. The options menu typically provides the following:
Some numeric fields may have an 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 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.
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.
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.
Main Window
File Load New Image Load New Image Sequence TIFF JPEG/JFIF BMP AVI FITS VIF (Video Frame Files - Video to Disk) Multimedia Image File Info TWAIN Select Source TWAIN New Acquire 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 Fujinon CCTV Lens C10 Protocol Illumination Technologies 3900 Sagebrush Pan-Tilt Gimbal Protocol 2.0 Volpi intralux dc-1100
PIXCI® PIXCI® Open/Close Board Info Driver Assistant PIXCI® Video Setup Format (dependent on imaging board) 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 PC Configuration Tips
PIXCI® Image Viewer Window
File Save Image TIFF JPEG/JFIF BMP FITS PCX Targa X/Y Binary X/Y ASCII
Load Image TIFF JPEG/JFIF BMP FITS X/Y Binary X/Y ASCII
Save Image Sequence One TIFF w. Sequence One AVI w. Sequence Sequence of TIFF Sequence of JPEG/JFIF Sequence of BMP Sequence of FITS Sequence of PCX Sequence of Targa (TGA) Sequence of X/Y Binary Sequence of X/Y ASCII
Load Image Sequence One TIFF w. Sequence One AVI w. Sequence Sequence of TIFF Sequence of JPEG/JFIF Sequence of BMP Sequence of FITS 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 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 Launch 2nd Viewer
Examine Pixel Peek Pixel Peek & Poke Pixel Plot Plot Row Plot Column Plot Buffer Plot All Rows
Pixel Plot 3D 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 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
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 Deflicker: Average Line Pairs Deflicker: Filter Singularity
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
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
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 as Partitioned Quadrilaterals Warp: Src => Dst Fiducials as Best-Fit Polynomials Warp: Pincushion/Barrel Distortion Copy & Resize 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 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
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 PC 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.
| Feature | XCAP-Plus | XCAP-Std | XCAP-Ltd | XCAP-Lite(A) | XCAP-Demo(B) |
| File - | |||||
| - Load New Image | Yes | Yes | Yes | Yes (C) | No |
| - Load New Image Sequence | Yes | Yes | Yes(D) | No | No |
| - 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 |
| - Fujinon CCTV Lens C10 | 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 GByte (E) | 64 MByte(E) | N/A |
| w. PCI 64 bit | None (E) | None (E) | 4 GByte (E) | 64 MByte(E) | N/A |
| w. PCI Express & 32 bit O.S. | None (E) | None (E) | 4 GByte (E) | 64 MByte(E) | N/A |
| w. PCI Express & 64 bit O.S. | None (E) | None (E) | 8 GByte (E) | 64 MByte(E) | N/A |
| w. ExpressCard/54 & 32 bit O.S. | None (E) | None (E) | 4 GByte (E) | 64 MByte(E) | N/A |
| w. ExpressCard/54 & 64 bit O.S. | None (E) | None (E) | 8 GByte (E) | 64 MByte(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 |
| - PC Configuration Tips | Yes | Yes | Yes | Yes | Yes |
| File - | |||||
| - Save Image | Yes | Yes | Yes | Yes (C) | No |
| - Load Image | Yes | Yes | Yes | Yes (C) | No |
| - Save Image Sequence | Yes | Yes | Yes | No | No |
| - Load Image Sequence | Yes | Yes | Yes | No | No |
| - 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 | Yes | Yes | 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 |
| - Launch 2nd Viewer | Yes | Yes | Yes | No | No |
| Examine | |||||
| - Pixel Peek | Yes | Yes | Yes | Yes (H) | Yes (H) |
| - Pixel Peek & Poke | Yes | Yes | Yes | Yes | Yes |
| - Pixel Plot Row | Yes | Yes | Yes | Yes (I) | Yes (I) |
| - Pixel Plot Column | Yes | Yes | Yes | Yes (I) | Yes (I) |
| - Pixel Plot Buffer | Yes | Yes | Yes | Yes (I) | Yes (I) |
| - Pixel Plot All Rows | Yes | Yes | Yes | No | No |
| - Pixel Plot 3D | Yes | Yes | Yes | Yes (S) | Yes (S) |
| - SMPTE VITC | Yes | Yes | Yes | Yes | 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 |
| - 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 |
| - 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 | Yes | Yes |
| - 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 |
| - Auto Gain/Exposure Control | Yes (O) | Yes (O) | Yes (O) | No (O) | No |
| - Pixel Normalization | Yes (V) | Yes (V) | Yes (V) | Yes (V) | 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 | No | No | No | No |
| - Lens Control - | |||||
| - Birger EF232 | Yes | Yes | No(U) | No(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 | No | 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® imaging board is assumed installed and open for use. (B) For XCAP-Demo, images can't be loaded or captured, except example image files provided. (C) For XCAP-Lite, images may not be loaded directly from an Internet URL, or saved directly to an FTP URL. (D) For XCAP-Ltd, images in VIF (Video Frame Files - Video to Disk) format may not be loaded. (E) A combination of the characteristics of PIXCI® imaging cards, operating systems, and of XCAP software. The PIXCI® CL3SD has 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® E1, E1DB, E4, E4DB, EB1, EB1-PoCL, EC1, ECB1, ECB1-34, ECB2, EL1, EL1DB, SI1, and SI4 are designed to access up to 16 EByte of computer memory (a theoretical limit, as no currently available PC provides 16 EByte of memory). For XCAP-Lite, a maximum of 64 MByte of computer based frame buffer memory is supported. On 32 bit systems, XCAP-Std and XCAP-Ltd support up to 4 GBytes of computer based frame buffer memory. On 64 bit systems, XCAP-Std supports up to 16 EByte of computer based frame buffer memory; XCAP-Ltd supports up to 8 GByte of computer based frame buffer memory. The maximum available computer based frame buffer memory is also limited by the computer hardware, configuration, and memory needed by the operating system. (F) Camera specific controls provided for most digital cameras supported by PIXCI® CL1, CL2, CL3SD, D, D24, D32, D2X, D3X, E1, E1DB, E4, E4DB, EB1, EB1-PoCL, EC1, ECB1, ECB1-34, ECB2, EL1, EL1DB, SI, SI1, and SI4; the 'PIXCI® Camera Info' feature shows the specific, customized, support provided for each camera. (G) For XCAP-Lite and XCAP-Demo, the View, Palette feature does not include save, load, import, or export, nor the ''Extract Bright/Dark Reference'' features. (H) For XCAP-Lite and XCAP-Demo, the Examine, Pixel Peek feature does not include save. (I) For XCAP-Lite and XCAP-Demo, plotting features do not include statistics, save, or export options. (J) For XCAP-Ltd, XCAP-Lite, and XCAP-Demo, the Modify, Set feature does not include non-rectangular regions. (K) For XCAP-Ltd, XCAP-Lite, and XCAP-Demo, the Measure features do not include calibration. (L) For XCAP-Ltd, XCAP-Lite, and XCAP-Demo, 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) For Bayer output digital color cameras with software providing white balance and color corrections. The XCAP-Lite provides one set of customizable white & black balance settings, but not multiple customizable sets that can be saved and reselected. The XCAP-Lite provides automatic, continuous, white balance 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 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 time stamp feature, nor the strobe features added by software (as selected in the Sequence Capture dialog); any strobe features provided by the PIXCI® imaging board or camera (either inherent or selected in the Capture & Adjust dialog) are available. (Q) For XCAP-Lite, the ''triggered'' sequence capture is provided when the camera is being 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 supports only the operating system's built-in image printing feature(s), not printing via EPIX® imaging drivers. (S) For XCAP-Lite and XCAP-Demo, plotting features do not include save or export options. (T) For XCAP-Lite, the sequence capture to virtual memory is limited to using 1 GByte of virtual memory For XCAP-Ltd, the sequence capture to virtual memory is limited to using 4 GByte 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. (V) Software implemented pixel normalization is provided for SILICON VIDEO® and other selected cameras; of those, XCAP-Lite does not provide pixel normalization in generic Camera Link mode. (W95) Feature available only under Windows 95, 98, and ME. (Win) Feature available only under Windows.
The optional XCLIB C/C++ library allows controlling the PIXCI® imaging board from ''C'' and ''C++'' programs. Under Windows, the XCLIB library can also be accessed by any programming environment able to call functions within a DLL; a partial list includes Visual Basic, VB.NET, LabView, Matlab, and Borland Delphi.
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 any window provided by the user.
This quick introduction focuses primarily
on XCLIB functions themselves;
programming environment, operating system issues,
and compilation instructions
are addressed in the
XCLIB Reference Manual
and in the example programs provided with XCLIB.
Nor is this introduction intended to cover every
XCLIB function or to provide complete programs;
rather it is intended to provide the
''feel''
of XCLIB programming, without the complications
of user interfaces and application specific functionality.
The XCLIB has two series of functions. The Simple C Functions (SCF), whose names start with pxd_, suffice for most programs using one imaging board, or multiple imaging boards of the same type and operating at the same resolution. This introduction only discusses the SCF functions.
Functions to snap a video
(such as
pxd_goSnap,
discussed below)
capture the next video
following its invocation.
In other words, the function
''arms''
the PIXCI® imaging board to capture the next video
into a frame buffer.
This is in contrast to having the imaging board consume
resources continuously capturing everything,
and having a hypothetical snap function retrieve the last
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.
The following code captures an image into the first frame buffer with the imaging board and camera in the default mode:
#include "xcliball.h"
...
pxd_PIXCIopen(NULL, // driver configuration parameters: use default
"Default", // video format name: use default as per specific imaging board
NULL); // 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 strongly recommended.
A slightly longer program that does something useful with the captured image:
#include "xcliball.h"
...
pxd_PIXCIopen(NULL, "Default", NULL);
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 abreviation 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(NULL, "Default", NULL);
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 abreviation 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 XCLIB 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
For resolution 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.
Every real application should check for errors. Most XCLIB 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(NULL, "Default", NULL);
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.
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:
pzd_goSnap(0x1, // select PIXCI(R) unit 1
1); // select frame buffer 1
initiates capture of a single video
into the specified buffer, the:
pzd_goLive(0x1, // select PIXCI(R) unit 1
1); // select frame buffer 1
initiates continuous capture of each video
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
into alternate buffers, the:
pxd_goLiveSeq(0x1 // select PIXCI(R) unit 1
1, // select start frame buffer 1
10, // select end frame buffer 2
1, // incrementing by one buffer
10, // for a total of ten frames
1); // advancing to the next buffer after each frame
initiates capture at video rate of ten
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
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
as the next is being captured.
Of course, many applications prefer to avoid ''polling'' for status within a loop. The XCLIB also provides asynchronous notification of both,
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 SILICON VIDEO® 642M and 642C have a free-run mode; continuously exposing and sending video to the imaging board. They also have an 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 imaging board.
When combined with the capabilities of the
PIXCI® imaging board, the camera may be in
asynchronous trigger mode but with the imaging board generating
periodic triggers (in XCAP this is 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.
For a camera and imaging board combination in free-run mode, triggering consists of selecting a field 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 video field 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 video field which was being sent
while the trigger was received; the former example
captures the video field 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.
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.
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® imaging board 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® imaging board
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.
For a camera and imaging board combination in free-run mode, triggering consists of selecting a video field 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 that predates
the trigger.
Or,
int odata = pxd_getGPIn(0x1, 0);
ulong 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_getFieldCount(0x1); // get current value of field counter
while (pxd_getFieldCount(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® imaging board 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.
For additional guidance in using XCLIB, consult the XCLIB Reference Manual and the example programs provided with XCLIB.
National Semiconductor DS90LV047A driver.
Voltage Output Low Minimum: 0.9 Volts.
Voltage Output High Maximum: 1.6 Volts.
Absolute Maximum Output Voltage Range: -0.3 volts to VCC +0.3 volts.
National Semiconductor DS90LV048 receiver.
Voltage Input Low Maximum: 0.8 Volts
Voltage Input High Minimum: 2.0 Volts
Absolute Maximum Input Voltage Range: -0.3 volts to VCC +0.3 volts.



The trigger and camera integration control registers generate the FRAME SYNC and EXPOSE signals to the camera. The sensor integration time is programmed via I2C. The signals 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 control the pulse spacing.
The EXSYNC counter determines the width of the EXPOSE signal while the
PRIN counter determines the time between the end of EXPOSE and the next EXPOSE.
The upper 16 bits of the EXSYNC register control the EXPOSE width,
while the upper 16 bits of the PRIN register control the time to the next EXPOSE.
Basic state machine description for triggered mode:
The EXSYNC and PRIN 16 bit count values, which are the upper 16 bits of 32 bit registers, are programmed in the XCLIB ''C'' library with the following function:
int pxd_setExsyncPrin(unitmap, uint exsync, uint prin);
The lower 16 bit values of these registers are programmed by loading a video configuration format file previously saved by XCAP.
Refer to the XCLIB
''C''
Library User's Manual for additional programming information.
The register bit definitions follow.
PRINC. Trigger Control and PRIN 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 to clock the
camera control state machine clock.
9,8,7=111 selects Pixel Clock divide by 256.
9,8,7=110 selects Pixel Clock divide by 128.
9,8,7=101 selects Pixel Clock divide by 64.
9,8,7=100 selects Pixel Clock divide by 32.
9,8,7=011 selects Pixel Clock divide by 16.
9,8,7=010 selects Pixel Clock divide by 8.
9,8,7=001 selects Pixel Clock divide by 4.
9,8,7=000 selects Pixel Clock divide by 2.
Bit 5, STRSL, Strobe Select.
Bit 5=1 selects a negative strobe from the camera control state machine.
Bit 5=0 selects positive strobe from the camera control state machine.
The strobe output is on HDR1.
The strobe signal is delayed by two state machine cycles from the reset signal.
The duration of the strobe signal is the integration time of the sensor.
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 HDR1.
Bit 3, Not Used.
Bit 2, EXSYNSEL, EXPOSE enable.
Bit 2=1 enables EXPOSE input and FRAME SYNC to the sensor.
Bit 2=0 disables EXPOSE and FRAME SYNCE to the sensor.
Bit 1, CNTS, Continuous Select.
Bit 1=1 selects continuous operation of the EXSYNC state machine.
If TIS=1, a trigger will start the state machine for one cycle and
wait for the next trigger.
If TIS=0, the state machine will run continuously,
counting down the EXSYNC, then counting down PRINC.
Bit 1=0 selects single shot operation of the state machine.
Each time the EXSYNC register is written, one FRAME SYNC and EXPOSE will be produced.
Each EXSYNC write will start this cycle.
Bit 0, TIS, Trigger Input Select.
Bit 0=1 causes the start of the state machine 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 state machine to start
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.
After XCAP is started and prior to the display of the first menu, the software checks for the presence of required BIOS software, the presence of the PIXCI imaging board, and performs other tests. If any of the software checks fail, an error message will be displayed.
If a ``Data Path Error'' message is displayed, the board must be returned for repair.
If a ``FIFO Overflow'' message is displayed, check the PC's setup menu to see if PCI burst mode is enabled. If burst mode is not enabled, the number of pixels per line may be limited to 200 pixels or less. Disable the clock in the taskbar on Windows. Disable any other Windows applications that may periodically start. Typing ``Ctrl-Alt-Del'' in Windows will give a list of applications that are running. The SILICON VIDEO 642 camera can generate data that is beyond the bandwidth of the PCI 32 bit bus when operating at 10 bits per pixel at 66 MHz pixel clock rates. Use 8 bits per pixel when operation at rates higher than 60 MHz is desired.
If a ``Link Lost'' message is displayed, check the pixel clock frequency being used.
If the pixel clock frequency is outside the range of 25 to 70 megahertz,
change the frequency back to 48 megahertz, or
Close and Open the PIXCI SI board using the default video format.
Should that not fix the error, power down the computer and restart,
remove and reinstall the cable to the
camera at both the camera and board ends of the cable, try another cable, try a shorter
cable, or try a better quality, shielded cable.
| Power Supply | Insufficient power for the boards installed. |
|---|---|
| Touching Boards | One board's components are touching another board. |
| Defective Cable(s) | Camera cable has an open or short. |
| Video Input | Defective or incompatible video source. |
| Defective PIXCI imaging board | Defective integrated circuit, bad solder joint, |
| physical damage, or static damage. | |
| Motherboard | No PCI burst mode or no PCI BIOS. |
| Defective PCI connector. | |
| PCI slot is not bus master capable. | |
| PCI slot shares interrupts or other resources with adjacent slot. | |
| Display | System has less than 24 bits per pixel, |
| is too slow, or has insufficient memory. | |
The data transfer capabilities of the motherboard may limit the size of the
image that the PIXCI imaging board can transfer to memory on the motherboard.
Some older PCI motherboards do not support burst mode on the PCI bus.
Some older PCI motherboards limit bursts to four 32 bit transfers.
Some older PCI motherboards must have their configuration BIOS set
to enable PCI bus burst mode.
PCI bus transfers from other devices will compete for data
transfer time with images to be transferred from the PIXCI imaging board to
memory on the motherboard.
ISA bus transfers will also compete for data transfer time with images to
be transferred from the PIXCI imaging board to memory on the motherboard.
The updating of clocks and other background tasks may interfere with the
capture of images.
These tasks should be disabled if error messages indicate that video
transfers have been interrupted.
The PIXCI imaging board can be damaged during shipment. If damage is visible, check the shipping container for damage, and notify the freight carrier.
If the board must be returned for test or repair, call EPIX for a Return Materials Authorization (RMA) number. Be prepared to describe the problem that has been encountered and what steps have been taken to attempt to correct it. Please include a written description of symptoms, error messages, and steps taken to attempt to solve the problem with the packing list for the material returned.
The SILICON VIDEO® 642M or 642C camera, cable, and PIXCI® SI imaging board has been tested per EMC directive 89/336/EEC and has met the following test requirements:
These test 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 B limit.
If you find that the computer system in which the SILICON VIDEO® 642M or 642C camera, cable, and PIXCI® SI imaging board 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).
The SILICON VIDEO® 642M or 642C camera connected to the PIXCI® SI may be the
source of radiation.
To determine if the camera is the source of interference, reorient the camera.
Imaging products manufactured by EPIX, Inc. 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.