[wdmaudiodev] Re: AVStream driver communication from user mode

  • From: "alexander ivash" <elderorb@xxxxxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Sat, 18 Jun 2016 01:21:38 +0300

You mean from a DIFFERENT user-mode application?

Thats exactly what I need. Let say somebody created my filter via graphedit and now I need to feed it with some data from my app. I was expecting there might be no simple answer on this, so at the moment I'm thinking about assigning some 'Id'-s to all the filters created and then exposing this Id-s as properties to user level so every app can query it.. And then use method / property / direct DeviceIOControl to pass all the necessary info to 'current' instance to allow it to 'dispatch' request to proper instance.. But it seems a bit ugly/weird, I just thought there might be the right way to achieve the same functionality..


Tim Roberts <timr@xxxxxxxxx> писал(а) в своём письме Fri, 17 Jun 2016 20:56:37 +0300:

Alexander Ivash wrote:
Is it possible to communicate with filter created via 'graphedit' from
user mode application?

You mean from a DIFFERENT user-mode application?  It depends.  If a
DirectShow application registers itself in the Running Object Table,
GraphEdt has the ability to connect to that graph from a different
process.  To be honest, I've never explored exactly how it does that.
You can control many things about the remote graph.


'BindToObject' call seems to lead to creation of new filter instance,
but what I need is to communicate with existing filter instance.

That's unusual.  What are you planning to do?  If this is an AVStream
driver that you control, you can handle this yourself.  You can send
custom property requests through your new filter instance and have the
driver tell you things about the other instances.  AVStream drivers are
hierarchical:  each hardware device has one device object, with one or
more filters, each of which has one or more pins.  All of the filters
report up to the device, so it can do some cross-communication.


Also, how to enumerate all the filter instances from user mode? Is
there any way how to distinguish them? (By id or something).

The AVStream driver can do that (although there isn't really an ID), but
it's all internal to the driver.



--
Написано с помощью почтового клиента Opera: http://www.opera.com/mail/
******************

WDMAUDIODEV addresses:
Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx
Subscribe:    mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe
Unsubscribe:  mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe
Moderator:    mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx

URL to WDMAUDIODEV page:
http://www.wdmaudiodev.com/

Other related posts: