1. I want to write a device driver for a PCI video-capture card

And in ddk docs related topics are :

Kernel-Streming
AVStream Minidrivers
Streaming Minidrivers
Audio Drivers
Video Capture Drivers
USB Camera Drivers
DVD Minidrivers
Broadcast Driver Architecture Drivers
AV/C Client Drivers

in WHDC pages it says , KS is a former model of AVStream vs. vs.. But KS is
still in ddk docs
For the moment , can you guide me about my video-capture-driver challenge ,
KS or AVS ?
What about selecting framework -> streaming-mini, filter-centric or
pin-centric ??
And also what about AV/C Client drivers , do i need to write it ??
(Other resources will make me very happy , if available for streaming... )

2. DDK Docs say :

"Audio/Video streaming (AVStream) client minidrivers (Microsoft® DirectX®
8.0, Microsoft® Windows® XP and later versions of the
operating system) are typically written in C++. "

Why typically C++ ? Is it a must or an advice for good coding or anything
related with DirectX ?

3. What about needed minimum hardware knowledge for this project , what must
i know about my video-capture card to write it's driver ?
/* If anyone could provide any suggestions or insight, I'd be very
appreciative. */

Re: Video-Capture Card Device Driver ?? by Tim

Tim
Mon Jun 19 23:24:18 CDT 2006

"Akýn Öcal" <akin_ocal@hotmail.com> wrote:
>
>1. I want to write a device driver for a PCI video-capture card
>...
>in WHDC pages it says , KS is a former model of AVStream vs. vs.. But KS is
>still in ddk docs
>For the moment , can you guide me about my video-capture-driver challenge ,
>KS or AVS ?

You want to write an AVStream driver.

>What about selecting framework -> streaming-mini, filter-centric or
>pin-centric ??

The docs do talk about this, although the description is a bit confusing.
If you are getting video only, then there is virtually no difference.
Filter-centric might be a bit simpler. If you get video and audio, related
but separate, you probably want pin-centric.

>2. DDK Docs say :
>
>"Audio/Video streaming (AVStream) client minidrivers (Microsoft® DirectX®
>8.0, Microsoft® Windows® XP and later versions of the
>operating system) are typically written in C++. "
>
>Why typically C++ ? Is it a must or an advice for good coding or anything
>related with DirectX ?

The AVStream design lends itself nicely to a C++ architecture. All of the
AVStream samples are in C++. It is possible to rewrite them in C, but it
would be silly to do so.

>3. What about needed minimum hardware knowledge for this project , what must
>i know about my video-capture card to write it's driver ?

Everything. You have to know the register layouts, you have to know how
its DMA mechanism works in detail, you have to know when it fires an
interrupt and how to enable/disable them, you have to know how to change
the timing, you have to know whether it has low-power states and how to
engage them, etc. Your driver is the ONLY interface between your board and
the operating system. It encompasses ALL knowledge about the board.
--
- Tim Roberts, timr@probo.com
Providenza & Boekelheide, Inc.

Re: Video-Capture Card Device Driver ?? by Akin

Akin
Tue Jun 20 05:41:28 CDT 2006

Thank you very much for answers...
"Tim Roberts" <timr@probo.com> wrote in message
news:ante92h9hi647lei235qsup2lr8ju7bcnu@4ax.com...
> "Akýn Öcal" <akin_ocal@hotmail.com> wrote:
>>
>>1. I want to write a device driver for a PCI video-capture card
>>...
>>in WHDC pages it says , KS is a former model of AVStream vs. vs.. But KS
>>is
>>still in ddk docs
>>For the moment , can you guide me about my video-capture-driver challenge
>>,
>>KS or AVS ?
>
> You want to write an AVStream driver.
>
>>What about selecting framework -> streaming-mini, filter-centric or
>>pin-centric ??
>
> The docs do talk about this, although the description is a bit confusing.
> If you are getting video only, then there is virtually no difference.
> Filter-centric might be a bit simpler. If you get video and audio,
> related
> but separate, you probably want pin-centric.
>
>>2. DDK Docs say :
>>
>>"Audio/Video streaming (AVStream) client minidrivers (Microsoft® DirectX®
>>8.0, Microsoft® Windows® XP and later versions of the
>>operating system) are typically written in C++. "
>>
>>Why typically C++ ? Is it a must or an advice for good coding or anything
>>related with DirectX ?
>
> The AVStream design lends itself nicely to a C++ architecture. All of the
> AVStream samples are in C++. It is possible to rewrite them in C, but it
> would be silly to do so.
>
>>3. What about needed minimum hardware knowledge for this project , what
>>must
>>i know about my video-capture card to write it's driver ?
>
> Everything. You have to know the register layouts, you have to know how
> its DMA mechanism works in detail, you have to know when it fires an
> interrupt and how to enable/disable them, you have to know how to change
> the timing, you have to know whether it has low-power states and how to
> engage them, etc. Your driver is the ONLY interface between your board
> and
> the operating system. It encompasses ALL knowledge about the board.
> --
> - Tim Roberts, timr@probo.com
> Providenza & Boekelheide, Inc.