Zoneminder and multichannel cards

Achilleas Mantzios achill at matrix.gatewaynet.com
Tue Oct 9 00:15:09 PDT 2007


Στις Παρασκευή 05 Οκτώβριος 2007 17:24, γράψατε:
> Achilleas Mantzios asks:
> >  So what i cant understand is:
> >
> >  1) How bktr understands about METEOR_DEV0, METEOR_DEV1, METEOR_DEV2,=20
> >  METEOR_DEV3, how does it distinguish the 4 channels in LMLBT4M?
>
> The device driver uses this ioctl to reprogram the input on the BT878.
>
> >  2) How could i arrange smth similar, provided its not very time
> > consuming? ( i am trying to do all this at home hours, and they are
> > extremely limited). If you could have an idea on how to (easily)
> > programmatically demux the inputs, i'd be grateful.
>
> I don't know how you are switching input relative to capture.
> Fields mixing from other frames can also be DMA overflows in the capture.
>
> In my opinion, if you have a working Linux version that you are happy with,
> I suspect it will take more time tweeking the FreeBSD driver than you want
> to spend. If you want to make some serious updates to the bktr driver,
> the project could use a bktr maintainer.

Finally i changed the way that zmc (zoneminder capture daemon) called the bktr
driver :

	c = METEOR_CAP_SINGLE;
	ioctl(m_videohandle, METEORCAPTUR, &c); 

instead of the old asynchronous way, where i had the effect of frames of the 
previous input interlacing with the current input.

	c = METEOR_CAP_CONTINOUS;
	ioctl(m_videohandle, METEORCAPTUR, &c); 

And i can say i have a working zoneminder for as many as 4 cameras!

I haven't done any extensive performance test, but some time i will try
to dig in zoneminder/video processing/theory a little bit more, and also
try the 3rd way of calling btkr/meteor (Memory mapped, multi-frame ring buffer 
synchronize capture). The one which uses a signal to notify the process
of the availability of the frames.
Should i look at it?  think i read somewhere this last one does not work.

Anyways,
a lot of thanx to Mark,Julian who helped me understand that this card is not
"multiplexed" at all, (like it is advertised).
It just switches inputs and its up to driver/user program to synchronize.

At the moment i can get about 5 fps, which is not bad, but not so good
either.
Anyways, it seems it needs some more work to come in par with the linux
version.

I contacted the guy who did the port, and he didnt seem to have addressed
configurations with local cameras, (he did his tests only with net cams),
and he just put in the local camera (bktr ) code from a previous unofficial 
port.
Also from what he said, he is not interested in submit a PR for the port.
Anyways, the port is there 
(http://www.zoneminder.com/forums/viewtopic.php?t=7862&postdays=0&postorder=asc&start=0),
my patch is there 
(http://www.zoneminder.com/forums/viewtopic.php?t=7862&postdays=0&postorder=asc&start=15)
and i think someone interested could pick it up and submit the port to 
FreeBSD.

Personally, (and i have practically zero video/audio programming experience)
i think the port is just a little far from being a fully operational and 
performing FreeBSD ZoneMinder port, with applications in monitoring,
security, surveillance, etc...

(This card also supports some kind of alarm output, but i dont know anything 
else about it).

>
> --Mark Tinguely.

-- 
Achilleas Mantzios


More information about the freebsd-multimedia mailing list