I see now that the answer is probably no. The bus portion of my fake hwid
would need to change for each device enumerated which would get quite ugly
quite quickly.
Get Outlook for iOS<https://aka.ms/o0ukef>
________________________________
From: wdmaudiodev-bounce@xxxxxxxxxxxxx <wdmaudiodev-bounce@xxxxxxxxxxxxx> on
behalf of wade dawson <wdawson61@xxxxxxxxx>
Sent: Friday, August 2, 2019 9:25:01 PM
To: wdmaudiodev@xxxxxxxxxxxxx <wdmaudiodev@xxxxxxxxxxxxx>;
wdmaudiodev@xxxxxxxxxxxxx <wdmaudiodev@xxxxxxxxxxxxx>
Subject: [wdmaudiodev] Re: Portcls dynamic subdevice naming question
Thanks for the response. Shouldn’t the uniqueness in the fake hardwareId I’m
creating prevent that?
Get Outlook for iOS<https://aka.ms/o0ukef>
________________________________
From: 20034253000n behalf of
Sent: Friday, August 2, 2019 5:22 PM
To: wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Re: Portcls dynamic subdevice naming question
The N- you are seeing is a discriminator which is added automatically by the OS
when multiple drivers exist on the same bus, in the event they have the same
name. It is generated automatically by the system at endpoint creation time, so
it can't be overridden by the driver.
-Gary Daniels
Microsoft Audio Silicon team
Sent from Outlook<http://aka.ms/weboutlook>
________________________________
From: wdmaudiodev-bounce@xxxxxxxxxxxxx <wdmaudiodev-bounce@xxxxxxxxxxxxx> on
behalf of wade dawson <wdawson61@xxxxxxxxx>
Sent: Friday, August 2, 2019 2:13 PM
To: wdmaudiodev@xxxxxxxxxxxxx <wdmaudiodev@xxxxxxxxxxxxx>
Subject: [wdmaudiodev] Portcls dynamic subdevice naming question
We have a driver that creates multiple filters for a mutli-channel audio
device. I have created media category entries and assigned the GUIDs to the
PCPIN_DESCRIPTOR.Name fields of bridge pins referenced by the
PCFILTER_DESCRIPTOR for each subdevice. This is working and the first line in
the Windows->Sounds->Playback|Recording display for each filter correctly
displays this customized name.
The problem has to do with the second line. It ends up as "N - MyCompany USB
Audio."; where N increments for each unique usb device vid.pid. I would like
to customize the second line of the display to include the device name and
remove the "N - " bit.
The second line of the display (minus the "n -" part) is as it was originally
populated from the inf DeviceInstall HKR entries and, in this case, appears to
live at:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\MMDevices\Audio\Render\{f3775b64-05e1-4050-96c7-960cee49a362}\Properties\\{b3f8fa53-0004-438e-9003-51a46e139bfc},6.
Manually locating this reg value and changing it for a given device+filter
does indeed change the line displayed by the panel.
Is there an official way to control / influence this value?
It might be of note that the portcls miniport (adapter) driver is loaded atop a
PDO created by a SW enumerated root driver. I am calling
WdfPdoInitAddDeviceText() in the creation of the PDO that the audio driver is
loaded for but that text is never displayed. The fake hardwareID created by
the swroot driver includes the vid/pid to create a unique hardware id for
device matching.
Any help is, as always, greatly appreciated.
-wade