Date: Thu, 11 Oct 2007 12:28:47 +0300 From: Achilleas Mantzios <achill@matrix.gatewaynet.com> To: Mark Tinguely <tinguely@casselton.net> Cc: freebsd-multimedia@freebsd.org Subject: Re: Zoneminder and multichannel cards Message-ID: <200710111228.47687.achill@matrix.gatewaynet.com> In-Reply-To: <200710051443.l95EhAOV066689@casselton.net> References: <200710051443.l95EhAOV066689@casselton.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Just a question, in context with our previous discussions.
I managed to capture video from more than 1 camera, in zoneminder.
I'd like to ask, whats the theoritical max fps for each of 4 cameras using the
bktr driver in its FreeBSD-6.2 state?
In my code, with METEOR_CAP_CONTINOUS (single camera) it can do
(as ZM reports) 25 fps (which AFAIK is good), whereas with all 4 cameras
and by using METEOR_CAP_SINGLE, the fps drop down to 2.5 fps/camera.
Is that the max the driver can do, or is my code in trouble?
Where is what i do (pseudocode):
void initialize() {
if (single camera) {
c = METEOR_CAP_CONTINOUS;
ioctl(m_videohandle, METEORCAPTUR, &c);
}
}
void PreCapture(int channel) {
if (number_of_cameras > 1) {
/* this runs only when number of cameras are 2 or more */
/*stop continous capture */
int tmpc = METEOR_CAP_STOP_CONT;
/*1*/ ioctl(m_videohandle, METEORCAPTUR, &tmpc);
/* set the input */
int tmpint=bktr_dev[channel];
/*2*/ ioctl(m_videohandle, METEORSINPUT, &tmpint);
/* 3 set single capture mode */
tmpc = METEOR_CAP_SINGLE;
/*3*/ ioctl(m_videohandle, METEORCAPTUR, &tmpc);
}
}
The PreCapture method is never called when number_of_cameras > 1.
In case (number_of_cameras > 1), the operations "1" and "3" are needed to be
run only the first time that capture() is run. Subsequent runs dont need
those.
Has the above code any flaws?
If i try to remove syscalls "1","3" from runs 2,3,4,... whould i have better
performance?
Any ideas are wellcome.
--
Achilleas Mantzios
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200710111228.47687.achill>
