Thursday, October 16, 2014

System Overview

The overall system is organized similar to the traditional video surveillance system. But here the mobile devices function as cameras: collect, compress, and send video to the PC server, which then may record it to disk, much like a DVR.

Short definitions:
Client Device - a device running the ReelCam Video Security Monitor app, which turn it into a remote camera, with logic to detect motion/sound and trigger recording on the server PC.
Server PC - a computer running the ReelCam Local Server software, serves as a bridge between the client and controller devices, as well as recording video streams, and sending email alerts.
Controller Device - a device running the ReelCam Remote Controller app, which allows it to configure the server PC, and client devices. It also functions as a viewer for live and recorded video streams.

Since compression is done on the client device, and decompression is performed by the controller device when viewing, the server PC doesn't need a very powerful CPU, nor GPU (it could be headless, i.e. no display). A low end PC should suffice, as long as its network and disk speed is fast enough for writing/reading multiple streams concurrently.

Obviously, the WiFi signal and router also should be able to accommodate the bandwidth required. In the above chart, the Controller Apps are shown running remotely, but they can also be run inside your WiFi network. For backup, you could use DropBox to mirror the video directory on your server PC to the cloud.

The system is very flexible, in that you can configure it in many ways. In the chart below, you can choose to have the server PC be in the cloud instead of inside your local network. Obviously, you would need to take steps to secure your server from hackers. So this is more in the realm of experts. But using this set up would allow you to easily have multiple client devices at various geographical locations, not confined to one particular site.


Sunday, October 5, 2014

Web Apps

As of now, both the ReelCam Client and Controller are also available as web apps. This means that you can use them in Flash browsers without installing. It is ideal for desktop PCs, and Macs as well.

With the Client web app you can have a single PC, hooked up with multiple USB cameras, and run ReelCam Client in multiple browser tabs, one for each webcam, effectively allowing the PC to stream from many different angles or views. The possibilities are limited only by the boundary of your imagination ;). This has been successfully tested on the Microsoft Surface Pro, allowing recording both front and back cameras simultaneously. But, as always, your mileage may vary.

Though I can easily make a version for the Windows and MacOS desktop, I'd prefer to go the browser way, unless of course someone give a good reason to have the former.

BTW, the Client web app does have certain limits, such as no GPS access, nor Snapshot feature (due to file restrictions on Flash). Likewise, the Controller web app is unable to download recorded files. It may be possible to find a workaround for these issues in the future though.

Saturday, September 20, 2014


Welcome to my ReelCam blog.

After developing this software system for the last few months, it's finally uploaded to Google Play Store, and BlackBerry App World. I'll make a version for iOS later, not sure if there would be a demand for it though.

So what is this ReelCam Video Surveillance system? The main idea is to turn the many "smart" mobile devices you've already accumulated over the years into security cameras for your property, house, office, etc. The videos from these devices are streamed to your local PC server, which may then record them on to the hard drive. You use a Controller App to connect to the PC server, and directly configure the settings (motion/sound detection, email alerts, etc) for each of these devices.

Sample image of a wall mounted Nexus 7 running the ReelCam Client app

This set up is similar to many of the real video surveillance systems today, which usually have a DVR box to which numerous video cameras are attached to. The difference is that you usually have to configure the DVR using an infrared remote control, which means you need to be nearby. Whereas with the Controller App, you configure the PC server over the network, anywhere you have connection.

Live View on the ReelCam Controller app

Though the PC server software is designed to run on your local network to keep your data safe of the internet, there is no reason you can't run it on a cloud or VPS server instead, should you choose to do so.

Well that's my short intro into the system. I will follow up with more details in later posts.