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.
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
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
Any help is, as always, greatly appreciated.