I'm working on a home automation/security project for my house. Part of this project is to add a series of wireless webcams to the house and then write an interface that will allow me to pick a camera to view. I've been scouring the web in search of a cam that will allow me to just pull the image off the camera instead of having to use some Java interface or ActiveX plugin and I haven't found much. I don't have the money to start buying random cameras to see if they will do what I need them to do.
There are several cameras on the market that are built specifically for this task but are way out of my price range. It's more my style (and price range) to buy a cheaper cam and hack an interface to get what I need.
Does anyone have any ideas on what I can use for this?
You could get regular analog cameras and pair them up with a cheap USB video capture device. There's all kinds of generic software out there for doing things with video capture.
I used to have a program called "ThiefJailer" that would capture stills whenever motion was detected on the camera. I can't speak for other programs, but i know that ThiefJailer works equally well with a capture card as it does with a $10 webcam. I would assume most other software would do this as well, but switching might be easier with analog cameras. I'm thinking you could use one capture device and simply build/buy a (hardware) switch to choose which camera's signal to capture.
I don't think I understand the problem. How do you want the process of getting the image from the camera to work? Do you want to connect to the camera via HTTP to download images? If the camera isn't one of those expensive, self-contained, network-ready models, you'll need hardware and software to drive it. Building an embedded web server is not a trivial task, but it can definitely be done. I vaguely remember seeing someone's project in which he'd attached a parallel port driven camera to a TINI board to create a self-contained network camera. TINIs have on-board ethernet but not wireless, but the 390-based models are cheap when they show up on eBay. But, ultimately, something with a modicum of computing power needs to be driving the camera.
What language are you planning to implement this in? If there are libraries for driving cameras in Java, why don't you just use Java?
I may have explained the problem poorly. There are several networked cameras out on the market that give the end user a web interface to control / view the camera. Every model of these I've seen tries to make it simple for the user by presenting this web interface as a plugin or Java applet. I was wondering if there is a camera that has a basic web server in it that I could write a perl script (or something like that) to query the web server and get the current image back either by addressing the image directly or parsing returned HTML.
My original question did not frame the problem this way. I apologize for any confusion.
For the record, I don't know what language this will be written in because I'm still planning out the entire project.
The TINI-based thing I described would do what you want; I believe the software it runs just serves up images via HTTP. I can't find it online anymore, though I did find <a href="http://www.profcon.com/profcon/cargill/">the creator's old site</a>. The link to the 'StickClick' project doesn't work, but it might give you an idea where to look.
The cameras that use a Java applet can probably be accessed directly if you can get the protocol. Is there source for the applet?
How many cameras as you planning to have? Maybe the cheapest route would be to use analog video transmitters and get a video switcher card, kind of like what Kryten mentioned.
The camera there is the D-Link DCS-900 which has it's own web interface but according to that article, you can directly address the image on the camera. The only downfall to it is that I'd need to run some cable to get it on the network. Not really a big deal. Amazon.com is listing the camera at $84.
They're somewhat pricey, but I've seen 'wireless adaptors' for game consoles that are just wifi-to-Ethernet bridges. You could probably use one (or more) of those.
The camera is available in a wireless version as DCS-900W. I have the older wireless B version and it is not very reliable. Runs for a few days and then takes itself off the network. Image quality is not very good either. The Panasonic BL-C10 (wired) and BL-C20 (wireless) have better quality images, pan and tilt, and a fully documented API.