I want to write AVStream minidriver for Video capture card
so that driver should support streaming from mutliple cards in same system
at a time
so how should i go about it…??
whether i should create separate thread for each device instance or any
thing else???
Thanks
Pravin G.
pravin gawale wrote:
I want to write AVStream minidriver for Video capture card
so that driver should support streaming from mutliple cards in same
system at a time
so how should i go about it…??
whether i should create separate thread for each device instance or
any thing else???
You don’t have to do anything, except the usual advice to avoid global
variables. Every card will have its own device instance, each device
has its own filter, each filter has its own pins. They won’t even know
there are other instances running.
It’s interesting to me that you would think this would be a problem.
Have you done WDM drivers?
–
Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.
Hello Tim,
so should i call advice 2 times to create device instance for 2 different
cards…
and another thing is
i want to scale video frame capture by card
How should i go about it
In kernel: is there any specific filter available in AVStream class for
scaling …???
or
In application: i can do same using DirectShow filters and if yes then
How…??
any ways i am fresher to WDM drivers
On Feb 5, 2008 12:18 AM, Tim Roberts wrote:
> pravin gawale wrote:
> > I want to write AVStream minidriver for Video capture card
> > so that driver should support streaming from mutliple cards in same
> > system at a time
> > so how should i go about it…??
> > whether i should create separate thread for each device instance or
> > any thing else???
>
> You don’t have to do anything, except the usual advice to avoid global
> variables. Every card will have its own device instance, each device
> has its own filter, each filter has its own pins. They won’t even know
> there are other instances running.
>
> It’s interesting to me that you would think this would be a problem.
> Have you done WDM drivers?
>
> –
> Tim Roberts, xxxxx@probo.com
> Providenza & Boekelheide, Inc.
>
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>
pravin gawale wrote:
so should i call advice 2 times to create device instance for 2
different cards…
No, **YOU** don’t do anything. The plug-and-play system will do this,
as it does for every kind of device. One of the great benefits of PnP
is that, unless you do something stupid, a driver can handle multiple
devices for free, without doing anything else. As I said, the two
device instances won’t even know there are others running.
i want to scale video frame capture by card
How should i go about it
In kernel: is there any specific filter available in AVStream class
for scaling …???
or
In application: i can do same using DirectShow filters and if yes then
How…??
You do it in the application. Scaling is too expensive to be done in
kernel mode. Generally, you want scaling at the last minute for display
purposes. In that case, the application should just change the size of
its visible window. The renderer will use the graphics card’s overlay
to do the scaling in hardware, at no cost.
If you really need to scale the video on your own, say to save it to
file, then you will need a scaling filter. DirectShow does not provide
one. I believe the ffdshow project includes one.
Why do you need scaling?
–
Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.