Since Yousician's last update, it was throwing an error when initialising audio output. Unfortunately I don't have access to the old version, but they seem to have dropped win<10 support, and are using only IAudioClient3_InitializeSharedAudioStream. They also use IDeviceTopology to get the type of the first output connector.
This is the bare minimum I needed to get it working.
-- v17: mmdevapi/tests: add test for IDeviceTopology mmdevapi: implement IAudioClient3_GetSharedModeEnginePeriod mmdevapi: implement IAudioClient3_InitializeSharedAudioStream