Slashdot Mirror


Security Camera-to-DVR Setup on Linux?

mrperkins asks: "I have been asked to help a friend setup a Linux DVR (Digital Video Recording) system for security cameras. Previously this has been done on Windows XP using Avermedia video capture cards from the MP3000 and MP5000 series, and using their bundled software. They have a Linux version but the software is horribly broken. The Windows software allows playback/recording/backup from 4-16 cameras. This works reasonably well but certainly has it's share of problems - the PC's hardware being only one. Can this be done on Linux using Free Software and compatible hardware? I have heard that the frame rates achievable under video4linux are simply too slow, but I would like to prove otherwise! Are there any software packages that can do this kind of thing (not just a single stream but a fully featured package)? Also, what cards (pref. up to max $200US) would you recommend? If anyone is already doing this kind of thing please let me know what you're using!"

7 of 36 comments (clear)

  1. Low Frame Rates? No Problem. by acramon1 · · Score: 3, Informative

    Although the frame rates may be low (I don't know, never tried), I can't imagine a necessity for high frame rates when it comes to digital recording for security. Certainly 5 FPS should be enough to get a good shot at a criminal in the act.

    But if you don't want to take any chances, I suppose the higher the FPS, the better.

    1. Re:Low Frame Rates? No Problem. by TykeClone · · Score: 2, Informative
      Actually, wouldn't even 1 FPS be good enough for security - people don't move fast enough to pass the entire field of view for the camera in less than a second.

      The best solution would be to take several pictures per second when movement is detected within the field of view.

      --
      A fine is a tax you pay for doing wrong and a tax is a fine you pay for doing all right.
    2. Re:Low Frame Rates? No Problem. by asteinberg · · Score: 3, Informative

      Try Motion. I've messed around with it in the past and it seems to work great.

      --
      The first ever Ultimate Frisbee video game: here (now
  2. Motion by angst_ridden_hipster · · Score: 4, Informative

    Try Motion.

    I have a security system for my house running on an older version of Motion. This is what can happen when a gadget-freak has a paranoid girlfriend...

    The system has more than three and fewer than nine cameras, some obvious, some concealed in and around the house. Each camera goes into a BT878-compatible card (some dedicated cards, some multiport).

    When motion is detected, I can capture on the order of 10-15 fps (not at stunning resolution, admittedly, but 320x240 pixels is good enough for me). If there is motion on two or more cameras, the frame rate decreases. Captured images are saved as timestamped JPEGs in a hierarchical directory structure, along with MPEGs that are assembled of each incident. This is not a particularly mighty machine; it's an Athlon 1800+ with 512MB memory. The limiting factor tends to be the PCI bus when you have a lot of cameras.

    Motion supports some nice features. You can set noise and motion detection threshholds on a per-camera basis. You can use a 256-level grayscale image for a sensitivity map, so you can mask certain regions out or decrease their contribution to triggering the recording (useful if plants sway in the breeze). You can label individual cameras with descriptive text ("Front Door"), and all frames are time and date stamped.

    I have some custom scripts that manage disk space consumption, deleting the oldest data when drive capacity goes below a set level. I can maintain several week's worth of data in normal conditions. I monitor my setup with a secured Apache setup that groks the file layout, and provides some additional telemetry.

    If you need to view data in realtime (normally, I don't), you can use something like Cambozola. If you look at the Motion email archives, you'll find postings on how to run multiple Cambozola applets in a single browser window.

    You can do cool stuff, like linking motion detection alarms to scripts. When a known burglary suspect was seen casing the joint, I had some of the cameras send an email to page my phone when they detected motion. Some of the images captured were useful for the police in an ongoing investigation.

    Also noteworthy, Motion has one of the friendliest and most helpful communities of any OS project I've been involved with. The mailing list is a great resource, and the maintainers will often go out of their way to help on even the most bone-headed newbie configuration questions on unsupported hardware.

    --
    Eloi, Eloi, lema sabachtani?
    www.fogbound.net
  3. Rolling your own by KingOfBLASH · · Score: 2, Informative

    Rolling your own through a shell script shouldn't be hard. MPlayer supports grabbing video and compressing it on the fly (see link). So create 2 shell scripts, one to switch files for each camera (have an alpha and beta file), and one to backup the files to your favorite media. Then run a cron job. Every hour (or day) switch the files and do whatever you need with the files. It should even be possible to create redundant copies across the network, so you can keep a copy safe.

  4. Re:I'll be doing something similar shortly by Dibblah · · Score: 2, Informative

    In fact, it has one input, internally multiplexed into the card. Your app will have to grok this.

    What this means is the maximum frame rate while running all inputs is somewhere under 15fps / card, switching between the inputs as required between frames, which is still acceptable.

    I'd also suggest looking on ebay

    Unless, of course, you're paranoid enough not to give your address to someone that is selling security gear.

  5. I know this one by thefiish · · Score: 3, Informative

    Disclaimer: I sell these & other dvr type products.

    If you are going for Windows use a GeoVision card.
    -Their variety of features is better than most. -The question of stability comes down to the OS. The application runs fine for months - Streaming via net, Remote recording etc etc

    If you go Linux you can try the HiCap card. It also has a windows software package. The Linux software is not as good as the Windows one but for a home user its pretty good. These cards only go up to 200fps, so for PAL you are limited for 8 cameras for Real-time Display.

    Please note that I am still searching for a card supported by Linux that has every feature I would like to sell but for a home user these are more than enough for basic door monitoring while blocking out that waving tree to use motion detection.

    Both cards support up 16 cameras - depending on the model with the smallest being 4 (still has same features). Motion etc & pretty must anything else you want.

    Price range AU$400-2000.
    Google for links. Id be biased :D

    --
    and the monkey flips the switch