qvplay and the Casio QV-10 Camera

Linux software to control the Casio QV-10 camera is now available. Mr. Hepple tells us how to use qvplay.
Cameras Supported by qvplay

According to the source code, qvplay appears to support the following cameras:

  • QV-10 in its various flavours, e.g., QV-10a

  • QV-11

  • QV-30

  • QV-100 (including the fine resolution)

  • QV-300 (including the fine resolution)

The only camera I have tested is the QV-10.

Handy Scripts for qvplay

Once I got the hang of qvplay, I wrapped it up in a couple of simple scripts to do the things I normally do without reading the manual pages. These two scripts are:

  1. get_a_pic: A simple script to get one photo. (See Listing 1.)

  2. get_all_pics: Another way to get all the photos from the camera. (See Listing 2.)

Post-processing of JPEG Files

One weird thing that you have to do is fix the size of the JPEG images (see the get_a_pic script). I must confess I don't fully understand what's going on here but apparently the images come across as 480x240 pixels and you must change them to an aspect ratio of 4:3 or 320x240 pixels. You can do this with the xv program or using the Independent JPEG Group's commands, djpeg and cjpeg, along with the Poskanzer portable bitmap utilities. These utilities are normally found in the various Linux distributions. For example:

qvplay -g 1 | djpeg | pnmscale -xsize 320\
        -ysize 240 | cjpeg > foobar.jpg
Using a WWW Browser to View Files

You can view your JPEG files quite nicely with xv(1) or with a WWW browser such as Netscape. In the latter case, you might want to generate HTML index files for your shots using something like the following automatic procedure.

Assuming your JPEG files are sitting in a directory—e.g., I keep all the files from one day's shooting together under a directory labelled with the date, something like ~/photos/971128/*.jpg—I then run the following script on them to create an index page viewable by the browser. This could be put into a Makefile:

(cat hdr
ls $i*.jpg |sed "s/^/<IMG SRC=\"/" |sed
cat tlr) > index.html

The file hdr simply contains a standard HTML startup:

  <TITLE>Photo viewer</TITLE>
  <META NAME="Author" CONTENT="Bob Hepple">
<H1>Photo viewer</H1><HR>
Similarly, the file tlr contains your standard HTML wrap-up script:
<A HREF="mailto:bhepple@pacific.net.sg">Bob
Hepple</A> <P> Copyright © 1997 Bob
 Hepple. All rights reserved.

A Graphical User Interface for qvplay

qvplaytk is a Tcl/Tk wrapper for qvplay which provides a GUI interface. Figure 2 is a screen shot of the program which can be found at its author's (Mr. Amano) home page at http://www.bekkoame.or.jp/~tormato/qvplayk.htm.

Figure 2. Screen shot of qvplaytk

As a Tcl/Tk script, qvplaytk is very easy to configure and adapt. For example, you might like to change the obscure “G”, “S” and “T” buttons to “Get”, “Save” and “Take”.

One very nice feature of qvplaytk is that the “Take” mode allows you to take a photo every N seconds—this could be used in a remote monitoring application. Perhaps it could be used for one of those strange web sites which offer a changing view of the level of the coffee in the kitchen, or for keeping an eye on your kids in the next room.

Apart from qvplay, qvplaytk requires Tcl 7.4 and Tk 4.0 or Tcl 7.5 and Tk 4.1. It also relies on xv for the viewing functions.