QV-300 Webcam Software

The software available here is only available on an "as-is" basis. I have not prepared it for a real distribution, this is the exact software I am using, with most local values hard-coded. If you're a programmer, you can probably get things working, but if you aren't, then you probably can't. If enough people requst a "real" distribution that is easily buildable and configurable, I might do it, but I don't think that's too likely.

This software might be dangerous. If you use this software, and it breaks your camera it is not my fault.

First, there was QVplay. This is an excellent set of programs by Ken-Ichi Hayashi. My first qv-300 webcam used this software, and a perl script that I put together. Due to odd problems, it has to take two pictures for each one sent, because I kept getting picture errors on the first picture. That, combined with slow Sun serial ports let me get about one picture per minute.

Next, there was the server push CGI. This CGI works by polling a file and noticing when it changes, then pushes it using the appropriate protocol. Note that the perl script had to be set up to copy the file to the web server, because NFS can't be trusted to update file modification times in a timely fashion.

Next, QVplay and my perl script were replaced with my own standalone program. The jpeg code came straight from QVplay, the rest was rewritten from scratch (but still using QVplay as a reference) mainly for my own tinkering purposes. I was able to eliminate the two-picture requirement, and speed the software up in other ways also. It uses two include files from QVplay: jpegtab_f.h, and cam2jpgtab.h.

(Note that I also got a new Sun on my desk, a Sun Blade, and for a while it refused to talk to the camera, but now that I have the latest patches, it happily communicates at 115200 Baud, allowing me to get one image every 15 seconds or so.)

Finally, I created a script that handled the timestamping, and copying of the file to the various locations where it is needed either by the push or pull web pages. Requires some NetPBM tools and cjpeg/djpeg for the timestamping.


  • My web camera (using server push)
  • My web camera (using META REFRESH, a.k.a. client pull)
  • My QV-300 Camera
  • QV-Play software by Ken-Ichi Hayashi
  • Beau software also sells webcam software for the QV cameras.
    Tom Fine's Home Send Me Email