On 12/11/15 10:54, Mark Rogers wrote:
I have a couple of Wifi IP cameras that I'd like to record output from. I can either capture an image or (I think) an RTSP stream.
I just want to store them somewhere I can refer back to them in future if needed. Ideally making efficient use of storage.
Any suggestions?
At the moment I have ZoneMinder installed but it's quite big and heavy, I frequently find it isn't running (eg after a system update) and it stores all the images as JPEGs rather than as a movie, where I would have thought that the latter would be rather more efficient.
I personally would have thought that JPGs were better for storage space than a movie, esp if you want a snapshot every minute, hour, second (whatever). Also, jpgs would tend to be named with the timestamp embedded in them, or at the very least, the O/S would store the created time. Not something you'd necessary get from a movie. However, if you go down the batch file to change jpgs into a movie, there's a bunch of articles on-line about how to do things like this. One search phrase would be "use a rapsberrypi to make a time-lapse video", or "make a stop motion animation". There are various encoders, and ways of doing it so I won't go into it (as I'd have to google).
It crossed my mind I could probably script something that captured images at a regular frame rate and then turned batches of them into videos later, but there's probably a way to avoid reinventing the wheel.
Note: The camera is constantly seeing motion (it's view is through a tree apart from anything else) so motion detection isn't much use unless it can be quite intelligent.
If I recall correctly, some of the camera software (and I thought it was Zoneminder, but I could be wrong), has a facility to add a user-defined mask to the image it sees. This mask is excluded from motion detection. This might help. I've never done this so I don't know how easy it is.
I'm sure there must be a way of automating a task (using crontab?) to check if Zoneminder is still running, and starting it if it isn't. Checking for a PID, or grepping PS and starting it if it's not there?
Good luck. Steve