Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I need to capture audio with VLC from the default capture device set for the system in Windows. If I set the audio device in the capture dialog to "Default", it seems to capture from the first audio device in the list rather than the one configured to be the default on the system.

VLC Capture Dialog

Removing :dshow-adev= from the command line doesn't help either.

How can I get VLC to capture from the default system device?

share|improve this question
add comment

1 Answer

up vote 1 down vote accepted

The DirectShow framework does not use the settings specified by Windows for default devices, therefore changing your options from the Windows sound settings will not affect DirectShow.

VLC is actually just enumerating the devices on the system and selecting the first audio device it finds. You can just select the specific device that you want to use from the drop-down, or alternatively you can disable the audio devices you don't want to use until the one you want is first in the list.

share|improve this answer
    
Thanks for the reply, that is good to know. My root problem is that I will be launching VLC from another program, and there doesn't seem to be a way to get a list of devices from VLC. I thought that by using the default device, this would be acceptable, but if DirectShow is using its own settings, then that won't work. Do you know of a way to get a list of devices from VLC, over STDOUT or something? –  Brad Aug 20 '13 at 21:18
    
I don't know of any way to enumerate device from the VLC command line. However, FFMPEG does seem to have that feature: trac.ffmpeg.org/wiki/DirectShow You could also look at this Stackoverflow question if you're looking to do it programatically. –  heavyd Aug 20 '13 at 22:26
    
Thanks, that question you linked to is also my question. :-D Yeah, it seems I'll have to do it programmatically outside of VLC. –  Brad Aug 20 '13 at 22:38
    
heh.. sure enough it is. If you are going the programatic route, you might take a look at DirectShow.NET specifically the DsDevice class. That should make it pretty easy for you. –  heavyd Aug 20 '13 at 22:45
    
Nice find! Thanks. That will definitely help. –  Brad Aug 20 '13 at 22:51
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.