Hello!
I’m new to driver development and I’m working on a project for a “Virtual audio cable” that’s based on AudioMirror, which appears to be a hobby project that started with the SYSVAD sample and adapted it into a virtual audio cable. AudioMirror does work as advertised (and does crash sometimes as advertised).
However, my question is about assigning friendly names to the virtual devices. I found this article which explains it very well.
https://docs.microsoft.com/en-us/windows-hardware/drivers/audio/friendly-names-for-audio-endpoint-devices
I was able to follow these instructions to successfully set a friendly name on the virtual microphone device, but my attempts to set the friendly name for the speaker have been unsuccessful.
I’ve defined the friendly names in the INF with GUIDs
[PinNameRegistration]
HKR,%MediaCategories%\%GUID.Mic%,Name,,%Name.Mic%
HKR,%MediaCategories%\%GUID.Speaker%,Name,,%Name.Speaker%
[Strings]
GUID.Mic = "{ccc61975-19db-497a-9e35-479fc2fd1a94}"
GUID.Speaker= "{85e036af-6224-4631-a03a-39b37dfd37a9}"
Name.Mic= "My Virtual Mic"
Name.Speaker = "My Virtual Cable"
And then I updated the code to set the name GUIDs:
For the mic (which works) https://github.com/JannesP/AudioMirror/blob/master/AudioMirror/MicrophoneTopologyPropertiesh.h#L42
For the speaker (doesn’t work) https://github.com/JannesP/AudioMirror/blob/master/AudioMirror/SpeakerTopologyProperties.h#L78
Does the problem have to do with how the pin connections are created? From the docs it sounds like setting the name on the pin which has category of KSNODETYPE_SPEAKER
should work.
Thank You!
David