10/21/2008

All In Favor Say “Eye”

Uncle AndrewUncle Andrew
Filed under: @ 10:40 pm

I thought I’d take a moment to provide an update to a long-previous post regarding my home surveillance system. I’ve completely discarded any remaining proletarian filaments that may still have clung to my coattails and have become an official Entrenched Suburban White Guy. Would someone pass me a handgun and an American flag lapel pin, please…?

Actually, I’m writing this post for the sole purpose of recommending a piece of software to those who may be in the market for surveillance software: CamUniversal, by CrazyPixels Software.

CamUniversal is a Windows application which can control a theoretically unlimited number of cameras (your processor speed and RAM are the limiting factors), record continuously or capture motion off of any or all of them in just about any combination, and store the resulting captures in a variety of formats. It can pull images and video from a massive variety of devices: USB Web cams, IP-based network cams, DV camcorders or analog video cameras connected to a piece of video-digitizing hardware. Really, the wealth of options is almost daunting. I certainly don’t use the product’s feature set to its greatest effect, but all in all, I’d prefer that I not be the only thing in this house not performing up to its full potential.

Setting up your camera(s) to work with CamUniversal requires some knowledge of how your particular camera(s) work: how they encode video, how they transmit it, and how/where to get to it. Take my case, for instance: I currently run a network of six IP cameras. I decided to go the IP camera route because my focus was on being able to set cameras up wherever I wanted them with a minimum of fuss. Picture quality took a back seat, mostly because my intent was to capture pictures of potential thieves peering into our windows. At that range image quality is not an issue; it’s not like I want to be able to count their zits or something. Basic VGA-quality IP cameras cost damn near nothing these days, and  IP cams with built in WiFi radios and infrared LEDs for night viewing can be had for as little as a hundred and fifty bucks. By contrast, high quality day/night analog bullet cameras with Sony CCDs run as little as a third of that, but each one of them requires a cable to hook it to your computer, DVR or other surveillance hardware. Unless you go wireless, which puts you right back in the same price range or higher.

Most of my IP cameras require an annoying proprietary—and in some cases platform-specific—ActiveX control or Javascript in order to watch streaming video via a Web browser, though a couple can also push out a simple Motion JPEG (MJPEG) image as well. All of them, however, also take still pictures, and store them in a directory on the camera (as far as I can tell, every single IP camera currently on the market does this). So instead of having to use, say, Internet Explorer 6 or later on a Windows PC just to look at my own damn camera, with a little finagling I can figure out where those still images are stored, and go look at those instead.

CamUniversal uses this same function to capture footage from the cameras you point it at, either single frames or full-motion video (which is, after all, just a stack of single frames). When setting up a camera, you tell CamUniversal where to look for the camera, the directory the still images live in, the user name and password (if any) for the camera, and let ‘er rip. There are similar configuration options for IP cameras that use MJPEG and MPEG-4 for streaming video, and a separate configuration window for cameras that connect to your computer via USB or a video-capture card. It’s all a little daunting for a complete neophyte, but if you’ve gotten a Web cam or TV tuner hooked to your computer on your own, you can probably puzzle it out. A fairly robust online help section, complete with examples, does a lot to ease the pain as well. All in all, I can’t imagine that a hardware-based DVR and analog camera combo would be a lot less trouble to install and configure….unless you got someone else to set it up for you.

Once you have the cameras in place, you can make a host of decisions about how CamUniversal deals with the resulting images. It contains a full-featured motion capture section, allowing you to select the area of the picture to look for changes, the frequency of sampling, percentage of change in the image required to initiate a motion capture, the quality of the image captured, and what to do with the image(s) after it’s got them. CamUniversal can store images in a local folder, send them via email or upload them to a remote server via FTP, give off an audible or visual alarm, run a program or batch file….once again, the cornucopia of options is more than I’ll ever get around to implementing. I set it to store my pictures to a local drive with an offsite FTP backup.

CamUniversal can also generate a floating window of live previews from your cameras, either separate or all glommed together. This feature was an absolute must-have for me. Since my office is in our basement, I feel kind of disconnected from what’s going on in and around the house. I hooked a second monitor to my camera server and run all six preview windows in it full-time while I’m working. Not only can I see who’s at the door, I can watch the birds on our backyard feeder (our sharpshin hawk was back again today). I even took a spare cam I had lying around and set it up so I can see if the cats are up on the kitchen counter and bellow, “DOWN!” up the stairs at them. I’ve got them thinking that I’m damn-near omniscient. 🙂

In addition to all of the options for cameras and image capture and storage, CamUniversal offers a rudimentary Web server for accessing your cameras over a network, and a software-to-software video server for connecting two or more computers running copies of CamUniversal to each other. Frankly, neither of these functions did much to scroll my nerd. The Web server allows you to access single images from your cameras, and, if so configured, to make basic changes to their settings. Just about anyone with the ability to build basic Web pages could cobble together a little Javascript-enabled page that would continuously fetch new images from any or all of your cameras from a single browser window….and frankly, if you don’t already have that much technical knowhow under your belt, you probably aren’t the type to try to use the built-in Web server feature anyway. The Video Server feature is a bit more “Plug-N-Play” than the Web server, but not a ton more useful, and requires purchasing an extra copy of CamUniversal for every machine from which you want to view the cameras. Both of these functions are kind of throwaways, in my opinion. But cripes: for only $54.95, this program is an absolute bargain without ’em.

CamUniversal is built around the DotNet 2.0 framework, and is pretty forgiving as far as CPU and memory goes. I’m running the software on a 2GHz Core2 Duo with 4 gigs of RAM, along with firewall software, anti-spam software, a syslog viewer and an Unreal Tournament server. On this system, under Windows XP pro, my six-camera motion-capture setup takes just around 30% of my CPU cycles and 130 megs of RAM; plenty of extra thinks to go around.

The software also comes with excellent technical support from author Marc Schneider, who is answering his email and checking the forum on pretty much a daily basis. He is quick to offer help, and has gotten me out of a jam on a couple of occasions (including one serious case of PEBKAC error).

If you have to go the Mac route for your surveillance software, I highly recommend the excellent and full-featured SecuritySpy. However, SecuritySpy is much more expensive, and the demands on the hardware seem notably higher than with CamUniversal on the PC. This may very well have changed, since the last time I tried SecuritySpy out was on a PowerPC Mac rather than the newer Intel machines. But still: for the cost of an eight-camera license of SecuritySpy alone, I would be halfway to the cost of a complete budget PC upon which to run a 55-dollar copy of CamUniversal….with unlimited cameras.

Anyway, for affluent, paranoid technocrats or anyone interested in the exciting field of staring at flickering pixels out of the corner of your eye all day, I highly recommend CamUniversal.

Leave a Reply

All comments containing hyperlinks are held for approval, so don't worry if your comment doesn't show up immediately. (I'm not editing for content, just weeding out the more obvious comment spam.)


All portions of this site are © Andrew Lenzer, all rights reserved, unless otherwise noted.