![]() The cameras have configurable resolutions and frame rates. I've configured it to record everything for 40 days. With a paintbrush tool you define what areas of the image you want to trigger motion. I tried several NVR applications and have settled on Xeoma (for now). My DIY NVR is a repurposed i5-2500k system, Ubuntu, zfs on 16 disks. Used the NVR for a couple weeks and found it next to useless. I found good pricing on multiple cameras by buying a Costco package. Roughly half the bandwidth, storage and CPU, but 16x as many cameras. Think of it this way: say you have only one camera, but it supports 4k resolution at 60fps (like big-budget movie studio quality). For now, I have a little script that creates actual h.264/mkv videos from the JPGs (using ffmpeg) and that radically improves the space efficiency. Last I read, they were working on a new version that deals in video natively, which should improve performance considerably. So it tends to be CPU and I/O heavy (since it was written back in the day when MPEG was the norm). That's one limitation of ZM, it stores "videos" as a sequence of JPG images. I use the main stream for motion detection (and capture only when my criteria is met), and the sub-stream for continuous recording (as a backup). My cameras actually support two streams: a high-resolution main stream, and a low-resolution sub-stream. Oh, also: in practice, you generally don't do continuous recording, but rather activate some kind of motion detection trigger. Intuitively, if there's a lot of redundancy in an image, it will compress better, but if it's highly variable, then it will not compress that well. But the specs I showed above don't tell the whole story, as how much compression you get from JPG conversion is highly dependent on the scene itself. To give you some real numbers, I looked at a few events for this camera: So in practice, you generally get much better numbers than my theoretical worst-case numbers presented here. What?! OK, in actuality, Zoneminder is saving JPG files, which are compressed images. So every second of video from this camera requres 4x1280x720x12 = about 42 MB, which would also equate to a storage system than can support 42 MB/s write speed. So, to use one of my cameras as an example: I have mine set lower than what my cameras actually support, because it's good enough for me.įrame rate is how many frames (pictures) are taken per time interval, usually expressed in seconds, i.e. ![]() This is mostly a function of what your camera supports. Resolution is the number of pixels per frame. Divide this by 8 to get the bytes per pixel (i.e. ![]() 32bpp, 24bpp, and 16bpp are common values. Bit-depth is what it sounds like: the number of bits per pixel. It comes down to resolution, bit-depth and frame rate. To plan how much storage and IO you need, you really have to do the math, and it's not that precise. And in fact, that's a recent upgrade, it used to be just a single 5400 spinning drive. Click to expand.For my setup, I just have a pair of 7200 rpm drives in software raid-1. ![]()
0 Comments
Leave a Reply. |