USB camera

John-Mark Gurney gurney_j at
Fri Aug 26 06:51:07 GMT 2005

mark at wrote this message on Thu, Aug 25, 2005 at 09:17 +0100:
> linimon at wrote:
> > > I think there would be a lot of support for this to happen, but it seems
> > > to be lacking in leadership and direction at the moment.
> > 
> > FreeBSD is not a top-down organization, it is bottom-up.  In terms of
> > getting new functionality in, it is not concepts such as "leadership"
> > and "direction" that are important, it is "volunteers" and "time" and
> > "determination".
> > 
> > Translation: this won't happen until and unless one or more volunteers
> > step up and put their time into it.
> Okay I'll rephrase. Somebody did step up, a Video4BSD spec was partially written and is probably still on the web somewhere. There a plenty of people interested in working on this (its probably quite a fun project), but nobody wants to step on anyone else's toes afaict.

Yep, I'm still interested, the only problem is lack of time, and also
the difficulty/time taken to write a spec and start banging out code...
I started writting it, but it's time consuming handling all the constants,
etc. necessary for such a large variety of options...

If people don't mind a base implementation in python, then I might get
back to it...  (and let someone else write the C parts of it)...

A recommendation to people who are looking at doing a video api, make
sure you read through some video docs and think you understand how it
works...  The Zoran 36067 MJPEG datasheet is what started me on it...
they let you hang multiple encoders and decoders on a single video bus...
of course you can have only one chip driving a bus at a time, but there
are various features like PIP where one chip will not drive the video
bus for part of the frame while another chip drives the bus durning
this time, and support things like mirroring the data on the bus to
both the MJPEG engine, the s-video encoder chip, and the overlay engine
for display to the video frame buffer (I don't remeber if the Zoran
MJPEG chip supports both MJPEG and video overlay at the same time)...

The V4L api lacks these features, though, none of these features are
needed for the basic web cam...

Another thing that drove me to the design of VideoBSD was the desire
to put the least amount of code in the kernel...   This would make it
easier to plug-in userland usb webcam implementations (like the opti
userland usb webcam image capture program that just needs ugen), and
not a set of special ioctls for a program to interface with it...

Hopefully this will inspire some people...  and if someone can get
me the specs to the ATI HDTV Wonder card, I'd definately look at
reviving the project (I already have the card, just need the specs..)

  John-Mark Gurney				Voice: +1 415 225 5579

     "All that I will do, has been done, All that I have, has not."

More information about the freebsd-multimedia mailing list