Hi
We have for many years exposed our hardware audio and video capture functionality to DirectShow through user mode source filters which communicate with our WDM driver via a IOCTL interface. We chose this method to allow new customers to interface with our hardware via DirectShow whilst maintaining an older, but well established, private API/SDK.
Recently some of our customers, with an eye to the future, have been asking about Media Foundation and upon investigation we have found that none of our user mode source filters are enumerated by Media Foundation. Reading MSDN seems to imply that we need to transition our WDM driver to an AVSTREAM driver for this to occur.
Rather than commit to the time (and cost) of such a rewrite is anyone aware of a way of “registering” our existing user mode DirectShow source filters with Media Foundation such that it they are automatically enumerated.
Thanks in advance
Steven
xxxxx@googlemail.com wrote:
We have for many years exposed our hardware audio and video capture functionality to DirectShow through user mode source filters which communicate with our WDM driver via a IOCTL interface. We chose this method to allow new customers to interface with our hardware via DirectShow whilst maintaining an older, but well established, private API/SDK.
That’s the tradeoff. I’ve always advised my capture clients to go
AVStream and put the magic in user mode, but I know that’s not a popular
answer.
Recently some of our customers, with an eye to the future, have been asking about Media Foundation and upon investigation we have found that none of our user mode source filters are enumerated by Media Foundation. Reading MSDN seems to imply that we need to transition our WDM driver to an AVSTREAM driver for this to occur.
Rather than commit to the time (and cost) of such a rewrite is anyone aware of a way of “registering” our existing user mode DirectShow source filters with Media Foundation such that it they are automatically enumerated.
No. Media Foundation cannot use DirectShow source filters. When you
have an AVStream driver, Media Foundation has its own separate
“devproxy” transform that serves the same purpose as “ksproxy” does in
DirectShow.
However, it is certainly possible to write a Media Foundation “Media
Source” to serve the exact same purpose as your DirectShow source
filter. The philosophies are similar, although everything is spelled
differently. There are sample Media Source MFTs available to use as a
base.
So far, I haven’t seen anything that Media Foundation does better than
DirectShow. I still do all my multimedia apps in DirectShow.
–
Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.
Thanks Tim, we will look further into the Media Source approach.
Steven