Find an old computer, something that isn't exactly an Intel Atom but has some sort of horsepower to it. A Core 2 Duo would be perfect. Install a Linux distro on it (I use Ubuntu) and install "Motion" from the repos via sudo apt-get install motion. Motion is a motion detection service that runs as a daemon, so it starts once the system fires up. It works based on MJPG streams, so you won't get epic 3000 FPS HD 1080 quality shots, but if you run the cameras at say 5 FPS, you're still getting 5 JPG snapshots per second, which is often more than enough to ID somebody. Cameras could be a wide range, but the cameras will dictate the quality of image you get, so do your homework beforehand. Wired is always preferred to wireless, but I've used wireless cameras that were "okay". I wouldn't consider them for a situation like this, though.
Also, consider routing your feeds to a secondary box on the premises, or perhaps to an off-site box all together. Tons of options there. Maybe you could run an rsync job via cron every 60 seconds and sync the data over SSH to another box, whether it be on the same LAN or at another property. lsyncd looks interesting too, which seems to be (based on 10 seconds of reading) a "live" rsync between two servers. Worth considering. Keep in mind if anybody breaks in and steals the box, you got nothing. Having a 2nd up-to-date box running would be the ultimate combo.
Linux is free. Motion is free. The computer would be cheap (Craigslist or repurpose one you already have). The biggest cost here would be the cameras... and believe me, you get what you pay for. Food for thought.
For what it's worth, I've used ZoneMinder heavily, but it had random crashes and populated my error logs with thousands of errors I couldn't ever come to terms with. Motion has yet to let me down. Sure, it has no GUI and runs entirely as a daemon, but it's rock solid in terms of reliability and has given me zero reason to consider anything else.
Here's a Motion tutorial I set up earlier this year. Note that there is a Part 2 on YouTube as well. http://www.youtube.com/watch?v=NwDLkMPLTw0
I posted this anonymously but now I can't find it on the listing here. If this is a repeat from another post (that I cannot find), I apologize. I'm not sure if my thoughts here will be directly in line with what you want, but I wanted to share what I did in case it would help.
To start, ZoneMinder is a project that I have a soft spot for. It's a very complex application that works moderately well than even some brand new proprietary solutions out there today. That said, ZoneMinder has to go through a monumental facelift before I would consider using it again. Last I used it, it would run for a few minutes then just stop recording and populate thousands of errors in my syslog. ZoneMinder has had some recent developer activity with some individuals who are taking it upon themselves to do work on it and patch it accordingly. The problem is, these individuals don't have access to patch the core version in the repos. I wouldn't be surprised if a large update comes out soon or that ZoneMinder gets forked under a different name with all of the updates. Either option is possible. That said, ZM isn't my software of choice at the moment.
Instead, I use Motion. Just a quick disclaimer, Motion is admittedly not for Grandma Edna who never used Linux before. It's something that requires a little bit of setup. It's a daemon, not a GUI. You have to create the directories for each camera feed. You have to adjust all of the parameters you want within the config file. You have to lay down the initial foundation upon which Motion will run on. If you want some insight with getting started, have a look at my YouTube tutorial I set up a few months ago. http://www.youtube.com/watch?v=NwDLkMPLTw0 (take note there's also a Part 2)
Motion works by watching the MJPG stream of your camera and taking snapshots accordingly. Those snapshots can be configured to stay regular JPG's, or you can turn off JPG's all together and have the system stitch them into an avi file and have more of a video-esque playback. Because MJPG isn't that fantastic with compression, it's literally impossible to have a flawless amazingly epic jaw dropping 3000 FPS feed that looks like BluRay quality. MJPG is solid, but it's not something you would want to be running as a traffic cam where every second makes a tremendous difference. The reality is when it comes to surveillance footage, it only takes a single JPG to really capture the face of a crook. MJPG is very well suited for things like that, so running an MJPG setup at 2, 5, 7, 10 FPS, whatever it may be could very well be a home run.
As I said, Motion has no GUI. You may be wondering, but wait, I want to have a montage of all video feeds actively running. You can do that relatively easy, but it'll take a little bit of leg work. Here on the Motion FAQ I posted some ideas as to what you can use to create your own montage. This will be very basic with no additional features, but you'll see all cameras running at once. Likewise, you can click on each feed to see it full screen. I built my own motion.html file and just keep it saved locally and open it in a web browser when I want to have view. I use Method 2, but each one should serve its purpose: http://www.lavrsen.dk/foswiki/bin/view/Motion/FrequentlyAskedQuestions#How_do_I_see_more_than_one_camera_stream_at_a_time_63
I personally run dual streams. I have Motion running at 1 FPS with the MJPG stream of my cameras which saves the JPG's accordingly to the specific directory for that camera... meaning my camera out front will save the JPGs in/media/surveillance/front_cam/snapshots. On top of that, I also run 24/7/365 full time recording, which utilizes the H264 stream of my cameras. Motion does not support H264, so this particular stream is not involving Motion at all. Motion is only dealing with MJPG. My cameras have
Spare us your whining.
Find an old computer, something that isn't exactly an Intel Atom but has some sort of horsepower to it. A Core 2 Duo would be perfect. Install a Linux distro on it (I use Ubuntu) and install "Motion" from the repos via sudo apt-get install motion. Motion is a motion detection service that runs as a daemon, so it starts once the system fires up. It works based on MJPG streams, so you won't get epic 3000 FPS HD 1080 quality shots, but if you run the cameras at say 5 FPS, you're still getting 5 JPG snapshots per second, which is often more than enough to ID somebody. Cameras could be a wide range, but the cameras will dictate the quality of image you get, so do your homework beforehand. Wired is always preferred to wireless, but I've used wireless cameras that were "okay". I wouldn't consider them for a situation like this, though. Also, consider routing your feeds to a secondary box on the premises, or perhaps to an off-site box all together. Tons of options there. Maybe you could run an rsync job via cron every 60 seconds and sync the data over SSH to another box, whether it be on the same LAN or at another property. lsyncd looks interesting too, which seems to be (based on 10 seconds of reading) a "live" rsync between two servers. Worth considering. Keep in mind if anybody breaks in and steals the box, you got nothing. Having a 2nd up-to-date box running would be the ultimate combo. Linux is free. Motion is free. The computer would be cheap (Craigslist or repurpose one you already have). The biggest cost here would be the cameras... and believe me, you get what you pay for. Food for thought. For what it's worth, I've used ZoneMinder heavily, but it had random crashes and populated my error logs with thousands of errors I couldn't ever come to terms with. Motion has yet to let me down. Sure, it has no GUI and runs entirely as a daemon, but it's rock solid in terms of reliability and has given me zero reason to consider anything else. Here's a Motion tutorial I set up earlier this year. Note that there is a Part 2 on YouTube as well. http://www.youtube.com/watch?v=NwDLkMPLTw0
I posted this anonymously but now I can't find it on the listing here. If this is a repeat from another post (that I cannot find), I apologize. I'm not sure if my thoughts here will be directly in line with what you want, but I wanted to share what I did in case it would help.
/media/surveillance/front_cam/snapshots. On top of that, I also run 24/7/365 full time recording, which utilizes the H264 stream of my cameras. Motion does not support H264, so this particular stream is not involving Motion at all. Motion is only dealing with MJPG. My cameras have
To start, ZoneMinder is a project that I have a soft spot for. It's a very complex application that works moderately well than even some brand new proprietary solutions out there today. That said, ZoneMinder has to go through a monumental facelift before I would consider using it again. Last I used it, it would run for a few minutes then just stop recording and populate thousands of errors in my syslog. ZoneMinder has had some recent developer activity with some individuals who are taking it upon themselves to do work on it and patch it accordingly. The problem is, these individuals don't have access to patch the core version in the repos. I wouldn't be surprised if a large update comes out soon or that ZoneMinder gets forked under a different name with all of the updates. Either option is possible. That said, ZM isn't my software of choice at the moment.
Instead, I use Motion. Just a quick disclaimer, Motion is admittedly not for Grandma Edna who never used Linux before. It's something that requires a little bit of setup. It's a daemon, not a GUI. You have to create the directories for each camera feed. You have to adjust all of the parameters you want within the config file. You have to lay down the initial foundation upon which Motion will run on. If you want some insight with getting started, have a look at my YouTube tutorial I set up a few months ago. http://www.youtube.com/watch?v=NwDLkMPLTw0 (take note there's also a Part 2)
Motion works by watching the MJPG stream of your camera and taking snapshots accordingly. Those snapshots can be configured to stay regular JPG's, or you can turn off JPG's all together and have the system stitch them into an avi file and have more of a video-esque playback. Because MJPG isn't that fantastic with compression, it's literally impossible to have a flawless amazingly epic jaw dropping 3000 FPS feed that looks like BluRay quality. MJPG is solid, but it's not something you would want to be running as a traffic cam where every second makes a tremendous difference. The reality is when it comes to surveillance footage, it only takes a single JPG to really capture the face of a crook. MJPG is very well suited for things like that, so running an MJPG setup at 2, 5, 7, 10 FPS, whatever it may be could very well be a home run.
As I said, Motion has no GUI. You may be wondering, but wait, I want to have a montage of all video feeds actively running. You can do that relatively easy, but it'll take a little bit of leg work. Here on the Motion FAQ I posted some ideas as to what you can use to create your own montage. This will be very basic with no additional features, but you'll see all cameras running at once. Likewise, you can click on each feed to see it full screen. I built my own motion.html file and just keep it saved locally and open it in a web browser when I want to have view. I use Method 2, but each one should serve its purpose: http://www.lavrsen.dk/foswiki/bin/view/Motion/FrequentlyAskedQuestions#How_do_I_see_more_than_one_camera_stream_at_a_time_63
I personally run dual streams. I have Motion running at 1 FPS with the MJPG stream of my cameras which saves the JPG's accordingly to the specific directory for that camera... meaning my camera out front will save the JPGs in