You can turn your server or PC into a serious security hub by drawing video feeds from a variety of cameras, both local and remote.
iSpy is one of those amazing open-source projects that far too few people know about. It’s a free application that allows you to set and control an entire network of cameras and listening devices. From a PC, web browser or mobile device you can see or hear what the cameras or microphones are picking up. You can also have the cameras and mics record video and audio on a schedule or when motion is detected.
It works with both USB webcams and a variety of IP cameras, in high-def and low, and it can even access devices attached to other PCs. Dozens — even hundreds — of cameras can be managed from a single PC if it has the processing power to do so.
For home users, it has a variety of applications. The least nefarious include nanny cams for monitoring children and home security cameras. It can also be used for self-recording, covert monitoring and even time-lapse recording.
The basics — adding cameras
iSpy is easy to get up and running. Just go to www.ispyconnect.com and download and install the application.
After that, the first thing you have to do is add cameras or listening devices. Most likely you’ll start with a local USB camera. You can have multiple USB cameras attached to a single PC.
To add a camera, just click Add. You can have as many cameras attached as your PC will support.
Click ‘Add’ in the top-left of the window. Then select ‘Local Camera’ from the drop-down list (if you have IP cameras instead, you can use the ‘IP camera with wizard’). This takes you to the video source pop-up window, with the ‘Local Device’ tab preselected.
When you add a local camera source, you can choose the resolution of that camera.
Note that from the ‘Video Source’ pop-up you can also choose other sources. Point it at a web URL if you want to add a video feed from an internet or IP camera source — MJPEG and Microsoft MMSH video streams are supported. You can point it to an online JPEG image for sites that use a constantly shifting JPEG image and you can even draw a feed from an Xbox Kinect device.
For now, however, we’re assuming you have a local USB camera. In the ‘Local Device’ tab, select your camera. Then under ‘Video Resolution’, choose the resolution from the drop-down list. iSpy supports HD resolutions for those cameras that have them, but it might be a better option to choose a smaller resolution, since HD recordings can be massive, and multiple HD feeds tax the processing power of even the fastest computer. If you do choose HD resolution, it’s wise to uncheck the ‘No resize’ box and enter dimensions in the ‘Resize to’ fields. This doesn’t affect the camera recordings, but it will allow you to see the full image in the iSpy interface.
When you click OK, the ‘Edit Camera’ pop-up will appear. There are lots of options, though depending on the model of your camera some may not be supported. The key things to change include:
- Giving the camera a name in the ‘Camera’ tab. In the same tab, setting a maximum viewing and recording frame rate.
- Setting up motion detection thresholds (although you can use the defaults).
- Setting up recording in the ‘Recording’ tab; it defaults to ‘Record on Movement Detection’, but you can change it to record never, always, on a schedule or time lapse.
- You can also set recording codecs and destination folders.
- Enabling alerts based on movement detection, which can be sounds or even emails and SMSs if you’ve subscribed to the web service (see below). Alerts can also trigger a script or app to run.
You can, of course, play with these settings at any time. For now, click ‘Finish’. You’ll see the camera feed in your main iSpy window (and there’ll be a flashing red bar underneath it every time motion is detected). To change its settings just right-click on the feed. If you have multiple feeds set up now, you can drag them around the iSpy interface as you please.
There are a huge number of camera options to play with in iSpy.
Sharing with mobile and the web
If you’re running iSpy from a server, you’re probably not going to want to have to wander over to the server every time you want to see what’s happening on camera. Fortunately, iSpy has a built-in web server so different devices can be used to check in on the feeds.
You can create a free account, which allows viewing only from within your local network. If you subscribe to iSpyConnect (for US$8 per month), you can view feeds from anywhere in the world and from mobile devices. Subscribers can also get alerts delivered via SMS or email.
You can access all your camera feeds from a web browser or mobile device.
To set up the web server and access iSpyConnect, just click on the ‘Web settings’ button. You’ll be asked to provide a username and password for the iSpyConnect account — or click on a link to create a new account.
Once you’ve done that, you can see all your camera feeds by going to www.ispyconnect.com in a web browser and logging in with your account details. By clicking ‘Watch all’, you can then select which cameras you’d like to view. Although you’re accessing it through a web service, it streams video direct from your PC. iSpyConnect does not record or relay any video from the web service itself.
Other things you can do in iSpy
We’ve only just scratched the surface of iSpy’s capabilities here. If you really want to turn your iSpy server into a security and video hub, you can try the following:
Setting up the PC’s Windows desktop as a video source so the video stream you see is the actual desktop of the server. (This also gives a weird recursion effect when you view the video in the iSpy window — you’re looking at the desktop image of you looking at the desktop. Somehow, however, the universe does not explode as a result of this paradox.)
You can load up an image of your home’s floor plan, tell iSpy where the cameras are located and use the floor plan to switch between cameras.
You can set up pan, tilt and zoom controls on cameras that support it.
With cameras that have reverse speakers (a feature of a number of IP cameras), you can use iSpy to talk to people through the camera.
You can set up time-lapse photography, taking JPEG images at specific intervals.
You can automatically upload recorded videos to an FTP server or to your YouTube account.
iSpy supports plug-ins, including face recognition and number plate recognition (which can be used for triggering alerts), text overlay and video conversion from third-party feeds.
With iSpy, you can actually add cameras attached to another computer to your network of devices. To do this, you need to install iSpy Server on that computer. This is a trimmed down version of iSpy that simply makes those cameras accessible to the central iSpy control device.
Once you’ve installed iSpy Server on the device you’d like to see the cameras of, go back to your main iSpy management PC and choose ‘Add’ then ‘Cameras and Microphones on Other Computers’.
iSpy supports both IP cameras and USB cameras (and can even draw on third-party camera feeds), but if you’re looking to set up a home network of cameras, then IP cameras are your best bet. These will talk over your wireless or wired home network to your iSpy application, whereas extending USB cables around can be expensive and difficult. In addition, having multiple USB cameras from the same manufacturer can cause driver issues, as iSpy becomes confused about which camera is which. USB does have some advantages, however: the cameras are much cheaper and they can usually record higher definition video.