[wdmaudiodev] Re: How to bind a symbolic link to a mixer, midi or wave device name?

  • From: "Richard Fricks" <Richard.Fricks@xxxxxxxxxxxxx>
  • To: <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Wed, 29 Mar 2006 09:58:49 -0800

Looks like the path has changed for Vista. The WDK still states:

"WDMAud uses the Name GUID in the KSCOMPONENTID structure to look up a
"Name" key in the registry. This key is located under the registry path
name HKLM\System\CurrentControlSet\Control\MediaCategories."

So, I'll need to make sure we get this documented correctly.

Thanks for pointing this out.

-Richard


-----Original Message-----
From: wdmaudiodev-bounce@xxxxxxxxxxxxx
[mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] On Behalf Of Who Cares
Sent: Wednesday, March 29, 2006 9:46 AM
To: wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Re: How to bind a symbolic link to a mixer, midi
or wave device name?

Sorry, forgot to specify, that's 5344

Regards
Andrew


>From: "Richard Fricks" <Richard.Fricks@xxxxxxxxxxxxx>
>Reply-To: wdmaudiodev@xxxxxxxxxxxxx
>To: <wdmaudiodev@xxxxxxxxxxxxx>
>Subject: [wdmaudiodev] Re: How to bind a symbolic link to a mixer, midi
or 
>wave device name?
>Date: Wed, 29 Mar 2006 09:35:46 -0800
>
>My comments were directed at XP. Is this the platform you noticed the
>below behavior on?
>
>Thanks,
>-Rich
>
>-----Original Message-----
>From: wdmaudiodev-bounce@xxxxxxxxxxxxx
>[mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] On Behalf Of Who Cares
>Sent: Wednesday, March 29, 2006 8:59 AM
>To: wdmaudiodev@xxxxxxxxxxxxx
>Subject: [wdmaudiodev] Re: How to bind a symbolic link to a mixer, midi
>or wave device name?
>
>Hi Richard,
>
>I implemented this stuff you described here in great details, but it
>does
>not to seem to work as expected - in the "Audio devices" applet I still
>don't see the friendly name I specified. So I made some experiments w/
>the
>USB stereo device. It appears to be that the
>HKLM\System\CurrentControlSet\Control\MediaCategories\<NAME GUID>\Name
>value
>is not queried at all - I checked it with the regmon. And I found out
>that a
>friendly name for the "Audio devices" applet is obtained from the
>HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\MMDevices\Audio\Render\S
o
>meGuid\Properties\DEVPKEY_DeviceInterface_FriendlyName
>value - I have changed it there, it got changed in the "Audio devices"
>applet.
>
>Any clarifications?
>
>TIA
>
>Andrew
>
>
>
> >From: "Richard Fricks" <Richard.Fricks@xxxxxxxxxxxxx>
> >Reply-To: wdmaudiodev@xxxxxxxxxxxxx
> >To: <wdmaudiodev@xxxxxxxxxxxxx>
> >Subject: [wdmaudiodev] Re: How to bind a symbolic link to a mixer,
midi
>or
> >wave device name?
> >Date: Thu, 9 Feb 2006 09:11:55 -0800
> >
> >
> >Windows XP and following supports the property
> >KSPROPERTY_GENERAL_COMPONENTID. This allows audio devices to uniquely
> >identify themselves by controlling the value of their friendly name.
>The
> >basic idea is that you write your unique friendly name to the
registry:
> >HKLM\System\CurrentControlSet\Control\MediaCategories\<NAME
GUID>\Name
>=
> >"your unique device name".
> >
> >This value can bet set in your devices INF file using a statement
like
> >[xxxxx.AddReg]
>
>HKLM,"SYSTEM\CurrentControlSet\Control\MediaCategories\{946A7B1A-EBBC-4
>2
> >2a-A81F-F07C8D40D3B4}",Name,,"My unique device name"
> >
> >Or you can write this registry value when your driver loads in its
> >initialization routine. Note that the guid above needs to be unique -
> >run guidgen.exe to create one.
> >
> >You then implement support for the KSPROPERTY_GENERAL_COMPONENTID
> >property in your driver. KS.H includes a macro
> >DEFINE_KSPROPERTY_ITEM_GENERAL_COMPONENTID that you can use to help
> >define this. The audio system will use the Name GUID you return in
the
> >KSCOMPONENTID structure to look up a "Name" key in the registry. For
> >this example, the guid you would return from this property call would
>be
> >"{946A7B1A-EBBC-422a-A81F-F07C8D40D3B4}".
> >
> >This should address the issue of how to get your device to uniquely
> >identify itself. If the above isn't working or is but still doesn't
> >address the issue let me know as I would like to understand why.
> >
> >Thanks,
> >Richard Fricks
> >Technical Lead, Microsoft DDK
> >
> >
> >-----Original Message-----
> >From: wdmaudiodev-bounce@xxxxxxxxxxxxx
> >[mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] On Behalf Of uwe kirst
> >Sent: Thursday, February 09, 2006 8:30 AM
> >To: wdmaudiodev@xxxxxxxxxxxxx
> >Subject: [wdmaudiodev] Re: How to bind a symbolic link to a mixer,
midi
> >or wave device name?
> >
> >Yann Hamiaux wrote:
> >
> > >So far, I've been able to enumerate all MIDI symbolic link and get
> >their
> > >friendly name. However, when I have 2 devices with the same VID and
> >PID, the
> > >friendly name is exactly the same. While when I look to the list
>mixer
> >name
> > >they do have a different name "Mixer Device" and "Mixer Device
(2)".
> > >
> >Thats probably the situation under XP -> the instance id is added by
> >windows atomatically.
> >Under Vista the instance id is missing (thats at least my
experiance).
> >I tried to add it within my driver, but I found no reliable way of
>doing
> >
> >so. If you have two physical identical devices and you install them
> >one after each other while the other is not powererd, they will get
the
> >same name. If you now power them both, they will have the same name,
> >because the name is set during install not during driver load.
> >I personally would prefer to add the unique id owned by the device to
> >the friendly name, but this seem to be impossible because the names
are
> >added during install by the .inf file. If no other idea comes to my
>mind
> >
> >I think I will try to add a random (unique) name by my driver rather
by
> >.inf file. Maybee that will help?
> >
> > >So far,
> > >I deal with some SetupDi... functions to enumerate all devices in a
> > >category. I also, kind of reverse-engineer the GUID I need for the
> > >enumeration by looking to the registry under
> > >"Local_Machine\System\CurrentControlSet\Control\DeviceClasses\".
>Maybe
> >there
> > >is a .h file I should look to have a proper list of these GUID?
> > >
> > >
> > >
> >I was told that you generate these GUIDs by yourself with guigen.
They
> >are added during installation by the .inf file. The header file only
> >cointains some predefined (by microsoft) device types.
> >Uwe
> >
> >******************
> >
> >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/
> >
> >******************
> >
> >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/
> >
>
>
>******************
>
>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/
>
>******************
>
>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/
>


******************

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/

******************

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: