Lcd companion boards support (VKLCD50RTA & VKLCD70RT)

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers CamInfo.cpp Source File

CamInfo.cpp

00001 // CamInfo.cpp
00002 #include "USBHostCam.h"
00003 
00004 // Logitech C270
00005 #define C270_VID 0x046d
00006 #define C270_PID 0x0825
00007 #define C270_640x480 1
00008 #define C270_160x120 2
00009 #define C270_176x144 3
00010 #define C270_320x176 4
00011 #define C270_320x240 5
00012 #define C270_352x288 6
00013 #define C270_432x240 7
00014 #define C270_544x288 8
00015 #define C270_640x360 9
00016 //Needs HISPEED USB above 15 fps
00017 #define C270_752x416 10
00018 #define C270_800x448 11
00019 #define C270_800x600 12
00020 //Needs HISPEED USB
00021 #define C270_864x480 13
00022 #define C270_960x544 14
00023 #define C270_960x720 15
00024 #define C270_1024x576 16
00025 #define C270_1184x656 17
00026 #define C270_1280x720 18
00027 #define C270_1280x960 19
00028 
00029 #define C270_MJPEG 2
00030 #define C270_YUV2  1
00031 
00032 #define C270_EN  0x81
00033 #define C270_MPS  944
00034 #define C270_IF_ALT_192 1
00035 #define C270_IF_ALT_384 2
00036 #define C270_IF_ALT_512 3
00037 #define C270_IF_ALT_640 4
00038 #define C270_IF_ALT_800 5
00039 #define C270_IF_ALT_944 6
00040 //Needs HISPEED USB
00041 #define C270_IF_ALT_2x640  7
00042 #define C270_IF_ALT_2x800  8
00043 #define C270_IF_ALT_2x992  9
00044 #define C270_IF_ALT_3x896  10
00045 #define C270_IF_ALT_3x1020 11
00046 #define C270_IF_ALT(A) C270_IF_ALT_##A
00047 
00048 #define C270_INFO(SIZE) {C270_VID, C270_PID, _##SIZE, 0, \
00049     "C270", \
00050     C270_MJPEG, \
00051     C270_##SIZE, \
00052     _5FPS, \
00053     C270_EN, \
00054     944, \
00055     C270_IF_ALT(944), \
00056     4, \
00057     3}
00058 
00059 #define C210_PID 0x819
00060 #define C210_INFO(SIZE) {C270_VID, C210_PID, _##SIZE, 0, \
00061     "C210", \
00062     C270_MJPEG, \
00063     C270_##SIZE, \
00064     _5FPS, \
00065     C270_EN, \
00066     192, \
00067     C270_IF_ALT(192), \
00068     4, \
00069     3}
00070 
00071 
00072 // Logitech C170
00073 //#define C170_VID 0x046d
00074 #define C170_PID 0x082B
00075 #define C170_640x480  1
00076 #define C170_352x288  2
00077 #define C170_320x240  3
00078 #define C170_176x144  4
00079 #define C170_160x120  5
00080 #define C170_544x288  6
00081 #define C170_432x240  7
00082 #define C170_320x176  8
00083 #define C170_640x360  9
00084 //Needs HISPEED USB above 15 fps
00085 #define C170_800x480  10
00086 //Needs HISPEED USB
00087 #define C170_1024x768 11
00088 
00089 #define C170_EN  0x82
00090 #define C170_MPS  512
00091 #define C170_IF_ALT_512    4
00092 //Needs HISPEED USB
00093 #define C170_IF_ALT_1024   3
00094 #define C170_IF_ALT_2x1024 2
00095 #define C170_IF_ALT_3x1024 1
00096 #define C170_IF_ALT(A) C170_IF_ALT_##A
00097 
00098 #define C170_INFO(SIZE) {C270_VID, C170_PID, _##SIZE, 0, \
00099     "C170", \
00100     C270_MJPEG, \
00101     C170_##SIZE, \
00102     _15FPS, \
00103     C170_EN, \
00104     512, \
00105     C170_IF_ALT(512), \
00106     4, \
00107     3}
00108 
00109 // Logitech Qcam Orbit AF QCAM-200R
00110 #define Q200R_VID 0x046d
00111 #define Q200R_PID 0x0994
00112 #define Q200R_160x120 1
00113 #define Q200R_176x144 2
00114 #define Q200R_320x240 3
00115 #define Q200R_352x288 4
00116 #define Q200R_640x480 5
00117 #define Q200R_800x600 6
00118 
00119 #define Q200R_MJPEG 1
00120 #define Q200R_YUV2  2
00121 
00122 #define Q200R_EN  0x81
00123 #define Q200R_MPS  192
00124 #define Q200R_IF_ALT_192 1
00125 #define Q200R_IF_ALT_384 2
00126 #define Q200R_IF_ALT_512 3
00127 #define Q200R_IF_ALT_640 4
00128 #define Q200R_IF_ALT_800 5
00129 #define Q200R_IF_ALT_944 6
00130 #define Q200R_IF_ALT(A) Q200R_IF_ALT_##A
00131 #define Q200R_INFO(SIZE) {Q200R_VID, Q200R_PID, _##SIZE, 0, \
00132     "Q200R", \
00133     Q200R_MJPEG, \
00134     Q200R_##SIZE, \
00135     _5FPS, \
00136     Q200R_EN, \
00137     192, \
00138     Q200R_IF_ALT(192), \
00139     4, \
00140     3}
00141 
00142 //LifeCam VX700 / VX500
00143 #define VX700_VID 0x045e
00144 #define VX700_PID 0x074a
00145 
00146 #define VX700_160x120 5
00147 #define VX700_176x144 4
00148 #define VX700_320x240 3
00149 #define VX700_352x288 2
00150 #define VX700_640x480 1
00151 
00152 #define VX700_MJPEG 1
00153 
00154 #define VX700_EN  0x81
00155 #define VX700_MPS  128
00156 #define VX700_IF_ALT_128 1 
00157 #define VX700_IF_ALT(A) VX700_IF_ALT_##A
00158 #define VX700_INFO(SIZE) {VX700_VID, VX700_PID, _##SIZE, 0, \
00159     "VX700", \
00160     VX700_MJPEG, \
00161     VX700_##SIZE, \
00162     _5FPS, \
00163     VX700_EN, \
00164     128, \
00165     VX700_IF_ALT(128), \
00166     4, \
00167     3}
00168 
00169 //Sonix USB 2.0 Camera
00170 #define SONIX_160x120 5
00171 #define SONIX_176x144 4
00172 #define SONIX_320x240 3
00173 #define SONIX_352x288 2
00174 #define SONIX_640x480 1
00175 
00176 #define SONIX_IF_ALT_128 1
00177 #define SONIX_IF_ALT_256 2
00178 #define SONIX_IF_ALT_512 3
00179 #define SONIX_IF_ALT_600 4
00180 #define SONIX_IF_ALT_800 5
00181 #define SONIX_IF_ALT_956 6
00182 #define SONIX_IF_ALT(A) SONIX_IF_ALT_##A
00183 #define SONIX_INFO(SIZE) {0x0c45, 0x62c0, _##SIZE, 0, \
00184     "SONIX", \
00185     1, \
00186     SONIX_##SIZE, \
00187     _5FPS, \
00188     0x81, \
00189     128, \
00190     SONIX_IF_ALT(128), \
00191     4, \
00192     3}
00193 
00194 static const CamInfo CamInfoList[] = {
00195 // Logitech C270
00196 C270_INFO(640x480),
00197 C270_INFO(160x120),
00198 C270_INFO(176x144),
00199 C270_INFO(320x176),
00200 C270_INFO(320x240),
00201 C270_INFO(352x288),
00202 C270_INFO(432x240),
00203 C270_INFO(544x288),
00204 C270_INFO(640x360),
00205 //Needs HISPEED USB above 15 fps
00206 C270_INFO(752x416),
00207 C270_INFO(800x448),
00208 C270_INFO(800x600),
00209 //Needs HISPEED USB
00210 C270_INFO(864x480),
00211 C270_INFO(960x544),
00212 C270_INFO(960x720),
00213 C270_INFO(1024x576),
00214 C270_INFO(1184x656),
00215 C270_INFO(1280x720),
00216 C270_INFO(1280x960),
00217 
00218 // Logitech C210
00219 C210_INFO(160x120),
00220 C210_INFO(176x144),
00221 C210_INFO(320x176),
00222 C210_INFO(320x240),
00223 C210_INFO(352x288),
00224 C210_INFO(432x240),
00225 C210_INFO(640x480),
00226 C210_INFO(544x288),
00227 C210_INFO(640x360),
00228 C210_INFO(752x416),
00229 C210_INFO(800x448),
00230 C210_INFO(800x600),
00231 
00232 // Logitech C170
00233 C170_INFO(640x480),
00234 C170_INFO(352x288),
00235 C170_INFO(320x240),
00236 C170_INFO(176x144),
00237 C170_INFO(160x120),
00238 C170_INFO(544x288),
00239 C170_INFO(432x240),
00240 C170_INFO(320x176),
00241 C170_INFO(640x360),
00242 //C170_INFO(800x480),
00243 //C170_INFO(1024x768),
00244 
00245 // Logitech Qcam Orbit AF QCAM-200R
00246 Q200R_INFO(160x120),
00247 Q200R_INFO(176x144),
00248 Q200R_INFO(320x240),
00249 Q200R_INFO(352x288),
00250 Q200R_INFO(640x480),
00251 Q200R_INFO(800x600),
00252 
00253 // LifeCam VX700
00254 VX700_INFO(160x120),
00255 VX700_INFO(176x144),
00256 VX700_INFO(320x240),
00257 VX700_INFO(352x288),
00258 VX700_INFO(640x480),
00259 
00260 // Sonix USB 2.0 Camera
00261 SONIX_INFO(160x120),
00262 SONIX_INFO(176x144),
00263 SONIX_INFO(320x240),
00264 SONIX_INFO(352x288),
00265 SONIX_INFO(640x480),
00266 
00267 // Not found
00268 {0,0,0,0},
00269 };
00270 
00271 CamInfo* getCamInfoList() {
00272     return const_cast<CamInfo*>(CamInfoList);
00273 }