Page 1 of 1

Log says monitor is recording even if function is Monitor

Posted: Thu Mar 16, 2017 8:40 am
by Khurram
I am using 1.30.0 on Xenial. I have a few monitors defined for IP cameras through rtsp links with the function set to "Monitor". In the log, I frequently get entries that show the said monitors are either analyzing or even capturing. This is really confusing. What am I doing wrong?

Re: Log says monitor is recording even if function is Monitor

Posted: Thu Mar 16, 2017 2:11 pm
by rockedge
I don't think anything is wrong....I see these log messages as well but can not find anything that is not working as expected. A document detailing some of the error messages would be a help. But that I think is for the future.

Re: Log says monitor is recording even if function is Monitor

Posted: Thu Mar 16, 2017 3:05 pm
by SteveGilvarry
INFO Capturing at x.xx fps is fine, as Monitor still decodes the stream and uses images to provide monitor view. None should not show capturing.
Analysing does not sound right, if you give me the exact message I will track where in the code it is coming from to see why it would output that.

Re: Log says monitor is recording even if function is Monitor

Posted: Thu Mar 16, 2017 6:09 pm
by Khurram
I am attaching a screenshot of the log. I have marked the IP camera monitors by drawing a rounded rectangle around them. Btw, even though the log says the monitor is recording, no event is actually recorded.
zm log.png
zm log.png (123.92 KiB) Viewed 5062 times

Re: Log says monitor is recording even if function is Monitor

Posted: Fri Mar 17, 2017 8:18 am
by SteveGilvarry
Out of interest were these monitors at some point set to something other than "None" or "Monitor", if so has Zoneminder service been restarted since that change?

Re: Log says monitor is recording even if function is Monitor

Posted: Fri Mar 17, 2017 11:24 am
by rockedge
when I have a monitor set to "nodect" I will see

Code: Select all

2017-03-17 07:20:28.106871	zma_m2		5847	INF	DownStairs: 57000 - Analysing at 9.90 fps	zm_monitor.cpp	1296
2017-03-17 07:20:22.669362	zmc_m2		5796	INF	DownStairs: 57000 - Capturing at 10.00 fps	zm_monitor.cpp	3125

Re: Log says monitor is recording even if function is Monitor

Posted: Fri Mar 17, 2017 12:49 pm
by SteveGilvarry
The way the script reads for starting processes:
None = no zmc, no zma
Monitor = zmc (Capturing at xx.xx fps, not recording but it is capturing image from camera into memory, so you can view it), no zma
Anything Else = zmc (Capturing at xx.xx fps), zma (Analysing at xx.xx fps)

In Nodect zma runs and will run past the step that logs the fps message, but it skips the motion detection process. Reason for zma to run is it does all event related actions so when you want to trigger an event from external trigger zma gets that and makes the event.

If all monitors are Monitor then stopping and starting zoneminder should only result in zmc process for each camera. I think Khurram has monitors that have been in another mode, they have started zma. But then I think when they hit events they are getting the fact that they are in monitor mode and not recording.

Re: Log says monitor is recording even if function is Monitor

Posted: Fri Mar 17, 2017 3:03 pm
by Khurram
The IP camera monitors function have been either None, Monitor or Nodect. I have restarted zoneminder many times and the system has been restarted after every few days also. I still get these messages about Analyzing/Capturing. If I understand you correctly, in the log, "Capturing" is ok but "Analyzing" is not.

There are 16 IP cameras in all (in addition to old analog 16 cameras which I want replaced with the IP cameras). I want to use the motion detection feature on the camera itself and not in zoneminder (that is subject of another thread). In the pre IP camera setup, htop showed about 20-25% CPU utilization on this midrange i5 based system. With these 16 IP (additional) cameras in Monitor/Nodect mode, htop is showing 90% CPU utilization. This is when I started digging around the IP camera settings in zoneminder and came across the Anaylzing/Capturing lines in the log.

I really don't know what else to do. Maybe my zoneminder installation is corrupted and I should just start all over again. If I choose to do so, should I go for the h264 videostorage branch? Will the analog cameras work with this branch?

Re: Log says monitor is recording even if function is Monitor

Posted: Sat Mar 18, 2017 9:49 am
by SteveGilvarry
Yes Capturing = Good.
If your monitor is Nodect, the analysing = good also. Not sure how much processing it skips but I did see Nodect does not hit the motion detect code. If they are all in Monitor right now, stop and start zoneminder, then look for any zma process.

Regardless of what you are doing it will be decoding the 16 ip cameras to jpegs as that is how zm works right now. So fps and resolution are needed to tweak performance, we are working on fixing the need to decode when not analysing.

Re: Log says monitor is recording even if function is Monitor

Posted: Sun Mar 19, 2017 7:43 am
by Khurram
SteveGilvarry wrote:Yes Capturing = Good.
If your monitor is Nodect, the analysing = good also. Not sure how much processing it skips but I did see Nodect does not hit the motion detect code. If they are all in Monitor right now, stop and start zoneminder, then look for any zma process.
I put all monitors in "Monitor", stopped and restarted zoneminder. Now no zma processes are shown in the log. So all is good :D Thanks for all the help guys.