Maneira mais rápida de trocar microfones e alto-falantes no Windows 7?

2

Eu tenho um fone de ouvido com um microfone embutido e um conjunto de alto-falantes com um microfone Blue Yeti, todos conectados a um PC com Windows 7.

Gostaria de poder alternar entre o microfone / alto-falantes do headset e o microfone & Yeti mic & alto-falantes sem ter que ir para as opções de som e trocar manualmente o dispositivo de áudio padrão e o dispositivo de comunicação padrão.

Eu pesquisei por software para fazer isso, mas não encontrei nenhum resultado que funcionasse para microfones / dispositivos de gravação. Existe software que faça isso, ou isso é algo que eu terei que procurar em escrever para mim?

    
por David Ross 09.07.2013 / 23:39

3 respostas

2

Nircmd 's setdefaultsounddevice deve ajudá-lo:

nircmd setdefaultsounddevice [Device Name] {Role}

Set the default sound device on Windows 7/Vista/2008. The [Device Name] is the name of the device, as it appears in the sound devices list of Windows, for example: Speakers, Line In, Microphone, and so on...

The {Role} parameter is optional and may countain one of the following values: 0 for Console (the default value), 1 for Multimedia, and 2 for Communications.

Examples:

setdefaultsounddevice "Line In"
setdefaultsounddevice "Microphone" 2

Você pode criar facilmente um atalho para isso manualmente ou usando cmdshortcut ou cmdshortcutkey .

Este encadeamento do fórum do AutoHotkey também contém scripts que podem ser úteis .

Por fim, Configurar dispositivo de som é um script AutoIt compilado que ajuda você a fazer a mesma coisa:

SSD enables you to change the default Sound Device for Win7 (works maybe for Vista too, but this is untested) via the commandline. To call SSD from the commandline, the syntax is ‘SSD.exe #’ (where # is the number of the Sound Device to select from the list,’Select Default’ dropdown box must be enabled to make device selectable).

    
por 10.07.2013 / 00:42
1

Use AutoIt e compile seu próprio .EXE para automatizar o processo de troca.
Vincule um atalho ao arquivo .EXE para mais conforto.

Este script faz exatamente o mesmo que você faz quando troca manualmente seus dispositivos, mas apenas com o teclado em vez do mouse.

Como usar

  1. Fazer o download & extrair o AutoIt Self Extracting Archive
  2. Copiar & Cole este código em um novo arquivo de texto

    Run("c:\windows\system32\control.exe mmsys.cpl")
    WinWaitActive("Sound")
    WinSetOnTop ("Sound","Sound", 1 )
    
    ;Toggle between sound device 1 and 2
    send("{DOWN}")
    if ControlCommand("Sound", "", 1002, 'IsEnabled') Then
        ControlClick("Sound", "Set Default", 1002)
        $message = "Headset 1"
    else
        send("{DOWN}")
        ControlClick("Sound", "Set Default", 1002)
        $message = "Headset 2"
    EndIf
    
    ;Toggle between microphone device 1 and 2
    Send("{TAB 5}")
    Send("{RIGHT}")
    send("{DOWN}")
    if ControlCommand("Sound", "", 1002, 'IsEnabled') Then
        ControlClick("Sound", "Set Default", 1002)
    else
        send("{DOWN}")
        ControlClick("Sound", "Set Default", 1002)   
    EndIf
    
    WinClose("Sound")
    TrayTip("", $message, 5)
    Sleep(2000)
    
  3. Salvar como deviceswapper.au3
  4. Abra AutoIt\install\Aut2Exe\Aut2exe.exe e converta seu arquivo .AU3 em .EXE
  5. Crie um atalho para esse .EXE e configure uma tecla de atalho adequada

Observação: nas versões localizadas do Windows (alemão, espanhol, francês etc.),
você tem que substituir a string Set Default com o texto do botão localizado.

Aqui você pode ler mais sobre todos os comandos usados.

    
por 10.07.2013 / 00:42
0

Veja o que acabei fazendo, pegando os componentes de cada uma das respostas acima e colocando-os em um script AutoHotKey. Coloquei nircmd em C: \ bin (na verdade, em qualquer lugar do caminho do sistema teria funcionado), mas o resto deve ser bastante autoexplicativo.

; This sets it to desktop speakers, so that the toggle works correctly
; without having to detect the setting from system
Run C:\bin\nircmd.exe setdefaultsounddevice "Desktop" 0
Run C:\bin\nircmd.exe setdefaultsounddevice "Desktop" 2
Run C:\bin\nircmd.exe setdefaultsounddevice "Desktop Mic" 0
Run C:\bin\nircmd.exe setdefaultsounddevice "Desktop Mic" 2

DesktopSpeakersActive = 1

; Change this to change which key this is bound to
Pause::
if DesktopSpeakersActive = 0
{
Run C:\bin\nircmd.exe setdefaultsounddevice "Desktop" 0
Run C:\bin\nircmd.exe setdefaultsounddevice "Desktop" 2
Run C:\bin\nircmd.exe setdefaultsounddevice "Desktop Mic" 0
Run C:\bin\nircmd.exe setdefaultsounddevice "Desktop Mic" 2
DesktopSpeakersActive = 1
TrayTip, , Desktop Speakers
}
else
{
Run C:\bin\nircmd.exe setdefaultsounddevice "Headset" 0
Run C:\bin\nircmd.exe setdefaultsounddevice "Headset" 2
Run C:\bin\nircmd.exe setdefaultsounddevice "Headset Mic" 0
Run C:\bin\nircmd.exe setdefaultsounddevice "Headset Mic" 2
DesktopSpeakersActive = 0
TrayTip, , Headset Speakers
}
return
    
por 10.07.2013 / 04:20