My mate Andy was good enough to give me a Sony EVI-D31 camera. It's a very nice bit of kit, with motorised tilt, pan and zoom (to 12x!). I haven't yet managed to get a picture out of it, because I don't have a video capture card in my PC. Anyway, if you're looking for more info on the EVI-D31, then take a look here: http://www.j3soft.com/webcam/evi-d31.htm (thanks for that Andy!).
Incidentally, I'm using the camera with Linux, and very successfully got the camera doing things with libvisca. It's a C library that provides Visca access to a serial device. It comes with a little example program that makes the camera move about and zoom in and out. I'm working on a C client that takes some kind of commands and gets the Visca library to perform them. I'm planning the C client to write one line for each line read (and do it with no buffering). That way, it'll be nicely compatible with Perl's open2() (caveats).
I did slightly attempt to make a Perl API to the library. I got as far as h2ph, and then pretty much fell flat. I can't really find any decent docs on how to write a native library interface for Perl. Anyone got any ideas?
Anyway, I'll post my interactive libvisca client here, and try and get it into the libvisca project as well (once I've rekindled my mostly-extinguished C knowledge ;-)
PS. I don't think libvisca will provide access to the camera's "special" features like the IR or object following features - I guess you can't have everything :-(