Łatwy sposób na przełączenie domyślnego urządzenia wyjściowego dźwięku

21

Chcę łatwiejszego sposobu zmiany domyślnego urządzenia dźwiękowego z karty dźwiękowej na zestaw słuchawkowy USB.

Obecnie zajmuje bardzo precyzyjne kliknięcie prawym przyciskiem, kliknięcie lewym przyciskiem, kolejne kliknięcie prawym przyciskiem i dwa kolejne kliknięcia lewym przyciskiem.

Idealnie byłoby po prostu zamienić go klawiszem skrótu. (w XP było to trochę łatwiejsze, ale niewiele).

Preferowane jest oprogramowanie, ale jestem otwarty na sugestie dotyczące sprzętu.

Obecnie korzystam z systemu Windows 7.

robertpateii
źródło
Opowiedz mi o tym! A system Windows powinien być zaprojektowany tak, aby był łatwy w użyciu. Pfft
Will Sheppard,

Odpowiedzi:

16

Darmowe i open-source: SoundSwitch

wprowadź opis zdjęcia tutaj

Franck Dernoncourt
źródło
Wygląda fajnie. Będę musiał spróbować.
MBraedley,
Miły!! Działa dobrze!
Pedro77
Wygląda na to, że oryginalny autor, Jeroen Pelgrims, przekazał programowanie w sierpniu 2015 r. Antoine Aflalo, który zaktualizował go dla systemu Windows 10 i przeniósł działalność programistyczną na Belphemur / SoundSwitch na github .
robertpateii
1
To świetny program. Jedna wskazówka: możesz zmienić nazwę urządzenia dźwiękowego z 1) Uruchom c:\windows\system32\control.exe mmsys.cpl2) Kliknij prawym przyciskiem myszy swoje urządzenie dźwiękowe -> Właściwości. Nowe nazwy zostaną zaktualizowane do SoundSwitch po ponownym uruchomieniu programu.
np8
12

Używam NirCMD , zręcznego narzędzia wiersza poleceń, które pozwala edytować wiele ustawień systemu Windows za pomocą skryptu.

W tym przypadku tak by było

nircmd.exe setdefaultsounddevice "USB Headset"

Używam go do przełączania mojego głównego monitora na mój telewizor i wysyłania dźwięku przez HDMI do tego urządzenia:

nircmdc.exe setprimarydisplay \\.\DISPLAY7
nircmdc.exe setdefaultsounddevice "SONY TV-4"
Jeroen Baert
źródło
9

Użyj AutoIt

Główną zaletą jest to, że nie trzeba instalować żadnego oprogramowania. Działa od razu po wyjęciu z pudełka. Po utworzeniu narzędzia umieść skrót na pulpicie, aby przełączać urządzenia.

Jak skonfigurować

  1. Utwórz nowy plik tekstowy za pomocą notatnika i skopiuj i wklej kod

    Run("c:\windows\system32\control.exe mmsys.cpl")
    WinWaitActive("Sound")
    WinSetOnTop ("Sound","Sound", 1 )
    send("{DOWN}")
    if ControlCommand("Sound", "", 1002, 'IsEnabled') Then
        ControlClick("Sound", "Set Default", 1002)
        $message = "Speakers"
    else
        send("{DOWN}")
        ControlClick("Sound", "Set Default", 1002)
        $message = "Headset"
    EndIf
    WinClose("Sound")
    TrayTip("", $message, 5)
    Sleep(2000)
    
  2. Edytuj linię 4 i 8 send("{DOWN}")do swoich potrzeb. Powyższy przykładowy kod przełącza tylko między urządzeniem nr 1 a numerem 2. Musisz edytować dwa wiersze do swoich potrzeb. Zobacz moje wyjaśnienia poniżej.

  3. Zamień „Głośniki” i „Zestaw słuchawkowy” na nazwę odpowiedniego urządzenia lub coś podobnego
    Później ta wskazówka będzie wyświetlana na tacy przez 5 sekund, jeśli przełączysz urządzenia dźwiękowe

  4. W nieanglojęzycznych wersjach systemu Windows należy zastąpić Set Default w liniach 6 i 10 zlokalizowanym tekstem przycisku
    wprowadź opis zdjęcia tutaj

  5. Zapisz plik jako coś.au3

  6. Pobierz skompresowaną wersję AutoIt i rozpakuj ją. Przejdź do podfolderu Aut2Exe i uruchom Aut2exe.exe, aby przekonwertować skrypt .AU3 na plik .EXE. Jesteś skończony

Odwołanie do wszystkich poleceń AutoIt


Lub użyj AutoHotKey

Zasadniczo jest tak samo, tylko z AutoHotKey. Wiązanie kluczem odbywa się w skrypcie z #!zktórych środki, za każdym razem, gdy PRESSY Alt+ Win+ zprzełączanie między urządzeniem # 1 i # 2.

Jak skonfigurować

  1. Wklej poniższy kod do pliku tekstowego i zapisz go jako SoundToggle.ahk

    #!z::
    Run, c:\windows\system32\control.exe mmsys.cpl    
    WinWaitActive, Sound
    WinSet, AlwaysOnTop, On, Sound    
    Send, {DOWN}    
    ControlGet, MyState, Enabled, , Button2
    If (MyState = 1){
        ControlClick, Button2, A
    } Else {
        Send, {DOWN}
        ControlClick, Button2, A
    }    
    WinClose, Sound        
    return
    
  2. Pobierz AutoHotKey (Unicode 32-bit) i rozpakujAutoHotKey.exe

  3. Utwórz skrót do tego pliku .EXE i zmodyfikuj linię docelową zgodnie z własnymi ścieżkami

    "C:\myfolder\AutoHotkey.exe" "C:\myfolder\SoundToggle.ahk"
    
  4. Przenieś skrót do folderu startowego


Jak edytować send("{DOWN}")linie

Otwórz panel dźwiękowy za pomocą Win+ Ri wprowadź dźwięk sterujący mmsys.cpl . Chcesz wiedzieć, ile razy musisz nacisnąć DOWNklawisz, aby przejść do pierwszego urządzenia dźwiękowego, i ile razy nacisnąć DOWNponownie, aby dotrzeć do drugiego urządzenia.

Na przykład, aby przełączyć urządzenie nr 3 i nr 5, należy nacisnąć trzy razy w send("{DOWN 3}")dół i jeszcze dwa razy nacisnąć w dół, send("{DOWN 2}")aby dotrzeć do piątego urządzenia (3x w dół + 2x w dół = piąte urządzenie). Masz pomysł.

wprowadź opis zdjęcia tutaj

nixda
źródło
Autohotkey jest naprawdę fajny. Tylko uwaga, że ​​może to wymagać sleep, 100między wysłaniem klucza {Down} a zrobieniem ControlGet. W przeciwnym razie mój skrypt nie rozpoznał Enabledpoprawnie statusu.
Wizongod,
Musisz także zainstalować Autoit, a także kodować skrypt, myślę, że pierwsze rozwiązanie jest o wiele prostsze i praktyczne.
arana
8

Ta aplikacja o nazwie „ Coastal Audio Changer ” powinna działać w systemie Windows 7. Od 2012 roku ma bezpłatną wersję próbną i kosztuje 3 USD. Autor, Andrew Bailey, prowadzi próbę i linki do zakupów na tej dedykowanej stronie Coastal Audio Changer .

Sérgio Gomes
źródło
Skończyłem korzystać z wersji próbnej tej aplikacji, a następnie ją kupić. Na początku było trochę błędne, ale potem w kwietniu 2011 roku autor wydał nową wersję, a teraz ją uwielbiam. jest idealny i wart 5 dolców. :)
robertpateii
6
Używam
robertpateii
1
Czy mógłbyś tutaj streścić rozwiązanie? Kiedy ten link umrze (kiedy, nie jeśli) twoja odpowiedź stanie się bezużyteczna.
Joris Groosman