Select your language

I recently had a frustrating age trying to get the latest version of Zoneminder set up on my Pi 4.

My conclusion is that version 1.36 is unusable, yes it has a very nice look and feel compared to the older versions but it seems that the functionality has been compromised somewhere along the line.

I have been a Zoneminder user for many years and have a higher than basic understanding of the software. Previously I had been using version 1.32 on Raspian 'Buster' successfully for some time and it was quite acceptable. The decision to upgrade the Pi to 'Bullseye' and the Zoneminder to a newer version due to security concerns was not difficult following a number of well published vulnerabilities. Thoroughly reading various posts on the subject of installing and running Zoneminder caused me to believe that I should install from the ZMRepo site.

To avoid any interference from 'hangover' software and settings I performed the install on a clean system. Rigorously following the 'recommended' process it all seemed to go well. I did like the improved layout and presentation. However, the important thing (in my view) for a home surveillance system was the quality of the images recorded, the reliability of the system to detect the events and the processing speed.

How disappointed was I ? Extremely !!.

There was no way I could get the system to capture live feeds from my three cameras at any more than 6-7 fps. Admittedly, the system performed best at the default settings but the event capture processing was abysmal and the processes consumed all available memory leaving nothing for the event processing. No matter how many buffers, pre-event and post-event frames I allocated the process simply failed to capture the alarm events. The trigger fired but the capture was often too late to record the event. When the recording was triggered in time then the recorded imaged were too blocky or 'ghosted' to identify anything.

I changed the camera settings to reduce the throughput, shorter inter-keyframe gaps, everything I could think of to reduce the load on the software. I even ran with just one camera reduced to 10fps with no success. My Pi has 8Gb RAM and is connected to a remote Mariadb10 server via Gbit ethernet so hardware performance should not be an issue, also bearing in mind that the previous setup was working nicely.

With a continued hope on the ZMRepo repository I re-initialised the system and tried version 1.34 from the store. This was similarly poor and, although the capture rate was improved to 14-16fps, the analysis rate and recorded events were still not good enough even if the trigger managed to start a recording.

Time to step back and see what could be wrong, I had been reading through many, many blog sites, wikis and forums and there is so much conflicting information out there so it struck me that maybe the Raspian repository has the software.

Yes, it does - and this proved to be the correct route. I really wish I had just done this from the start.

You can see my installation process here in another blog entry.

I simply used the latest Raspian Bullseye image from 30-10-2021 and installed Zoneminder 1.34 without changing any of the apt sources.

Now, with the cameras returned to 24fps and inter-frame gap of 48, I see 20fps in daylight mode (10fps at night under IR light) and the analysis is averaging at 16fps. Alarm triggers are handled correctly and the mp4 recording happens almost in real time even though the storage is on a NFS share on my NAS machine along with the database storage. It handles 3 simultaneous alarm events without spluttering to a halt.

Needless to say I am once again happy with my surveillance system.

No comments on “Zoneminder on Raspberry Pi”

Comments are closed

The comments for this content have been closed automatically; it's been a while since it was published.