Our commercial video surveillance system had a problem last week. The mains supply unit that feeds the camera, which in turn uses a CCD (Charge Coupled Device) and transmits to the receiver through microwave (2.4 GHz) had failed. To add to our woes, the multiple camera switcher unit had failed as well – possibly owing to a disastrous power supply fault.
It would take some time to sort out this issue and procure replacement units to handle the security of the premises. Someone suggested that we explore using the ubiquitous webcams lying around in our office, coupled with some open source (or commercial) software to handle the perimeter security.
A quick search in the Google for the term – “linux video camera security” returned some 9 million pages. Zoneminder appeared to suit our requirement though our needs were more modest. The site mentions that it is a complete “ all in one Linux GPL’d security camera solution” .
Basically what we needed was as enumerated below:
- Option of using inexpensive USB webcams
- Option of using a Multi camera setup
- Software driven Motion detection
- Video streaming through the Net
- Option of storing the images generated in the high capacity Network File Server
Browsing through the supplied manual (readme.pdf) showed that Zoneminder would more than suit our requirements.
There are many ways you can download and install the software package.
You can download and compile the source code or download your distro specific RPM to install. You will find that most of the code is written in Perl, which makes managing/ fault finding that much easy for people conversant with Perl.
You will need amongst other things – an Apache server with PHP and Mysql installation. There are other essentials too – libjpeg.a , libpcre.a , ffmpeg or the Berkeley MPEG encoder – if you plan to generate MPEG video. Fortunately if you are with any modern distros, you can use any of their built-in updating to obtain the required libraries.
We will explore how we built from the ground up a very versatile video camera security system with little more than a Linux box and a few readily available Webcams in our subsequent parts.