How to create virtual device in AVStream mini driver

Hi All,

I am developing an AVStream mini driver which was modified from DDK sample avshws. The hardware is a PCI device with four cameras input. I can just see one device object for each physical PCI device, therefor in user mode i can just see one source filter.
I wonder is there an approach that i can create a device object for each camera, that is to say, create 4 functional devices for each physical PCI device. In that case, i can see a source filter for each camera.

thanks in advance!

xxxxx@gmail.com wrote:

I am developing an AVStream mini driver which was modified from DDK sample avshws. The hardware is a PCI device with four cameras input. I can just see one device object for each physical PCI device, therefor in user mode i can just see one source filter.
I wonder is there an approach that i can create a device object for each camera, that is to say, create 4 functional devices for each physical PCI device. In that case, i can see a source filter for each camera.

There are several ways to do that. An AVStream driver can certainly
create multiple KS filters. That’s commonly done to support different
device types (like tuner, crossbar, and capture in a TV filter), but it
could be used to create multiple filters of the same type.

There is another (possibly easier) alternative. The AVStream framework
has the ability to act as a simple bus enumerator on your behalf. By
setting up some simple registry entries, you can have AVStream create
four PDOs for you. Then, your driver can match each of those. You’d
get 4 devices, each of which would have 1 filter. Here are MSDN pages
describing this.
http://msdn.microsoft.com/en-us/library/ms802466.aspx
http://msdn.microsoft.com/en-us/library/ms802465.aspx


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.