USB Video: Lots of questions



I'm afraid I find myself thrust into this strange world of drivers, transport
streams, miniports, codecs, etc. I've been programming in C for over 15
years, but I have almost zero experience with embedding programming, and none
at all with video, so please forgive any obvious ignorance. I'm not even
sure I'll be able to phrase the questions properly, because I'm still
struggling with understanding the basics. But here goes...

My company is developing a handheld PC. We're planning to run Vista on it,
and it will have two cameras -- one facing the user, one facing away, but
only one operational at a time, of course. These will be USB. I've been
tasked to find out some basic things for starters, and I hope someone here
can read through my poorly worded questions and provide some guidance.

1. Is there a standard interface to recognize an available camera? For
example, how does an app like a video chat program find it?
2. Do we need a special driver so apps can recognize the camera?
3. What does the data need to look like coming in so the miniport driver
(if any) will like us?

Hopefully these make enough sense so someone will understand what kind of
information I'm looking for, because honestly, I don't even understand the
questions. Or maybe someone has experience developing a device like this and
can offer some guidance.

I barely know where to start. I've read a few chapters of "Video
Demystified", and I might as well be reading Swahili. I'm wide-open to
suggestions as to how a newbie (re: drivers/video/embedded things) should
approach this very complex subject.

Thanks.

mic
key@xxxxxxxxxxxxx
.



Relevant Pages

  • Re: What have you tried?
    ... When we had the Device Driver book published in 1999, ... The only bad rating I got in my Systems Programming course was from a student who, ... The problem really starts in introductory programming courses. ... kernel thread was stupid. ...
    (microsoft.public.vc.mfc)
  • Re: this JTAG thing is a joke
    ... The 200KHz signal dies after eight or nine. ... Standard driver interface. ... write(mycard, "c:\my programming file.bit") ... Firewire, parallel port, serial port, etc. ...
    (comp.arch.fpga)
  • Re: Message queues (IPC)
    ... > I am very new to Linux programming. ... Since you're writing that you want to port a driver I don't know ... "UNIX Network Programming", Vol. 2. ...
    (comp.os.linux.development.system)
  • Re: OpenBSD C programming - getting started
    ... You are expected to know about programming language principles, ... You usually let the driver take care of that. ... I'd start with writing programs that don't dig deep into hardware, ...
    (comp.unix.bsd.openbsd.misc)
  • Re: Driver Development Newbie
    ... Also the full title of Walters book is "Programming the Windows Driver ... that's all the idea I have abt this. ...
    (microsoft.public.development.device.drivers)