Welcome to Terry Collins's
Security Cam using Nemesis
GNU/Linux software notes


At the moment, I am now playing with the Nemesis security cam software written by John Ferlito. Again, this seems to be a topical question on the SLUG list, so I thought I would put a few notes up on my WWW server from how I set it up. This is an attempt to provide alternate documentation on stuff I could not easily find out about Nemesis and that would have made it's installation easier. The version I used was Nemesis V1.0.


The Basic Steps

  1. Obtain software
  2. Obtain hardware
  3. Storing The Images
  4. Config, Make and Make Install
  5. Vplay
  6. Acknowledgements
  7. Disclaimer

Back To WOA Linux Resources Page
Back to WOA Front Page

Obtain The Software


Nemesis software is at http://nemesis.inodes.org. At the time of installation, Nemesis was a system to capture images from one video camera and save the images as separate files to 24 different directories depending upon the hour of capture.


Back to Table Of Contents

Obtain The Hardware


All this information on obtaining and setting up cam hardware and software is available on my page. So, I am not going to repeat it here. Nemesis software is just a specialised use.


Back to Table Of Contents

Storing The Images


Now, Nemesis runs by each hour, using cron to kick off a script (start_hour.pl) that requests a perl script (stream.pl) to collect X number of images, where X is determined by the number of frames per second and the time to the next hour.

So each hour, the script looks up a table to determine which sub-directory the image should be stored in. So you need to allocate (up to) 24 subdirectories to hold these images. Firstly, you need to determine how big an images is and how much space you will need. The software documentation gives some estimates.

How I did it was on the physical disk location /mnt/disk1/camera/, establish 24 directories ##, from 00, 01, 02, .......22, 23, 24. Then "ln -s /mnt/disk1/camera /cam" to establish a root directory sub-directory /cam.

(20000531)Also change the %k to %L in start_hour.sh. %k returns 0, 1, to 22, 23, %I returns 00, 01, ... 22, 23.

Okay, I'm lazy, but it is smart lazy and a whole lot easier to enter /cam/00 to /cam/24, then to enter twenty four times "/mnt/disk1/camera/00". You will need to enter this information twice. Once in stream.pl, where it is easy to spot the line to modify. The second time is in nemesisrc, which is where vplay, the image viewer program looks to find the images to display.

It is a trivial mental exercise to realise that /cam can easily be come /cam1, ... /camy in your root directory to allow for the twenty four directories to be spread over different hard disks.


Back to Table Of Contents

Config, Make & Make Install


Once you have the software, it is a simple matter of reading the doco and running ./configure, make and make install. Of course, you have to do this three times. First with glib, then gtk, then the Nemesis software.

I had problems with gtk 1.2.6 and I had to invoke the --ignore-something-or-other options before it would configure okay. It basically kept on telling me that it had a pre 1.2.4 version of glib. I will try and remember what the actual option was, but I can tell you that there is a ./configure --help that may help you out if you strike problems.


Back to Table Of Contents

Vplay


The only other problem that I ran into was getting vplay, the image viewer working. Firstly was finding out about nemesisrc, the file that tells vplay where to look for the files for each hour.

The next problem was understanding what the four fields in the player were for. These turned out to be for hour, minute, second and hundredth of seconds. Basically, just use the up and down triangles to increment or decrement the value in the boxes, then hit the play button. You can continually hold down the left mouse button to have it zoom forward or backwards.

The only thing you need to be aware of is that vplay takes the values in the fields, applies a formula and looks for an image #####.jpg depending on the time values. The play button causes it to attempt to rotate through the five images for the second. If you have reduced the fps (frames per second) in stream.pl, you may see error messages about not being able to find #####.jpg and the image displayed will not be for that time, but will be from a later time. I assume increasing the fps will cause vplay to display earlier images.

The explanation as to why this happens is that stream.pl simply calls a program streamer and tells it to spit out sequentially numbered images from 00000.jpg until it stops.


Back to Table Of Contents

Acknowledgements


As well as the usual crowd (Richard Stallman for GNU, Linus Torvalds for Linux), thanks should John Ferlito who hacked it all together. TAAH.


Back to Table Of Contents

Disclaimer


You know the patter - if you use this info, you do so at your own risk. I have no idea whether this software meets any legal or privacy considerations. As I understand it, you can capture any image in a public street, but need a warning sticker to advise people that their image/photo may be taken if they enter a private place. There is something about having date and time and crc if you want to use this in a legal forum to charge people with criminal acts.


Back to Table Of Contents
Back To WOA Linux Resources Page
Back to WOA Front Page

These WWW pages were created with asWedit on GNU/Linux