⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 readme.stv680

📁 这是stv0680的usb摄像头在linux下的驱动程序
💻 STV680
字号:
February 1, 2002. Version 0.25 of the STV0680 webcam driver.* Ver 0.25. Fixed a bug in checking the allowed sizes versus supported   modes. Driver was trying to set to size not supported in that mode.    The fix allows QVGA cameras to work with gnomemeeting, which wants QCIF.    Also fixed typo in proc_stv680_destroy, thanks to Reinhard Max. Update  for MOD_COUNT for 2.4 series from Oliver Neukum.* Ver 0.24. Several small bug fixes: webcam no longer crashes after two   frames, a swapRGB override switch has been added, the green line around   the frame is no longer there, and the brightness does not revert to   default when changing sizes.* The driver is now in the kernel code (2.4.17 and above). This brings   the tarball version into sync with that, except for two items which   are only in kernels 2.4.12 (?) and above. These are the module_license   and the FILL_BULK.. macro, which is now fill_bulk.. inline. Also there   is a fix for the problem with webcam crashing after two pictures. The   shapen filter was taken out, for various reasons.* I have included the gamma correction-white balance filter from pencam   (it is set for incandescent light) and the sharpen filter, set to a   default value of 66%. This may make the images a little grainy, but   they are much sharper. The sharpen_percent value is defined at the   beginning of stv680.c and can be reduced if you feel that it is making   the images look grainy. The filter type can also be changed, but you have   to set it in the values.c program, compile and run it to generate the   values, and paste them into stv680.h. The top of the values.c files   tells you how.  * I have made some changes in the way the camera is initialized that   should make the driver more stable. If you have debug set to 2, you   should see fewer "STV: Lost data in camera transfer" messages, and   fewer usb bulk transfer timeouts.  * The driver should automatically detect whether swapRGB needs to     be set. You shoyld not have to use that option when you load the     driver.      * I have implimented a simple brightness function, that should work     with the brightness control of the application. I have done nothing     with hue, contrast, or color. These must be handled in software and     I want to get the driver more stable before working on these functions.     Several people have sent me code for dealing with color balance but     I had some trouble implimenting the code, so I have skipped that for     the time being.      * You should be able to change the picture size to half and back again.     I believe the CIF should work (if your camera supports it), but have     not tested this setting yet.        *********************************************************** Special thanks to Steve Miller and STMicrolectronics, for   providing me with information about the usb commands, and   especially to Steve for his encouragement while I was   struggling to write the driver.***********************************************************Some notes on the compiling, installing, using the stv680 driver:* You need to be root to compile, load and unload the module.* Make: just do "make". You should have a recent 2.4 kernel; I've been   using Mandrake 2.4.8-26mdk. I was also able to compile and run the   driver on a stock Mandrake 8.0, kernel 2.4.3, but I had to fix a few   things. The only one that might be of concern to you is the   "#define KERNEL_VER 243" near the top of stv680.c. I have commented   it out; if you get a compile error about too many parameters in   video_register_device, uncomment the #define KERNEL_VER 243 line.   I would recommend you upgrade to a more recent kernel; the usb   system has changed a lot from 2.4.3 to 2.4.7 or .8, and is more stable   now.      I got a lot of errors when I tried to compile for a 2.2.17 kernel, and   I don't think I will try to backport the driver to a 2.2 kernel. The   video system also changed a lot between 2.2 and 2.4.* Early on, I had some problems with the usb-uhci controller. The   problems were mainly kernel opps or usb bulk message timeouts. I   did not have these problems with an ohci controller, but I also   changed the software quite a bit, and I have not had these problems   for some time. If you encounter them, check whether you have an ohci   or uhci controller (look at the output of lsmod), and DON'T try to   load the driver again. In extreme cases it can cause system corruption.   Email me with the details.  * Install: "make install" should work. I normally load the module from   the current directory. You will need to "modprobe usbvideo" first.   Then "insmod ./stv680.o". I have been running a script when I test   the driver with apps, such as "stvtest"; this loads the driver, runs   xawtv with debug enables (xawtc -noxv debug 2 2>| stv.log), and then   rmmods the driver.***************************  NOTE  ********************************  * xawtv seems to see the video output as BGR instead of RGB. Gqcam, on   the other hand, does see the output as RGB. When the output and the   application do not agree on the format, the image will be dim and   have a blue tint. I have made a parameter, swapRGB, to handle this.   It normally defaults to 0 (OFF), so gqcam is happy. If you are running   xawtv or some other app in which the image appears dim and bluish, try   loading the driver with swapRGB=1 ("insmod ./stv680.o swapRGB=1").     Also, xawtv apparently uses a transfer method called mmap which gives   a higher frame rate (hence smoother motion) than gqcam, which uses the   standard read(). Try setting the frame rate to max for gqcam with the   -F option (see gqcam -h). Of course, video frame rates also depend upon   your CPU speed. Video is pretty smooth with an 800MHz Duron, less so   with a 400MHz K6-3. I also have to use the option "-noxv" with xawtv on   my system.*******************************************************************  * There is an interface to the /proc/video device. When the driver is   loaded and an application requests video data, you should find that   /proc/video/stv/videox exits, where x is 0, 1, .. (usually 0). If   you type "more /proc/video/stv680/videox" you will get information on   whether the driver is streaming, how many frames have been transferred   or lost, etc. * About the image sizes: my camera (Nisius Quickpix2) supports both VGA   (640x480), and QVGA (320x240). According to the documentation I have   seen, the STV0680 and the VV6500 sensor can support CIF (352x288). My   camera apparently does not support CIF, as attempts to set the mode to   CIF failed and the camera software reports it as not supported.   Nevertheless, I think I have seen some cameras baed on the STV0680   that do support CIF. I have therefore set the driver to try this mode   first. If that fails, it falls back to QVGA. I have not tried VGA; for   one thing, the frame rate would be about 3 frames/sec, and I would have   to change the memory allocation of a number of buffers, using the slower   vmalloc instead of kmalloc. I have been unable to test the CIF mode, but   I believe it should work. The dmesg output will tell you the modes   supported and the mode finally settled on. The original mode the camera   was in should be restored when the driver exits. Using the application   to resize the image should work; if your video mode is QVGA, sizes   320x240 and 160x120 should be available if the application   suppports it (for CIF, the sizes are 352x288 and 176x144).   ****************************  NOTE  **********************************  All images stored in the camera are overwritten when video streaming   starts. That is a function of the hardware and there is nothing I can   do about it, except to automatically save the images to disk (but   where? using what name? and writing to disk from kernel space is not   easy). If you want to save pictures already in the camera, do it   using the pencam program before you load the driver and start a   video application.  *********************************************************************** There are some pretty rough spots yet. I would plug the camera in first,   then load the driver. Unload the driver before unplugging the camera.   Information and error messages can be read with the dmesg command, or   in /var/log/messages or /var/log/syslog. I am have implimented a debug=x   option. 0 is the default; a few message are printed (in dmesg or the logs).   "debug=1" give more messages, and "debug=2" gives even more. Any condition   which causes the driver to quit (such as being unable to allocate memory   for a buffer) should print an error message regardless of the debug value.    Sometimes an application seems to hang; wait a few minutes and it usually   starts. If it doesn't, kill it and unload and then reload the driver.    DO NOT unplug the camera while it is streaming video (look at the LCD   display on the back; the segments counter-rotate when streaming video).   Unplugging the camera while it is streaming video will probably hang   your system, and during the subsequent reboot and system check you risk   data loss and/or file system corruption. As usual, there are no guarantees   or warranties, implied or otherwise, when using this driver. If you download,   compile and run it, the risk is yours.  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -