Page 1 of 1

loss of signal alarm with remote camera

Posted: Fri Mar 28, 2008 6:28 pm
by codecannon
I am using the following

ubuntu 7.10
alix 3c2
Logitech quickcam communicate deluxe
uvcvideo driver (latest from their version control)
mjpg_stream
zoneminder from apt-get with universe/multiverse on

I have zm set to 3 fps, and mjpg_stream I have tried from 3 to 10 fps, and I geep getting alarms of "signal" which I assume are loss of signal alarms, but according to the documentation those should not be generated if you are using a remote cam. I tried checking the box in options where it asks if you will be using networked cameras and that did not stop the loss of signal alarms. libjpeg was failing a couple of places when zm was trying to put the timestamp on the images so I coded around that to see if it helps. I am still getting loss of signal alarms (about 3 a minute) which is making my event list huge. Is it possible that if there is some type of error processing the image that it is assumed to be due to a loss of signal event, and the fact that it is a networked cam is missed? If not, is there any way to completely disable any and all loss of signal alarms?

Thanks in advance for any help.

Re: loss of signal alarm with remote camera

Posted: Sun Mar 30, 2008 6:47 pm
by cordel
codecannon wrote: I geep getting alarms of "signal" which I assume are loss of signal alarms, but according to the documentation those should not be generated if you are using a remote cam. I tried checking the box in options where it asks if you will be using networked cameras and that did not stop the loss of signal alarms.
Have you restarted ZM since the change so the settings can take effect?
codecannon wrote: libjpeg was failing a couple of places when zm was trying to put the timestamp on the images so I coded around that to see if it helps.
I'd be interested to know more about this as in what errors, and what you needed to do.

Posted: Sun Mar 30, 2008 11:14 pm
by codecannon
Yes, I restarted everything, even did a full reboot.

ljbjpeg

basically commend out a line

if (cinfo->marker->discarded_bytes != 0) {
/* WARNMS2(cinfo, JWRN_EXTRANEOUS_DATA, cinfo->marker->discarded_bytes, c); */
cinfo->marker->discarded_bytes = 0;
}

in jdmarker.c

Been having the same problem...

Posted: Wed Apr 09, 2008 8:47 pm
by rwalker
I have 2 network cameras. One is a Airlink101 AIC250W (works flawlessly) and a TrendNet TV-IP400W which has the problem (about 20-100 times a day). I have the fps set to 5/10 for both cameras with the same setings on both. Tried everything I could think of, including isolating the TrendNet camera on it's own access point, so it is not a connectivity or bandwidth issue.

Running 1.22.3 rpm on Fedora 8.

Roy

Posted: Fri Apr 18, 2008 12:00 pm
by codecannon
I located the problem upon a code review.

Issue is in zm_control.cpp

bool Monitor::CheckSignal( const Image *image )

is what tests to see if the signal is lost, it is called in

int Monitor::PostCapture()
{

and returns true if the camera is remote.

However PostCapture calls CheckSignal

gettimeofday( image_buffer[index].timestamp, &dummy_tz );
if ( config.timestamp_on_capture )
{
TimestampImage( &image, image_buffer[index].timestamp->tv_sec );
}
image_buffer[index].image->CopyBuffer( image );

shared_data->signal = CheckSignal( &image );


just after it adds the timestamp. If there is a failure adding the timestamp, then CheckSignal is not called, so shared_data->signal is false. If there were other images captured with a sucesssful timestamp, then shared_data->signal is true. This causes


bool Monitor::Analyse()
last_signal

stuff to see if signal changed and generates the event.

So last_signal stuff needs to be ignored if camera is remote.