[Prev][Next][Index][Thread]
frameserv and clients
I'm currently working on a framserver for the Connectix
QuickCam. Basically, it's a unix domain sockets server that
waits for connections and upon getting them grabs a frame from
the camera using the libqcam.a (from qcam-0.3) routines and
shoves the frame down sockets to the client applications. This
implementation could easily be change/extended to use tcp/ip
connections so that you could have a machine grabbing frames and
clients elsewhere snagging them from across the network.
Anyway, what all this is geared toward doing is making the job
of accessing the camera a non-exclusive task. My goals are to
get an optimal frame rate while allowing more than one program
to get frames at the same time. From the sounds of a few
messages that I saw posted in the past day, the meteor grabber
code could be incorporated into the server very easily so that
those with a meteor could grab from it in the same manner.
Unfortunately, this is my first "real" sockets application, so
my implementation is still a bit lacking. I'm working on
getting things as speed efficient as possible, and I hope to
have all the sockets stuff working a whole lot more smoothly in
the next few days. Right now the client/server setup I have
works fine, but is a little heavy handed with CPU usage. The
problems I'm having that cause this are related to having to do
multiple write()s to get all the data out to the clients.
Does this sound interesting to anyone? I'm thinking about
making this into a full blown generic frameserver application
that could be used on many platforms and accessed with a
standard library that I'm working on as I go. I'm going to
reimplement my simple "snapshot" client using this library's
calls as soon as I get the library working. If anyone's
interested, I can slap a copyright on this stuff and pack it up
for anon ftp. I'm planning on trying to make my preliminary
release within the next week, but I thought I would offer the
source up to hackers here in case anyone wanted to help me fix
some of this stuff...
-matt
PS - the code is up and running and taking pictures every minute
and placing them at http://www.Glock.COM/~mmead/qcampics/snap0.jp
g
--
Matthew C. Mead
mmead@Glock.COM
http://www.Glock.COM/~mmead/