background image

Function Library 

 103

Memory size in bytes.

@ Return Code

0: ERROR_NoError

-7: ERROR_Not_Initialized  – Make sure the port has been 
initialized by “AngeloRTV_Initial”.

-9: ERROR_Invalid_PortNo – Please input the correct 
“PortNo” parameter.

@ Example

<VC/BCB >

AngeloRTV_Capture_Config –
AngeloRTV_Capture_Start – 
AngeloRTV_Sync_Grab –
AngeloRTV_Capture_Stop –

I16 Result;
U16 PortNo = 0;
U32 CaptureNo = 0xFFFFFFFF;
U32 Start_Field = 0;
U32 StrAddr;
U32 Width, Height, Size_Byte;
Result = AngeloRTV_Capture_Config (PortNo, 

Start_Field);

Result = AngeloRTV_Capture_Start (PortNo, 

CaptureNo);

Result = AngeloRTV_Sync_Grab (PortNo, &StrAddr, 

&Width, &Height, &Size_Byte);

Result = AngeloRTV_Capture_Stop (PortNo);

< Visual Basic >

AngeloRTV_Capture_Config –
AngeloRTV_Capture_Start –
AngeloRTV_Sync_Grab –

AngeloRTV_Capture_Stop –
Dim Result As Integer
Dim PortNo As Integer
Dim CaptureNo As Long
Dim Start_Field As Long
Dim StrAddr As Long
Dim Width as Long, Height As Long, Size_Byte As 

Long

PortNo = 0
CaptureNo = &HFFFFFFFF
Start_Field = 0

Summary of Contents for cRTV-24

Page 1: ...Advance Technologies Automate the World Manual Rev 2 03 Revision Date April 22 2009 Part No 50 1R001 1010 RTV Series Multi Channel Real Time Video Frame Grabber Series User s Manual ...

Page 2: ...ntial damages arising out of the use or inability to use the product or documentation even if advised of the possibility of such damages This document contains proprietary information protected by copy right All rights are reserved No part of this manual may be repro duced by any mechanical electronic or other means in any form without prior written permission of the manufacturer Trademarks Produc...

Page 3: ...vice adlinktech com TEL 886 2 82265877 FAX 886 2 82265717 Address 9F No 166 Jian Yi Road Chungho City Taipei 235 Taiwan Please email or FAX this completed service form for prompt and satisfactory service Company Information Company Organization Contact Person E mail Address Address Country TEL FAX Web Site Product Information Product Model Environment OS M B CPU Chipset Bios Please give a detailed...

Page 4: ......

Page 5: ...re Reference 9 2 1 RTV Series 9 PCIe RTV24 Specifications 9 RTV 24 Specifications 15 RTV E4 Extension Board Optional 21 RTV I4 Isolation GPIO Board Optional 22 2 2 cRTV Series 27 cRTV 24 Specifications 27 cRTV 44 Specifications 30 2 3 PMC RTV Series 35 PMC RTV21 Specifications 35 PMC RTV24 Specifications 39 3 Installation Guide 43 3 1 Hardware Installation 43 RTV Series 43 cRTV Series 44 PMC RTV S...

Page 6: ...5 Main Menu 77 5 Function Library 81 5 1 List of Functions 82 5 2 C C Programming Library 83 5 3 System Functions 84 5 4 Configuration Functions 90 5 5 Image Grabbing 100 5 6 GPIO EEPROM Functions 105 5 7 Callback Thread Functions 111 5 8 Watchdog Timer 117 5 9 Software Trigger 119 5 10 Frame Buffer 122 5 11 Angel RTV LabVIEW Function Library 127 6 Programming Guide 135 6 1 DirectShow Programming ...

Page 7: ...le 2 15 GPIO CN9 20 Table 2 16 Watchdog Timer 20 Table 2 17 Channel Extension Video Input CN11 21 Table 2 18 Relay Jumper Settings 22 Table 2 19 STRG Jumper Settings 23 Table 2 20 RTV I4 GPIO CN1 RTV 24 GPIO CN8 25 Table 2 21 RTV I4 GPIO CN2 RTV 24 GPIO CN9 25 Table 2 22 D sub 25 pin Connector 26 Table 2 23 cRTV Video Inputs 28 Table 2 24 Channel Extension Video Input CN8 29 Table 2 25 GPIO Charac...

Page 8: ...List of Tables iv Table 5 2 C C Data Types 83 Table 5 3 Pixel Data 122 ...

Page 9: ...Address Jumpers 23 Figure 2 8 STRG Address Jumpers 24 Figure 2 9 cRTV 24 Appearance 27 Figure 2 10 cRTV 44 Appearance 31 Figure 2 11 PMC RTV21 Appearance 36 Figure 2 12 PMC RTV21 Video Input GPIO 37 Figure 2 13 PMC RTV24 Appearance 41 Figure 2 14 PMC RTV24 Video Input GPIO 41 Figure 3 1 RTV 24 Installation 43 Figure 3 2 cRTV 24 3U cPCI 45 Figure 3 3 cRTV 44 6U cPCI 46 Figure 3 4 RTV E4 Attachment ...

Page 10: ......

Page 11: ...he PC s memory the resolution can be scaled down using selectable ratios Arbitrary cropping to regions of interest is supported The RTV series generates bitmaps in all popular color formats such as RGB System integrators will benefit from a watchdog timer for fault tol erant applications and from the easy to use standard connectors 1 1 Features 1 1 1 Image Acquisition Acquisition Speed Note The PM...

Page 12: ... with TTL compatible I O lines protected against overloads and electrostatic discharges Each line may be configured as an input or output They can be used to trigger acquisition or report alarm signals 1 1 3 Watchdog Timer A hardware watchdog is available on the RTV 24 that is able to monitor PC application operation and will automatically reset the PC after a programmable inactivity time out This...

Page 13: ...lay AGP 4X or above VIA or SiS VGA chipset NOT recommended Display setting 800 x 600 resolution or above 16 bit color or above OS if using Windows 2000 please upgrade to Service Pack 4 0 or above Note Lower system configurations will lower acquisition perfor mance Note Please refer to section 1 4 RTV 24 Benchmark for the per formance issues due to PCI bus bandwidth limitations NTSC real time color...

Page 14: ...3 Motherboard ASUS P5E64 WS EVOLUTION CPU Intel Core2 Duo CPU E4600 2 4GHz RAM DDR3_SDRAM 2GB OS Windows XP SP3 Image Format RGB16 Full 640 480 Card Card 0 Card 1 Port 0 1 2 3 0 1 2 3 Real Time Frame Rate 29 814 29 813 29 813 29 815 Image Format RGB24 Full 640 480 Card Card 0 Card 1 Port 0 1 2 3 0 1 2 3 Real Time Frame Rate 29 814 29 815 29 815 ...

Page 15: ...F 320 240 Card Card 0 Card 1 Port 0 1 2 3 0 1 2 3 Real Time Frame Rate 29 966 29 960 29 964 29 958 29 961 29 958 29 966 29 964 Card Card 2 Card 3 Port 0 1 2 3 0 1 2 3 Real Time Frame Rate 29 943 29 883 29 927 29 833 Image Format RGB24 CIF 320 240 Card Card 0 Card 1 Port 0 1 2 3 0 1 2 3 Real Time Frame Rate 29 966 29 963 29 966 29 963 29 966 29 963 29 966 29 966 Card Card 2 Card 3 Port 0 1 2 3 0 1 ...

Page 16: ...64 WS EVOLUTION CPU Intel Core2 Duo CPU E4600 2 4GHz RAM DDR3_SDRAM 2GB OS Windows XP SP3 Image Format RGB16 Full 640 480 Card Card 0 Card 1 Port 0 1 2 3 0 1 2 3 Real Time Frame Rate 29 811 29 798 29 810 29 808 29 807 29 805 29 808 29 801 Image Format RGB24 Full 640 480 Card Card 0 Card 1 Port 0 1 2 3 0 1 2 3 Real Time Frame Rate 29 808 29 811 29 808 29 808 29 814 29 809 ...

Page 17: ... 0 1 2 3 Real Time Frame Rate 29 810 29 09 29 810 29 809 29 809 29 810 29 808 29 809 Card Card 2 Card 3 Port 0 1 2 3 0 1 2 3 Real Time Frame Rate 29 810 29 809 29 809 29 809 29 809 29 810 29 809 29 810 Image Format RGB24 CIF 320 240 Card Card 0 Card 1 Port 0 1 2 3 0 1 2 3 Real Time Frame Rate 29 810 29 09 29 811 29 809 29 809 29 811 29 807 29 809 Card Card 2 Card 3 Port 0 1 2 3 0 1 2 3 Real Time F...

Page 18: ...8 Introduction ...

Page 19: ...ifications Figure 2 1 PCIe RTV24 Appearance Dimensions W x L 167 65 mm x 111 15 mm Operating Environment Temperature 0 to 55 C Humidity 5 to 90 RHNC Storage Environment Temperature 0 to 70 C Humidity 0 to 95 RHNC Power Requirements 12 V max 0 7A 3 3 V max 0 5A Aux 3 3V max 0 003A ...

Page 20: ...nes All I Os are TTL compatible and support 4 inputs 4 outputs and 4 soft trigger lines GPIO interface Two 10 pin header connectors on board The I O lines are internally pulled up and have the follow ing characteristics Watch Dog Timer For monitoring applications and will reset the PC after a pro grammable inactivity time out Interface 2 pin header 4 channel software trigger output 4 channels prog...

Page 21: ...EEPROM Includes 1kbit available EEPROM RTV 24 Standard Accessories Watchdog reset cable GPIO bracket User Manual All in One CD RTV 24 Connectors Pin Definitions Connector Definition Video IN CH 0 Video IN CH 1 Video IN CH 2 Video IN CH 3 Table 2 2 RTV Video Inputs ...

Page 22: ...ND 5 GND 6 CH6 video in 7 CH7 video in 8 GND 9 GND 10 GND Table 2 3 Channel Extension Video Input CN2 PIN Function PIN Function 1 GND 2 CH8 video in 3 CH9 video in 4 GND 5 GND 6 CH10 video in 7 CH11 video in 8 GND 9 GND 10 GND Table 2 4 Channel Extension Video Input CN3 10 9 2 1 10 9 2 1 ...

Page 23: ...D 5 GND 6 CH14 video in 7 CH15 video in 8 GND 9 GND 10 GND Table 2 5 Channel Extension Video Input CN5 PIN Function PIN Function 1 IN0 External interrupt 2 GND 3 OUT0 4 Software Trigger 0 5 IN1 External interrupt 6 Software Trigger 1 7 OUT1 8 5V 9 GND 10 Table 2 6 GPIO CN8 10 9 2 1 10 9 2 1 ...

Page 24: ...n PIN Function 1 IN2 External interrupt 2 GND 3 OUT0 4 Software Trigger 2 5 IN3 External interrupt 6 Software Trigger 3 7 OUT1 8 5V 9 GND 10 Table 2 7 GPIO CN9 PIN Function 1 System reset 2 GND Table 2 8 Watchdog Timer 10 9 2 1 1 2 JP ...

Page 25: ...Purpose I O Lines All I Os are TTL compatible and support 4 inputs 4 outputs and 4 soft trigger lines GPIO interface Two 10 pin header connectors on board The I O lines are internally pulled up and have the follow ing characteristics Watch Dog Timer For monitoring applications and will reset the PC after a pro grammable inactivity time out Interface 2 pin header 4 channel software trigger output 4...

Page 26: ...r Signal Waveform User EEPROM Includes 1kbit available EEPROM Form Factor 32 bit 33MHz PCI half size board Figure 2 4 RTV 24 Appearance Dimensions W x L 106 68 mm x 174 62 mm Operating Environment Temperature 0 to 55 C Humidity 5 to 90 RHNC ...

Page 27: ...95 RHNC Power Requirements 5V max 1 5A 3 3 V max 0 5A RTV 24 Standard Accessories Watchdog reset cable GPIO bracket User Manual All in One CD RTV 24 Connectors Pin Definitions Connector Definition Video IN CH 0 Video IN CH 1 Video IN CH 2 Video IN CH 3 Table 2 10 RTV Video Inputs ...

Page 28: ...D 5 GND 6 CH6 video in 7 CH7 video in 8 GND 9 GND 10 GND Table 2 11 Channel Extension Video Input CN2 PIN Function PIN Function 1 GND 2 CH8 video in 3 CH9 video in 4 GND 5 GND 6 CH10 video in 7 CH11 video in 8 GND 9 GND 10 GND Table 2 12 Channel Extension Video Input CN3 10 9 2 1 10 9 2 1 ...

Page 29: ... 5 GND 6 CH14 video in 7 CH15 video in 8 GND 9 GND 10 GND Table 2 13 Channel Extension Video Input CN5 PIN Function PIN Function 1 IN0 External interrupt 2 GND 3 OUT0 4 Software Trigger 0 5 IN1 External interrupt 6 Software Trigger 1 7 OUT1 8 5V 9 GND 10 Table 2 14 GPIO CN8 10 9 2 1 10 9 2 1 ...

Page 30: ... PIN Function 1 IN2 External interrupt 2 GND 3 OUT0 4 Software Trigger 2 5 IN3 External interrupt 6 Software Trigger 3 7 OUT1 8 5V 9 GND 10 Table 2 15 GPIO CN9 PIN Function 1 System reset 2 GND Table 2 16 Watchdog Timer 10 9 2 1 1 2 JP ...

Page 31: ...d Optional Figure 2 5 RTV E4 Appearance RTV E4 Connectors Pin Definitions PIN Function PIN Function 1 GND 2 CH4 video in 3 CH5 video in 4 GND 5 GND 6 CH6 video in 7 CH7 video in 8 GND 9 GND 10 GND Table 2 17 Channel Extension Video Input CN11 10 9 2 1 ...

Page 32: ...pearance RTV I4 Connectors Pin Definitions Relay output signal select Relay output types Normal open or Normal closed Signal names RY1 RY2 RY3 RY4 Jumper addresses J5 J6 J7 J8 Type select Normal open 2 3 Normal close 1 2 Normal Open Normal Closed Table 2 18 Relay Jumper Settings 1 3 1 3 ...

Page 33: ...V DC 1A 30V or 0 3A 100V STRG output signal select STRG output signal types Active high or Active low Signal names STRG_OUT1 STRG_OUT2 STRG_OUT3 STRG_OUT4 Jumper addresses J1 J2 J3 J4 Trigger output voltage 0V to 5V Type select Active high 2 3 Active low 1 2 Active High Active Low Table 2 19 STRG Jumper Settings 1 3 1 3 ...

Page 34: ...24 Hardware Reference Figure 2 8 STRG Address Jumpers ...

Page 35: ...STRG Output 5 GPIO Input 2 6 PORT2 STRG Output 7 GPIO Output 2 8 VCC 9 GND 10 Table 2 20 RTV I4 GPIO CN1 RTV 24 GPIO CN8 PIN Function PIN Function 1 GPIO Input 3 2 GND 3 GPIO Output 3 4 PORT3 STRG Output 5 GPIO Input 4 6 PORT4 STRG Output 7 GPIO Output 4 8 VCC 9 GND 10 Table 2 21 RTV I4 GPIO CN2 RTV 24 GPIO CN9 10 9 2 1 10 9 2 1 ...

Page 36: ...Y3_COM 2 DI1_COM 15 RY4 3 DI2 16 RY4_COM 4 DI2_COM 17 STRG_OUT1 5 DI3 18 STRG_OUT2 6 DI3_COM 19 STRG_OUT3 7 DI4 20 STRG_OUT4 8 DI4_COM 21 STRG_GND 9 RY1 22 STRG_GNG 10 RY1_COM 23 NC 11 RY2 24 NC 12 RY2_COM 25 NC 13 RY3 26 Table 2 22 D sub 25 pin Connector ...

Page 37: ... Channel status report LED Coaxial cable recommended Channel Extension Expandable to up to 8 channels Channel extension interface 10 pin ribbon cable to on board 10 pin header connector for channel extension each header adds 4 video inputs channels User EEPROM Includes 1kbit usable EEPROM Form Factor 32 64bit 33 66MHz 3U Compact PCI board Figure 2 9 cRTV 24 Appearance ...

Page 38: ...dity 5 to 90 RHNC Storage Environment Temperature 0 to 70 C Humidity 0 to 95 RHNC Power Requirements 5V max 1 5A 3 3 V max 0 65A cRTV 24 Standard Accessories User Manual All in One CD Connector Definition CH0 Channel 0 BNC CH1 Channel 1 BNC CH2 Channel 2 BNC CH3 Channel 3 BNC Table 2 23 cRTV Video Inputs ...

Page 39: ...Hardware Reference 29 PIN Function PIN Function 1 GND 2 CH4 video in 3 CH5 video in 4 GND 5 GND 6 CH6 video in 7 CH7 video in 8 GND 9 GND 10 GND Table 2 24 Channel Extension Video Input CN8 10 9 2 1 ...

Page 40: ...s on board The I O lines are internally pulled up and have the follow ing characteristics Channel Extension Expandable to up to 8 channels Channel extend interface 10 pin ribbon cable to on board 10 pin header connector for channel extension each header adds 4 video inputs channels User EEPROM Includes 1kbit usable EEPROM Form Factor 32 64bit 33 66MHz 6U Compact PCI board Voltage MIN MAX Input hig...

Page 41: ... Reference 31 Figure 2 10 cRTV 44 Appearance Dimensions W x L 160 mm x 233 35 mm Operating Environment Temperature 0 to 55 C Humidity 5 to 90 RHNC Storage Environment Temperature 0 to 70 C Humidity 0 to 95 RHNC ...

Page 42: ...Power Requirements 5V max 1 5A 3 3 V max 0 65A cRTV 44 Standard Accessories User Manual All in One CD Connector Definition CH0 Channel 0 BNC CH1 Channel 1 BNC CH2 Channel 2 BNC CH3 Channel 3 BNC Table 2 26 cRTV Video Inputs ...

Page 43: ...ins IN3 and OUT3 are for channel 3 PIN Function PIN Function 1 GND 2 CH4 video in 3 CH5 video in 4 GND 5 GND 6 CH6 video in 7 CH7 video in 8 GND 9 GND 10 GND Table 2 27 Channel Extension Video Input CN8 PIN Function PIN Function 1 IN0 External interrupt 6 GND 2 OUT0 7 GND 3 IN1 External interrupt 8 GND 4 OUT1 9 5V 5 GND Table 2 28 GPIO 0 Pinout 10 9 2 1 ...

Page 44: ...34 Hardware Reference PIN Function PIN Function 1 IN2 External interrupt 6 GND 2 OUT2 7 GND 3 IN3 External interrupt 8 GND 4 OUT3 9 5V 5 GND Table 2 29 GPIO 1 Pinout ...

Page 45: ...es are TTL compatible with 1 input and 1 output GPIO interface One DB 9 male connector The I O lines are internally pulled up and have the follow ing characteristics User EEPROM Includes 1kbit available EEPROM Form Factor 32bit 33MHz PMC socket board Voltage MIN MAX Input high voltage 20µA 2 0V 5 25V Input low voltage 0 2µA 0 0V 0 80V Output high voltage 1 0mA 5 0V Output low voltage 100 0mA 0 5V ...

Page 46: ...ce Dimensions W x L 74 mm x 149 mm Operating Environment Temperature 0 to 55 C Humidity 5 to 90 RHNC Storage Environment Temperature 0 to 70 C Humidity 0 to 95 RHNC Power Requirements 5V max 0 35A PMC RTV21 Standard Accessories User Manual All in One CD ...

Page 47: ...nce 37 PMC RTV21 Connectors Pin Definition Figure 2 12 PMC RTV21 Video Input GPIO PIN Function PIN Function 1 GND 6 CH0 Video In 2 CH1 Video In 7 GND 3 GND 8 CH2 Video In 4 CH3 Video In 9 GND 5 Table 2 31 Video Input ...

Page 48: ...38 Hardware Reference PIN Function PIN Function 1 IN0 External interrupt 6 GND 2 OUT0 7 GND 3 8 GND 4 9 5V 5 GND Table 2 32 GPIO Pinout ...

Page 49: ...ting Environment Temperature 0 to 55 C Humidity 5 to 90 RHNC Storage Environment Temperature 0 to 70 C Humidity 0 to 95 RHNC Power Requirements 5V max 1 5A 3 3 V max 0 5A Video Input Four composite video color digitizers Video input interface DB 9 female connectors Coaxial cable recommended ...

Page 50: ...Reference General Purpose I O Lines The I O lines are TTL compatible with 1 input and 1 output GPIO interface One DB 15 male connector The I O lines are internally pulled up and have the fol low ing characteristics ...

Page 51: ...ories User Manual All in One CD PMC RTV24 Connectors Pin Definition Figure 2 14 PMC RTV24 Video Input GPIO Voltage MIN PIN Input high voltage 20 uA 2 0V 5 25V Table 2 33 GPIO Characteristics Voltage MIN PIN Input low voltage 0 2 uA 0 0V 0 80V Input high voltage 1 0 mA 5 0V Output low voltage 100 0 mA 0 5V Table 2 34 GPIO Characteristics 1 5 6 9 11 15 1 5 GPIO VIDEO ...

Page 52: ... CH3 Video In 9 GND 5 Table 2 35 Video Input PIN Function PIN Function PIN Function 1 IN0 External interrupt 6 5V output Max 1A 11 OUT0 2 IN1 External interrupt 7 GND 12 OUT1 3 IN2 External interrupt 8 GND 13 OUT2 4 IN3 External interrupt 9 GND 14 OUT3 5 GND 10 GND 15 GND Table 2 36 GPIO Pin out 1 5 6 9 11 15 1 5 ...

Page 53: ... remove a PCI board from the computer to make room for the RTV 24 board and take note of the chosen slot number 3 Remove the blank metal plate located at the back of the selected slot if any Keep the removed screw to fasten the RTV 24 board after installation 4 Carefully position the RTV 24 in the selected PCI slot as illustrated below If using a tower computer orient the board to suit the board s...

Page 54: ...s Use the following steps to install the cRTV series board onto the Compact PCI bus 1 Remove the computer cover using the instructions from the computer manual 2 Check that there is an empty cPCI 32 bit 64 bit slot to accommodate the board If is not an empty slot remove a cPCI board to make room for the cRTV 24 3U cRTV 44 6U board and take note of the chosen slot number 3 Remove the blank metal pl...

Page 55: ...Installation Guide 45 Figure 3 2 cRTV 24 3U cPCI ...

Page 56: ...ide of the chosen slot to the backplane and push the board firmly but carefully into the connector Lock the board in place by pushing the release lever outwards 6 6 Anchor the board by replacing the screw 7 7 Connect the video sources for image acquisition tests For details refer to the ViewCreator Utility ...

Page 57: ...ver using the instructions from the computer manual 2 Check that there is an empty PMC 32 bit socket to accommodate the board If there is not an empty slot remove a PMC board from your computer to make room 3 Carefully position PMC RTV21 onto the PMC socket 4 Once perfectly aligned with an empty PMC socket press the board firmly but carefully into the connector 5 Connect the video sources for imag...

Page 58: ...ation Guide 3 1 4 RTV E4 Extension Board Optional 1 For main board installation please refer to RTV series 2 Each RTV E4 will attach one signal cable for connect with RTV 24 as below Figure 3 4 RTV E4 Attachment ...

Page 59: ...on Guide 49 3 1 5 RTV I4 Extension Board Optional 1 For main board installation please refer to RTV series 2 Each RTV I4 will attach one signal cable for connect with RTV 24 as below Figure 3 5 RTV I4 Attachment ...

Page 60: ...50 Installation Guide 3 2 Driver Installation 3 2 1 WDM Driver Installation 1 Run setup 2 Click Next until the driver is completely installed ...

Page 61: ...Installation Guide 51 ...

Page 62: ...52 Installation Guide ...

Page 63: ...Installation Guide 53 3 Click yes and restart system 4 Open the Device Manager and check for the following 8 items ADLINK Angelo Audio Device 4 instances ADLINK Angelo Video Device 4 instances ...

Page 64: ...54 Installation Guide The Device Manager should be as follows ...

Page 65: ... User Account Control UAC needs to be turned off before using the device To turn off the UAC go to Start Settings Control Panel User Ac counts Turn User Account Control on or off Uncheck the UAC and restart the computer then the device can work nor mally ...

Page 66: ...56 Installation Guide 3 2 2 DirectShow Driver Installation 1 Run setup 2 Click Next until the driver is completely installed ...

Page 67: ...Installation Guide 57 ...

Page 68: ...58 Installation Guide 3 When the following window appears please click Con tinue Anyway ...

Page 69: ...Installation Guide 59 4 Open the Device Manager and check for the following 8 items ADLINK Bt878 DirectX Audio Capture 4 instances ADLINK Bt878 DirectX Video Capture 4 instances ...

Page 70: ...60 Installation Guide The Device Manager should be as follows ...

Page 71: ...Installation Guide 61 3 2 3 RTV LVIEW Installation 1 Double click the setup exe file to start RTV LVIEW installation 2 Continuously click the Next button to install RTV LVIEW ...

Page 72: ...62 Installation Guide 3 Click the Finish button to finish the installation ...

Page 73: ...ms Select RTV LVIEW and click the Change Remove button to uninstall it After un installation all files in the directory of RTV LVIEW will be removed except the ADLINK_Vision palette If you do not want to use it any more you can remove the Angelo llb in the user lib folder and the menus ADLINK_Vision folder ...

Page 74: ...er directory which please sees README under the root directory of the RTV packet cd xxxxx 4 Make and install the driver make clean make make install 5 Edit auto load configuration file vi etc modprobe conf 6 Add the following lines to the file i2c alias char major 89 i2c dev options i2c corei2c_debug 1 options i2c algo bit bit_test 1 bttv alias char major 81 bttv options bttv card 134 134 134 134 ...

Page 75: ...I2C m CONFIG_I2C_ALGOBIT m CONFIG_VIDEO_DEV m If these config options are not set as module you need recom pile kernel Run a test program 1 Open a terminal console and enter the following com mands 2 Change to the sample directory which please sees README under the root directory of the RTV packet cd xxxxx cd libfg x x x make clean make camview 3 Select the video format and preview channel You wil...

Page 76: ...66 Installation Guide ...

Page 77: ...es a simple yet powerful means to setup configure test and debug the vision system Note ViewCreatorPro is only available for Windows XP Vista with a recommended screen resolution higher than 800x600 4 1 Overview ViewCreatorPro offers the following features 32 bit 64 bit operation under Windows XP Vista WDM or DirectShow driver Angelo series cards access and configuration Video picture adjustments ...

Page 78: ...68 ViewCreatorPro Utility 4 2 Component Description Start the utility and the view should like below ...

Page 79: ... operations will apply to this device Inactive Device Click the port after this icon to activate this device Current active port All operations will apply to this port Inactive port Click the port after this icon to activate this port Current active channel All operations will apply to this channel Inactive channel Click the port after this icon to activate this channel Close this panel ...

Page 80: ... Default Button resetting all values to default value Close this panel 4 3 3 Toolbar Continue Grab Start to grab images and display the images on display panel Click it again to stop the grab This is a toggle button Stop Grab Stop grabbing Snap Shot Capture an image and display the image on display panel Hind Image Hide or unhide displaying image This is a toggle button Fit Size Fit the images whi...

Page 81: ...es which are selected will have a blue frame Focus Value Open a chart to see pixel values of the selected horizontal line of the image which is selected first The display image shows a red horizontal line on it Click mouse on the display image to move the selected line If it is grabbing image the background color of focus value window is gray The chart will update immediately by acquired image and...

Page 82: ...und color of focus value win dow is black The x axis size is the width of the whole image The window is shown below If the image is chromatic and is RGB type there are three curves represented red green and blue individual in the chart The win dow is shown below ...

Page 83: ...indow to zoom in the green rectangle region Differential Open a window to show the slop of the line for the green rectangle region Drag the vertical green line to resize the green rectangle Show Hide Red Values Show or hide the red value of the pixels Show Hide Green Values Show or hide the green value of the pixels Show Hide Blue Values Show or hide the blue value of the pixels ...

Page 84: ...value of the pixels Focus Cross See pixel values of the selected point of the image on toolbar The display image shows a blue cross line on it Click mouse on the display image to move the selected point 4 3 4 Status Bar From left to right the panel items are status host cursor position pixel value frame rate total captured frames and magnification horizontal ratio vertical ratio ...

Page 85: ...e frame around the image It means the image is selected If user wants select more images please keep pressing Ctrl and click the other images Like the picture below the up left channel and down right channel are selected Then user can adjust these images size by Fit Size Original Size Zoom In and Zoom out button ...

Page 86: ...will appear a green rectangle region which will be zoomed in Keep pressing Shift during dragging the image will be zoomed in at the same proportion of width and height Shown below Press right mouse button the cursor will become a move2D icon Then user can drag the image Shown below ...

Page 87: ... select channel node Video Format menu NTSC Set the channels showed on display panel to NTSC format PAL Set the channels showed on display panel to PAL format Color Format menu Gray Set the channels showed on display panel to gray format RGB32 Set the channels showed on display panel to rgb32 format RGB24 Set the channels showed on display panel to rgb24 format RGB16 Set the channels showed on dis...

Page 88: ...s showed on display panel to cif image size Qcif Image Set buffer sizes the channels showed on display panel to qcif image size Tool menu GPIO Click Tool in the menu bar and select GPIO item to bring up the GPIO dialog box Select the card and port to access and select the digital output value Click the write or read button to write read to from the digital I O ports ...

Page 89: ...n to read the value from the EEPROM Valid offset values are between 0 127 Valid output values are 0 255 The value in the EEPROM will not be erased when the system is powered off Software Trigger Click Tool in the menu bar and select Software Trigger to bring up the Trigger dialog box Select the card to access and set the interval of the trigger pulse output Check the ports you want to trigger simu...

Page 90: ...and select About ViewCreator Pro to bring up the About ViewCreatorPro box This window will show ViewCreatorPro version AboutDevice Click Help in the menu bar and select About Device to bring up the About Device box This window will show the driver version and dll version ...

Page 91: ...ary 81 5 Function Library This chapter describes the API for Angelo RTV series cards Users can use these functions to develop application programs under Visual C Visual Basic C Builder C Visual Basic Net and Delphi ...

Page 92: ...pture_Start PortNo CaptureNo AngeloRTV_Select_Channel PortNo Multiplex AngeloRTV_Capture_Stop PortNo AngeloRTV_Capture_Config PortNo Start_Field AngeloRTV_Sync_Grab PortNo Start_Address Width Height Size_Byte GPIO EPROM 5 6 AngeloRTV_Set_GPIO_Sts PortNo Status AngeloRTV_Get_GPIO_Sts PortNo Status AngeloRTV_Set_GPIO_Int_Logic PortNo Logic AngeloRTV_Write_EEPROM PortNo Offset Value AngeloRTV_Read_EE...

Page 93: ...table shows the data types and their range Type Name Description Range U8 8 bit ASCII character 0 to 255 I16 16 bit integer 32768 to 32767 U16 16 bit unsigned integer 0 to 65535 I32 32 bit long integer 2147483648 to 2147483647 U32 32 bit unsigned long integer 0 to 4294967295 F32 32 bit float 3 402823E38 to 3 402823E38 F64 64 bit double float 1 797683134862315E308 to 1 797683134862315E309 Boolean B...

Page 94: ...cription AngeloRTV_Initial This function initializes the ports of the Angelo Series card Each application program must call this function before any other func tions can be used If the initialization is executed successfully it returns a value of 0 Note There are four ports on the RTV 24 cRTV 24 and cRTV 44 series cards and one port on the PMC RTV21 AngeloRTV_Close Releases all resources from the ...

Page 95: ...on As Long ByRef DLLVersion As Long ByRef Reserved As Long As Integer Delphi Windows AngeloRTV_Initial PortNo Smallint Smallint AngeloRTV_ Close PortNo Smallint Smallint AngeloRTV_Software_Reset PortNo Smallint Smallint AngeloRTV_Read_Serial CardNo Smallnt Var HighByte Longint Var LowBytet Longint Smallint AngeloRTV_Get_Version var DriverVersion Longint var DLLVersion Longint var Reserved Longint ...

Page 96: ...ccessible make sure the Angelo series card is plugged into the system check the device manager to make sure the device is loaded and the PortNo parameter is valid 12 ERROR_CPLD_Check_Failed Power off the com puter and power on again Example VC BCB AngeloRTV_Initial I16 Result for int PortNo 0 PortNo 4 PortNo Result AngeloRTV_Initial PortNo AngeloRTV_Cose I16 Result for int PortNo 0 PortNo 4 PortNo...

Page 97: ...or PortNo 0 To 3 Result AngeloRTV_Initial ByVal PortNo AngeloRTV_Cose Dim Result As Integer Dim PortNo As Integer For PortNo 0 To 3 Result AngeloRTV_Close ByVal PortNo AngeloRTV_Read_Serial Dim Result As Integer Dim CardNo As Integer Dim HighByte As Long LowByte As Long CardNo 0 HighByte 0 LowByte 0 Result AngeloRTV_Read_Serial CardNo HighByte LowByte AngeloRTV_Software_Reset Dim Result As Integer...

Page 98: ...sult AngeloRTV_Initial PortNo End AngeloRTV_Cose var PortNo Result SmallInt for i 0 to 3 do begin Result AngeloRTV_Close PortNo End AngeloRTV_Software_Reset var PortNo Result SmallInt for i 0 to 3 do begin Result AngeloRTV_Software_Reset PortNo End AngeloRTV_Read_Serial var CardNo Result SmallInt HighByte LowByte SmallInt Result AngeloRTV_Read_Serial CardNo HighByte LowByte AngeloRTV_Get_Version v...

Page 99: ...n strDriverVersion IntToStr DriverVersion 2 strDriverVersion strDriverVersion IntToStr DriverVersion 3 strDriverVersion strDriverVersion IntToStr DriverVersion 4 strDLLVersion IntToStr DLLVersion 1 strDLLVersion strDLLVersion IntToStr DLLVersion 2 strDLLVersion strDLLVersion IntToStr DLLVersion 3 strDLLVersion strDLLVersion IntToStr DLLVersion 4 ...

Page 100: ...tNo X_Offset Y_Offset X_Active Y_Active X_Scale Y_Scale Advanced image processing AngeloRTV_Detect_Video_Format PortNo FormatValue Detect the video format and if there is signal input Description AngeloRTV_Set_Image_Config Adjusts the hue contrast Saturation and brightness of the port for the Angelo series card AngeloRTV_Get_Image_Config Retrieves the current hue contrast Saturation and brightness...

Page 101: ...cropping and scaling AngeloRTV_Detect_Video_Format Use the function to retrieve the video format And if the return value of the 2nd parameter is 0 that means there is no signal input Figure 5 1 Video Frame Syntax C C Windows CE NET I16 AngeloRTV_Set_Image_Config U16 PortNo U8 ConfigIndex U8 Value I16 AngeloRTV_Get_Image_Config U16 PortNo U8 ConfigIndex U8 Value I16 AngeloRTV_Set_ Color _Format U16...

Page 102: ...orFormat As Byte As Integer AngeloRTV_Get_ Color _Format ByVal PortNo As Integer ByRef ColorFormat As Byte As Integer AngeloRTV_Set_Video _Format ByVal PortNo As Integer ByVal VideoFormat As Byte As Integer AngeloRTV_Set_Video _Format ByVal PortNo As Integer ByRef VideoFormat As Byte As Integer AngeloRTV_Set_Image_Geometric ByVal PortNo As Integer ByVal X_Offset As Long ByVal Y_Offset As Long ByVa...

Page 103: ...mallint var FormatValue Byte Smallint Arguments PortNo Port number is the zero index of the Angelo series card For exam ple if there are two PCI RTV 24 Angelo cards card 0 card 1 in the system and each PCI RTV 24 has four ports the first port of card 0 is 0 and the first port of card 1 is 4 ConfigIndex 0 for BRIGHTNESS 1 for HUE 2 for SATURATION U 3 for SATURATION V 4 for CONTRAST LUMA 5 for luma ...

Page 104: ...y not be able to present clear image for it X_Scale This parameter is the scaling factor applied to the Angelo sampled line to obtain pixels according to the resolution X_Active This parameter value is the length of the active video line X_Offset This parameter value is the number of scaled pixels to skip before the start of the active video line Y_Scale This parameter is the scaling factor applie...

Page 105: ...PortNo 0 U8 ConfigIndex 0 U8 Value 128 Result AngeloRTV_Set_Image_Config PortNo ConfigIndex Value Result AngeloRTV_Get_Image_Config PortNo ConfigIndex Value AngeloRTV_Set_Color_Format AngeloRTV_Get_Color_Format AngeloRTV_Set_Video_Format AngeloRTV_Get_Video_Format I16 Result I16 PortNo 0 U8 VideoFormat 0 U8 ColorFormat 3 Result AngeloRTV_Set_Color_Format PortNo ColorFormat Result AngeloRTV_Get_Col...

Page 106: ...s Integer Dim ConfigIndex As Byte Dim Value As Byte PortNo 0 ConfigIndex 0 Value 128 Result AngeloRTV_Set_Image_Config ByVal PortNo ByVal ConfigIndex ByVal Value Result AngeloRTV_Get_Image_Config ByVal PortNo ByVal ConfigIndex ByRef Value AngeloRTV_Set_Color_Format AngeloRTV_Get_Color_Format AngeloRTV_Set_Video_Format AngeloRTV_Get_Video_Format Dim Result As Integer Dim PortNo As Integer Dim Color...

Page 107: ...0 X_Active 600 Y_Active 400 X_Offset 40 Y_Offset 80 X_Scale 1 0 Y_Scale 1 0 Result AngeloRTV_Set_Image_Geometric PortNo X_Offset Y_Offset X_Active Y_Active X_Scale Y_Scale AngeloRTV_Detect_Video_Format Dim Result As Integer Dim PortNo As Integer Dim FormatValue As Byte PortNo 0 Result AngeloRTV_Detect_Video_Format ByVal PortNo ByRef FormatValue Delphi AngeloRTV_Set_Image_Config AngeloRTV_Get_Image...

Page 108: ... 0 ColorFormat 3 Result AngeloRTV_Set_Color_Format PortNo ColorForm at Result AngeloRTV_Get_Color_Format PortNo ColorForm at Result AngeloRTV_Set_Video_Format PortNo VideoForm at Result AngeloRTV_Get_Video_Format PortNo VideoFormat AngeloRTV_Set_Image_Geometric Var Result SmallInt PortNo SmallInt X_Active LongInt Y_Active LongInt X_Offset LongInt Y_Offset LongInt X_Scale Double Y_Scale Double Port...

Page 109: ...loRTV_Set_Image_Geometric PortNo X_Offset Y_Offset X_Active Y_Active X_Scale Y_Scale AngeloRTV_Detect_Video_Format var Result SmallInt PortNo SmallInt FormatValue Byte PortNo 0 Result AngeloRTV_Detect_Video_Format PortNo FormatValue ...

Page 110: ...e frame update rate is 30 frames sec If the CaptureNo is 0xFFFFFFFF the frame grabbing will not stop until the AngeloRTV_Capture_Stop function is called AngeloRTV_Capture_Stop Stop grabbing video frames AngeloRTV_Select_Channel Angelo series cards are capable of channel extension This func tion is used to multiplex video signals for the ports In most cases using this function should not be require...

Page 111: ...ger As Integer AngeloRTV_Capture_Stop ByVak PortNo As Integer As Integer AngeloRTV_Capture_Config ByVal PortNo As Integer ByVal Start_Field As Long As Integer AngeloRTV_Sync_Grab ByVal PortNo As Integer ByRef Start_Address As Long ByRef Width as Long ByRef Height As Long ByRef Size_byte As Long As Integer Delphi Windows AngeloRTV_Capture_Start PortNo Smallint CaptureNo LongInt Smallint AngeloRTV_S...

Page 112: ...nnel 0 0 for disable 1 for enable Bit 1 Channel 1 0 for disable 1 for enable Bit 2 Channel 2 0 for disable 1 for enable Bit 3 Channel 3 0 for disable 1 for enable For example Multiplex 1 only channel 0 is enable Multiplex 2 only channel 1 is enable Multiplex 15 four channels are enable Start_Filed Indicates the first field of image 0 first field is Odd so the image will be Odd field Even field 1 f...

Page 113: ...FFFFF U32 Start_Field 0 U32 StrAddr U32 Width Height Size_Byte Result AngeloRTV_Capture_Config PortNo Start_Field Result AngeloRTV_Capture_Start PortNo CaptureNo Result AngeloRTV_Sync_Grab PortNo StrAddr Width Height Size_Byte Result AngeloRTV_Capture_Stop PortNo Visual Basic AngeloRTV_Capture_Config AngeloRTV_Capture_Start AngeloRTV_Sync_Grab AngeloRTV_Capture_Stop Dim Result As Integer Dim PortN...

Page 114: ... AngeloRTV_Capture_Config AngeloRTV_Capture_Start AngeloRTV_Sync_Grab AngeloRTV_Capture_Stop Var Result SmallInt PortNo SmallInt CaptureNo LontInt Start_Field LontInt StrAddr Pointer Width Height Size_Byte LongInt begin PortNo 0 Start_Field 0 CaptureNo INFINITE Result AngeloRTV_Capture_Config PortNo Start_Field Result AngeloRTV_Capture_Start PortNo CaptureNo Result AngeloRTV_Sync_Grab PortNo StrAd...

Page 115: ...RTV_Set_GPIO_Sts There is one digital output channel in each port of the Angelo series card use this function to set the digital output status AngeloRTV_Get_GPIO_Sts There is one digital input channel in each port of Angelo series card use this function to get the digital input status AngeloRTV_Set_GPIO_Int_Logic This function used to configure the Digital Input Interrupt condition AngeloRTV_Write...

Page 116: ...IO_Int_Logic ByVal PortNo As Integer ByVal Logic As Integer As Integer AngeloRTV_Write_EEPROM ByVal PortNo As Integer ByVal Offset As Byte ByVal Value As Byte As Integer AngeloRTV_Read_EEPROM ByVal PortNo As Integer ByVal Offset As Byte ByRef Value As Byte As Integer AngeloRTV_Set_LED_Sts ByVal PortNo As Integer ByVal LEDStatus As Byte As Integer Delphi Windows AngeloRTV_Set_GPIO_Sts PortNo Smalli...

Page 117: ...rupt condition 0 Active Low 1 Active High Offset The offset address of the EEPROM This parameter is valid between 0 and 127 Value The value in Byte data type this parameter is valid between 0 and 255 LEDStatus Use the parameter to set the LED status LEDStatus 1 High LEDStatus 0 Low Return Code 0 ERROR_NoError 7 ERROR_Not_Initialized Make sure the port has been initialized by AngeloRTV_Initial 9 ER...

Page 118: ...OM I16 Result I16 PortNo 0 U8 Offset 0 U8 Value 128 Result AngeloRTV_Write_EEPROM PortNo Offset Value Result AngeloRTV_Read_EEPROM PortNo Offset Value AngeloRTV_Set_LED_Sts I16 Result U16 PortNo U8 LEDStatus PortNo 0 LEDStatus 1 Result AngeloRTV_Set_LED_Sts PortNo LEDStatus Visual Basic AngeloRTV_Set_GPIO_Sts AngeloRTV_Get_GPIO_Sts Dim Result As Integer Dim PortNo As Integer Dim Status As Byte Por...

Page 119: ...e 128 Result AngeloRTV_Write_EEPROM ByVal PortNo ByVal Offset ByVal Value Result AngeloRTV_Read_EEPROM ByVal PortNo ByVal Offset ByRef Value AngeloRTV_Set_LED_Sts Dim Result As Integer Dim PortNo As Integer Dim LEDStatus As Byte PortNo 0 LEDStatus 1 Result AngeloRTV_Set_LED_Sts ByVal PortNo ByVal LEDStatus Delphi AngeloRTV_Set_GPIO_Sts AngeloRTV_Get_GPIO_Sts Var Result SmallInt PortNo SmallInt Sta...

Page 120: ..._EEPROM AngeloRTV_Read_EEPROM Var Result SmallInt PortNo SmallInt Offset Byte Value Byte PortNo 0 Offset 0 Value 128 Result AngeloRTV_Write_EEPROM PortNo Offset Value Result AngeloRTV_Read_EEPROM PortNo Offset Value AngeloRTV_Set_LED_Sts var Result Smallint PortNo Smallint LEDStatus Byte PortNo 0 LEDStatus 1 Result AngeloRTV_Set_LED_Sts PortNo LEDStatus ...

Page 121: ...it 2 Channel 1 Image ready Bit 3 Channel 2 Image ready Bit 4 Channel 3 Image ready Note There are four channels in each port the default channel is channel 0 AngeloRTV_Set_Int_Event Links interrupt events Users only have to declare the hEvent variable and call this function to DLL the DLL will link the event and interrupt automatically AngeloRTV_Set_Callback Links the callback function when an int...

Page 122: ... hEvent Integer Smallint AngeloRTV_Get_Int_Status PortNo Smallint var IntStatus Longint Smallint AngeloRTV_Set_Callback PortNo Smallint lpCallBac kProc CallbackFunc Smallint Argument PortNo Port number is the zero index of the Angelo series card For exam ple if there are two PCI RTV 24 Angelo cards card 0 card 1 in the system and each PCI RTV 24 has four ports the first port of card 0 is 0 and the...

Page 123: ... NULL void pThread NULL U32 threadID U16 PortNo 0 DWORD nObj U32 Size_Byte U32 Status 0 I16 ISR_ON 0 DWORD WINAPI IntThreadProc LPVOID lpParam while ISR_ON nObj WaitForSingleObject hEvent INFINITE AngeloRTV_Get_Int_Status PortNo Status if Status 0x01 1 GPIO if Status 1 0x01 1 Channel 0 of the nPort else if Status 2 0x01 1 Channel 1 of the nPort else if Status 3 0x01 1 Channel 2 of the nPort else i...

Page 124: ...atus AngeloRTV_Get_Int_Status PortNo Status if Status 0x01 1 GPIO if Status 1 0x01 1 Channel 0 of the nPort else if Status 2 0x01 1 Channel 1 of the nPort else if Status 3 0x01 1 Channel 2 of the nPort else if Status 4 0x01 1 Channel 3 of the nPort AngeloRTV_Set_Callback PortNo MediaStreamProc Visual Basic Use Callback Function Dim Result As Integer Dim PortNo As Integer Public Sub lpcallback ByVa...

Page 125: ...rtNo SmallInt PortNo 0 function ThreadFunc Parameter Pointer Integer var Str_Add Pointer Size_Byte Longint intstatus LongInt begin while ISR_ON 1 do begin WaitForSingleObject Event_Angelo INFINITE ResetEvent Event_Angelo AngeloRTV_Get_Int_Status PortNo intstatus if intstatus 2 then image ready for channel 0 of port begin end end end AngeloRTV_Set_Int_Event PortNo Event_Angelo ISR_ON 1 Mythread Beg...

Page 126: ... 0 procedure MyCallback VideoBufferAddress LongInt PortNo SmallInt stdcall var Str_Add Pointer Result Smallint Size_Byte LongInt intstatus LongInt begin AngeloRTV_Get_Int_Status PortNo intstatus if intstatus 2 then begin end end AngeloRTV_Set_Callback Cur_Port MyCallback ...

Page 127: ...6 seconds Syntax C C Windows CE NET I16 AngeloRTV_Set_WDT U16 CardNo U16 Enable U16 Interval Visual Basic Windows CE NET AngeloRTV_Set_WDT ByVal PortNo As Integer ByVal Enable As Integer ByVal Interval As Integer As Integer Delphi Windows AngeloRTV_Set_WDT CardNo Smallint enable Smallin t interval Smallint Smallint Argument CardNo Card number is the zero index in Angelo series card For example if ...

Page 128: ...dNo 0 U16 Enable 1 U16 Interval 1 Result AngeloRTV_Set_WDT CardNo Enable Interval Visual Basic AngeloRTV_Set_WDT Dim Result As Integer Dim CardNo As Integer Dim Enable As Integer Dim Interval As Integer CardNo 0 Enable 1 Interval 1 Result AngeloRTV_Set_WDT CardNo Enable Interval Delphi AngeloRTV_Set_WDT Var Result SmallInt CardNo SmallInt Enable SmallInt Interval SmallInt CardNo 0 Enable 1 Interva...

Page 129: ...tax C C Windows CE NET I16 AngeloRTV_Trigger_Config U16 PortNo U16 Interval I16 AngeloRTV_Trigger_Start U16 CardNo U16 Multiplex Visual Basic Windows CE NET AngeloRTV_Trigger_Config ByVal PortNo As Integer ByVal Interval As Integer As Integer AngeloRTV_Trigger_Start ByVal CardNo As Integer ByVal Multiplex As Integer As Integer Delphi Windows AngeloRTV_Trigger_Config PortNo Smallint Interval Smalli...

Page 130: ...each card 0 for disable 1 for enable Bit 1 Port 1 on each card 0 for disable 1 for enable Bit 2 Port 2 on each card 0 for disable 1 for enable Bit 3 Port 3 on each card 0 for disable 1 for enable For example Multiplex 1 only port 0 in each Angelo series card gener ates a trigger output Multiplex 2 only port 1 in each Angelo series card gener ates a trigger output Multiplex 15 four ports in each An...

Page 131: ... Dim PortNo As Integer Dim Multiplex As Integer Dim Interval As Integer CardNo 0 PortNo 0 Multiplex 1 Interval 32 Result AngeloRTV_Trigger_Config PortNo Interval Result AngeloRTV_Trigger_Start CardNo Multiplex Delphi AngeloRTV_Trigger_Config AngeloRTV_Trigger_Start Var Result SmallInt CardNo SmallInt PortNo SmallInt Multiplex SmallInt Interval SmallInt CardNo 0 PortNo 0 Multiplex 1 Interval 32 Res...

Page 132: ... cated Before using this function remember to allocate enough memory address space or array elements AngeloRTV_Save_File Saves the current video frame into an image file TIF BMP or JPEG nQuality is only used JPEGs AngeloRTV_Get_frame Retrieves the memory start address from the frame data width height and size in bytes of the image For example a FULL NTSC RGB24 video frame will occupy 900K Byte 640...

Page 133: ...Width as Long ByRef Height As Long ByRef Size_byte As Long As Integer AngeloRTV_Save_File ByVal PortNo As Integer ByVal FileName As String ByVal FileFormat As Byte ByVal nQuality As Long As Integer Delphi Windows AngeloRTV_Copy_Frame PortNo Smallint var Dest_Address Byte Size_byte Longint Smalli nt AngeloRTV_Get_Frame PortNo Smallint var Start_Address Pointer var Width Longint var Height Longint v...

Page 134: ...ess Memory start address of the video frame Width Image width Height Image height Size_Byte Memory size in bytes FileName File name to save to Remember to add the file extension name FileFormat File format to save to 0 TIF 1 BMP 2 JPEG nQuality This parameter in used only for the JPEG file format Return Code 0 ERROR_NoError 7 ERROR_Not_Initialized Make sure the port has been initialized by AngeloR...

Page 135: ...e_File PortNo Image jpg File_Format nQuality Visual Basic AngeloRTV_Copy_Frame Dim Result As Integer Dim PortNo As Integer Dim Size_Byte As Long Dest_Address As Byte PortNo 0 Size_Byte 640 480 3 ReDim Dest_Address 0 To Size_Byte 1 As Byte Result AngeloRTV_Copy_Frame PortNo Dest_Address 0 Size_Byte AngeloRTV_Get_Frame Dim Result As Integer Dim PortNo As Integer Dim Size_Byte As Long Dim StrAddr As ...

Page 136: ...ngth Dest_Add Size_Byte Result AngeloRTV_Copy_Frame PortNo Dest_Add 0 Size_Byte AngeloRTV_Get_Frame Var Result SmallInt PortNo SmallInt Size_Byte LongIng Width LongIng Height LongIng Str_Add Pointer PortNo 0 Result AngeloRTV_Get_Frame PortNo Str_Add Width Height Size_Byte AngeloRTV_Save_File Var Result SmallInt PortNo SmallInt File_Format Byte NQuality LongInt PortNo 0 File_Format 2 Nquality 25 Re...

Page 137: ...i Video Format 0 Full NTSC 640 480 1 Full PAL 768 576 2 CIF NTSC 320 240 3 CIF PAL 384 288 4 QCIF NTSC 160 120 5 QCIF PAL 192 144 Color Format 0 RGB16 1 GRAY 2 RGB15 3 RGB24 4 RGB32 5 RGB8 6 RAW8X 7 YUY2 4 2 2 8 BtYUV 4 1 1 AngeloRTV_Snap vi Obtain an image and output the image data for picture control AngeloRTV_Close vi Release resources of all ports AngeloRTV_Software_Reset vi Reset the port to ...

Page 138: ...nd the interrupt automatically AngeloRTV_Wait_Int vi Wait for interrupt events You can get a complete image data from the image buffer after this VI returns correctly AngeloRTV_Set_Video_Format vi Set the Video format for the port of RTV card Valid color formats are NTSC EIA PAL CCIR AngeloRTV_Get_Video_Format vi Retrieve the video format of the port AngeloRTV_Set_Color_Format vi Set the color for...

Page 139: ...eo the notch filter should not be used 6 for Gamma Correction Removal AngeloRTV_Get_Image_Config vi Retrieve current hue contrast saturation and brightness of the port AngeloRTV_Set_Image_Geometric vi This VI is used for image cropping and scaling X_Scale This parameter is the scaling factor applied to the RTV sam pled line to obtain pixels according to the resolution Range Default Value BRIGHTNES...

Page 140: ...ter is the height in lines of the active video image Y_Offset This parameter is the number of lines to skip before the first line of the active video image AngeloRTV_Select_Channel vi RTV card is capable of channel extension This VI is used to multi plex video signals for ports In most cases this VI is not required because the default setting is one port dedicated to one channel Note Do not call t...

Page 141: ...deo images If the CaptureNumber is 0xFFFFFFFF the frame grabbing will not stop until the AngeloRTV_Capture_Stop vi is called AngeloRTV_Capture_Stop vi Stop grabbing video images AngeloRTV_Trigger_Start vi Generate a one shot pulse output for single or multiple ports Multiplex Indicate the trigger output ports on the RTV card Bit 0 Port 0 on each card 0 for disable 1 for enable Bit 1 Port 1 on each...

Page 142: ...om the frame data width height and size in bytes of the image AngeloRTV_Copy_Frame vi Copy frame data to memory or an array that the user allocates Before using this VI remember to allocate enough memory space or array elements AngeloRTV_Set_GPIO_Sts vi There is one digital output channel in each port of RTV card Use this VI to set digital output status 1 AngeloRTV_Get_GPIO_Sts vi There is one dig...

Page 143: ...rameter is valid between 0 and 127 Value Value in byte This parameter is valid between 0 and 255 AngeloRTV_Read_Serial vi This VI can read a 48 bit unique ID and store in 2 long integers HighByte HighByte stores the upper 16 bit of Serial No LowByte LowByte stores the lower 32 bit of Serial No AngeloRTV_Save_File vi Save the current video frame into an image file TIF BMP or JPEG Quality is used on...

Page 144: ...134 Function Library ...

Page 145: ... Bt878 Video Capture filter can be obtained through system device enu merator After holding an interface pointer to the capture filter object use method IGraphBuilder AddSourceFilter to add the source filter object to the filter graph Use IFilterGraph AddFilter to add other downstream filters to the filter graph After filters are added call IFilterGraph ConnectDirect or IGraph Builder Connect meth...

Page 146: ...Name WDM Streaming Capture Devices Filter Category AM_KSCATEGORY_CAPTURE Video Capture Pin Supported Media Types MEDIATYPE_Video Subtypes MEDIASUBTYPE_YUY2 MEDIASUBTYPE_YVU9 MEDIASUBTYPE_UYVY MEDIASUBTYPE_YV12 MEDIASUBTYPE_I420 MEDIASUBTYPE_Y41P MEDIASUBTYPE_RGB24 MEDIASUBTYPE_RBG32 MEDIASUBTYPE_RBG565 MEDIASUBTYPE_RBG555 Video Preview Pin Supported Media Types MEDIATYPE_Video Subtypes MEDIASUBTYP...

Page 147: ...s Click Insert Filter button to add the filters to a graph Then connect two filters pins by dragging mouse from one filter s output pin to another filter s input pin An arrow will be drawn if these two pins agree on the connection After inserting ADLink Bt878 Video Capture filter and ADLink Bt878 Crossbar filter right click on the rectangle and click Filter Properties The filter properties dialogu...

Page 148: ...138 Programming Guide Video Proc Amp ADLink Bt878 Crossbar filter Select video input before or during video previewing ...

Page 149: ...o So an application can have two ways to control video configurations using the prop erty pages and using the COM interfaces Use Property Pages There are two embedded property pages in the driver To show these property pages use Windows API OleCreateProperty Frame Documentation about Displaying a Filter s Property Page can be found on Microsoft MSDN homepage ...

Page 150: ...Info pFilter QueryFilterInfo FilterInfo FilterInfo pGraph Release CAUUID caGUID pSpecify GetPages caGUID pSpecify Release OleCreatePropertyFrame NULL Parent window 0 x Reserved 0 y Reserved FilterInfo achName Caption for the dialog box 1 Number of filters IUnknown m_pFilter Pointer to the filter caGUID cElems Number of property pages caGUID pElems Pointer to property page CLSIDs 0 Locale identifie...

Page 151: ...ethod to read board information select input channel and control digital inputs digital outputs Sample define INSTANCE_DATA_OF_PROPERTY_PTR x PKSPROPERTY x 1 define INSTANCE_DATA_OF_PROPERTY_SIZE x sizeof x sizeof KSPROPERTY void GPIOWrite IBaseFilter pFilter DWORD value Purpose Set the electronic level of the gpio pin Parameters pFilter Interface of BT878 filter value 1 for high level and 0 for l...

Page 152: ...SETGPDAT ABITS rc dwFromBit bit rc dwToBit bit rc dwValue value rc dwOffset 0 hr pKs Get PROPSETID_CUSTOMBT848 KSPROPERTY_CUSTOMBT848_GPIO INSTANCE_DATA_OF_PROPERTY_PTR rc INSTANCE_DATA_OF_PROPERTY_SIZE rc rc sizeof rc ret pKs Release DWORD GPIORead IBaseFilter pFilter Purpose Get the electronic level of the gpio pin Parameters pFilter Interface of BT878 filter IKsPropertySet pKs NULL DWORD TypeSu...

Page 153: ...848 KSPROPERTY_CUSTOMBT848_GPIO TypeSupport if TypeSupport KSPROPERTY_SUPPORT_GET ZeroMemory rc sizeof rc rc dwOperation BT848_CUSTPROP_GPIO_GETGPDATABITS rc dwFromBit bit rc dwToBit bit rc dwOffset 0 hr pKs Get PROPSETID_CUSTOMBT848 SPROPERTY_CUSTOMBT848_GPIO INSTANCE_DATA_OF_PROPERTY_PTR rc INSTANCE_DATA_OF_PROPERTY_SIZE rc rc sizeof rc ret ReturnValue rc dwValue pKs Release return ReturnValue ...

Page 154: ... EEPROMRead IBaseFilter pFilter BYTE offset Purpose Read the value stored in EEPROM Parameters pFilter Interface of BT878 filter offset the offset 0 127 based on starting address of EEPROM IKsPropertySet pKs NULL DWORD TypeSupport 0 KSPROPERTY_CUSTOMBT848_I2C_S I2C BYTE uAddress HRESULT hr ULONG ret 0 if pFilter NULL return 0 if hr pFilter QueryInterface IID_IKsPropertySet void pKs S_OK hr pKs Que...

Page 155: ...RTY_CUSTOMBT848_I2C INSTANCE_DATA_OF_PROPERTY_PTR I2C INSTANCE_DATA_OF_PROPERTY_SIZE I2C I2C sizeof I2C ret Read value then I2C dwOperation BT848_CUSTPROP_I2C_R3 I2C ucAddress uAddress I2C ucInBuf 0 offset I2C dwOutLen 0 I2C dwInLen 1 I2C bDontWaitACK TRUE hr pKs Get PROPSETID_CUSTOMBT848 KSPROPERTY_CUSTOMBT848_I2C INSTANCE_DATA_OF_PROPERTY_PTR I2C INSTANCE_DATA_OF_PROPERTY_SIZE I2C I2C sizeof I2C...

Page 156: ...L DWORD TypeSupport 0 KSPROPERTY_CUSTOMBT848_I2C_S I2C BYTE uAddress HRESULT hr ULONG ret 0 if pFilter NULL return if hr pFilter QueryInterface IID_IKsPropertySet void pKs S_OK hr pKs QuerySupported PROPSETID_CUSTOMBT848 KSPROPERTY_CUSTOMBT848_I2C TypeSupport if TypeSupport KSPROPERTY_SUPPORT_GET uAddress 0xa0 address for the EEPROM device Set frequency first ZeroMemory I2C sizeof I2C I2C bDontWai...

Page 157: ... I2C sizeof I2C ret Write value then I2C dwOperation BT848_CUSTPROP_I2C_WR I2C ucAddress uAddress I2C ucOutBuf 0 offset I2C ucOutBuf 1 value I2C dwOutLen 2 I2C dwInLen 0 I2C bDontWaitACK TRUE hr pKs Get PROPSETID_CUSTOMBT848 KSPROPERTY_CUSTOMBT848_I2C INSTANCE_DATA_OF_PROPERTY_PTR I2C INSTANCE_DATA_OF_PROPERTY_SIZE I2C I2C sizeof I2C ret pKs Release ...

Page 158: ...cations Bt848guid h The header file is required for all C applications which need access BT878 proprietary interfaces for instance EEPROM and GPIO Bt878 cs The class definition is required for all C applications Library File Description Strmiids lib Exports class identifiers CLSIDs and inter face identifiers IIDs All C applications require this library Quartz lib Exports the AMGetErrorText functio...

Page 159: ... DXSDK include DXSDK Samples C DirectShow BaseClasses 3 Add the paths to the additional library directory in the settings of your project DXSDK Lib DXSDK Samples C DirectShow BaseClasses Release Net Programming Users Microsoft DirectShow only provides C programming As for net users they need convert DirectShow COM objects to net class Fortunately the work had been done as a sourceforge project Dow...

Page 160: ... tions palettes to the ADLINK_Vision palette view first In Lab VIEW 7 0 select Tools Options to display the Options dialog box Select Controls Functions Palettes from the top pull down menu in the Options dialog box and select ADLINK_Vision from the Palette View pull down menu Click OK button Then ADLINK Vision icon is shown in the Func tions palette ...

Page 161: ...K Vision icon to display the ADLINK_Vision palette view Then click the AngeloRTV icon you can find RTV LVIEW VIs In LabVIEW 6 click the Options button on the Functions palette toolbar to display the Function Browser Options dialog box ...

Page 162: ...152 Programming Guide Select ADLINK_Vision from the Palette Set pull down menu and click OK button Then you can see the ADLINK_Vision Functions Palette as below ...

Page 163: ...ture a frame with RTV LVIEW VI For more complicated samples with RTV LVIEW you can reference those located in the C Program Files ADLINK RTV LVIEW Samples folder 1 Open a blank VI and switch to the block diagram Drag and drop AngeloRTV_Init vi AngeloRTV_Snap vi and AngeloRTV_Close vi on the block diagram ...

Page 164: ...ach input and connect these VIs In order to show the captured frame on the front panel we also drag and drop another VI provided by LabVIEW named Draw Flattened Pixmap vi 3 Push the upper left Run button and you can see a cap tured frame on the front panel ...

Page 165: ...ogramming Guide 155 Get Help of RTV LVIEW You can display the Context Help window by selecting Help Show Context Help LabVIEW will show the information of the RTV LVIEW VI when you move the cursor over it ...

Page 166: ...d description of all APIs Famil iar with it will great help you in writing your video capturing applica tion A simple sample In this chapter we provide a simple sample as how to program RTV cards Open device The first step is to open a RTV device with open The first parameter in it is device name which can be listed under directory dev with a prefix name video and a number appending to it There wi...

Page 167: ...lity cap struct v4l2_cropcap cropcap struct v4l2_crop crop struct v4l2_format fmt v4l2_std_id std V4L2_STD_NTSC_M if 1 ioctl fd VIDIOC_QUERYCAP cap if EINVAL errno fprintf stderr s is no V4L2 device n dev_name exit EXIT_FAILURE else exit EXIT_FAILURE if cap capabilities V4L2_CAP_VIDEO_CAPTURE fprintf stderr s is no video capture device n dev_name exit EXIT_FAILURE if cap capabilities V4L2_CAP_STRE...

Page 168: ...4L2_BUF_TYPE_VIDEO_CAPTURE crop c cropcap defrect reset to default if 1 ioctl fd VIDIOC_S_CROP crop switch errno case EINVAL Cropping not supported break default Errors ignored break else Errors ignored memset fmt 0 sizeof fmt fmt type V4L2_BUF_TYPE_VIDEO_CAPTURE fmt fmt pix width 640 fmt fmt pix height 240 fmt fmt pix pixelformat V4L2_PIX_FMT_BGR24 fmt fmt pix field V4L2_FIELD_ALTERNATE per field...

Page 169: ... example showing how to set 4 buffer queues which store video data in turn global variables struct buffer void start size_t length struct buffer buffers NULL static unsigned int n_buffers 0 void init_mmap void struct v4l2_requestbuffers req memset req 0 sizeof reg req count 4 req type V4L2_BUF_TYPE_VIDEO_CAPTURE req memory V4L2_MEMORY_MMAP if 1 ioctl fd VIDIOC_REQBUFS req if EINVAL errno fprintf s...

Page 170: ...izeof buf buf type V4L2_BUF_TYPE_VIDEO_CAPTURE buf memory V4L2_MEMORY_MMAP buf index n_buffers if 1 ioctl fd VIDIOC_QUERYBUF buf exit EXIT_FAILURE buffers n_buffers length buf length buffers n_buffers start mmap NULL start anywhere buf length PROT_READ PROT_WRITE required MAP_SHARED recommended fd buf m offset if MAP_FAILED buffers n_buffers start exit EXIT_FAILURE ...

Page 171: ...f 0 sizeof buf buf type V4L2_BUF_TYPE_VIDEO_CAPTURE buf memory V4L2_MEMORY_MMAP buf index i if 1 ioctl fd VIDIOC_QBUF buf exit EXIT_FAILURE type V4L2_BUF_TYPE_VIDEO_CAPTURE if 1 ioctl fd VIDIOC_STREAMON type exit EXIT_FAILURE Stop capturing Void stop_capturing void enum v4l2_buf_type type type V4L2_BUF_TYPE_VIDEO_CAPTURE if 1 ioctl fd VIDIOC_STREAMOFF type ...

Page 172: ...l2_buffer buf memset buf 0 sizeof buf buf type V4L2_BUF_TYPE_VIDEO_CAPTURE buf memory V4L2_MEMORY_MMAP read frame if 1 ioctl fd VIDIOC_DQBUF buf switch errno case EAGAIN return 0 case EIO Could ignore EIO see spec fall through default exit EXIT_FAILURE prepare next frame if 1 ioctl fd VIDIOC_QBUF buf exit EXIT_FAILURE return 0 ...

Page 173: ...id unsigned int value 0xC3FEFF if 1 ioctl fd BT878_S_GPIO_OUT_ENABLE value return 1 return 0 int read_gpio void unsigned int value if 1 ioctl fd BT878_G_GPIO_VALUE value return 1 value 0x100 bit 8 is used to store the input value if value return 1 else return 0 int write_gpio int value unsigned int gpio if 1 ioctl fd BT878_G_GPIO_VALUE gpio return 1 gpio 0x40 bit 6 is used to set the output if val...

Page 174: ...164 Programming Guide ...

Page 175: ...r both hor izontal and vertical scans CIF CIF has 352 H x 288 V luminance pixels and 176 H x 144 V chrominance pixels QCIF is a similar picture format with one quarter the size of CIF EIA An acronym to designate a scanning system used in America and Japan The EIA system is made of two interlaced fields of 262 5 lines for a total of 525 lines In each field only 242 5 lines are vis ible for a total ...

Page 176: ...television broadcast standard used in America and Japan The M NTSC system uses 525 lines per frame 2 interlaced fields a 29 97 frame per second update rate and a YIQ or RGB color space In each field only 242 5 lines are visible for a total of 485 visible lines typical value A line lasts 63 56 ms of which approximately 52 ms are conveying visible pix els PAL Acronym to designate a color television ...

Page 177: ...o communica tions However there is no guarantee that interference will not occur in a particular installation If this equipment does cause harmful interference to radio or tele vision reception which can be determined by turning the equip ment off and on the user is encouraged to try to correct the interference by one or more of the following measures Reorient or relocate the receiving antenna Inc...

Page 178: ...cables must be used to connect a peripheral to the card This product has been tested in a typical class B compli ant host system It is assumed that this product will also achieve compliance in any class A compliant unit Notice for Europe This product is in conformity with the Council Directive 89 336 EEC amended by 92 31 EEC and 93 68 EEC ...

Reviews: