Saturday, 17 August 2013

Registry location of DirectShow audio capture devices

Registry location of DirectShow audio capture devices

I am executing VLC from my application to capture and encode from a
DirectShow audio capture device. VLC sends the encoded data to my
application via STDOUT. I need a way to enumerate DirectShow audio capture
devices. Unfortunately, VLC doesn't seem to provide any non-GUI way for
this.
While looking for a simple way to get a list of device names, I stumbled
on these registry keys where child keys are named after audio capture
devices:
HKEY_CURRENT_USER\Software\Microsoft\ActiveMovie\devenum
64-bit\{33D9A762-90C8-11D0-BD43-00A0C911CE86}
HKEY_CURRENT_USER\Software\Microsoft\ActiveMovie\devenum\{33D9A762-90C8-11D0-BD43-00A0C911CE86}
Is this registry location guaranteed to be in the same place for other
machines and recent versions of DirectX? Short of implementing a ton of
DirectX code, is there some other way to get a list of the DirectShow
audio device names? (Possibly through some output of a diagnostic tool.)

No comments:

Post a Comment