Soundausgabe unter Windows 7 und 8 per Knopfdruck umschalten

Bei meinem Soundkartentreiber kann man einstellen, dass die Musik auf den Lautsprechern abgespielt wird, Skype aber immer über das Headset kommt. Die entsprechenden Einstellungen im Realtek HD-Audio-Manager sehen so aus:

Realtek Soundkarte: Erweiterte Einstellungen

Das Problem dabei ist allerdings, dass ich jedesmal diese Einstellung ändern muss, wenn ich spätabends meine Musik über das Headset hören will. Ist doch ziemlich umständlich auf Dauer.

Jetzt habe ich das Programm SSD — Set Sound Device on Win7 gefunden, was es ermöglicht, die Soundausgabe (auch per Kommandozeile) umzuschalten:

ssd

Praktischerweise legt das Programm bei der ersten Auswahl im Programmverzeichnis (das beschreibbar sein muss) passende Verknüpfungen an, um nur die Lautsprecher oder nur das Headset einzuschalten.

Das ist zwar ok, aber ich wollte das schon per Tastendruck machen. Also hab ichs mal mit Autohotkey probiert. Herausgekommen ist dieser Schnipsel, den ich ich meine Standardtastaturdatei gepackt habe:

Browser_Search::
if ls_an = 0
run, c:\Users\Michael\Anwendungen\SSD\SSD.exe 1
ls_an = 1

if ls_an = 1
run, c:\Users\Michael\Anwendungen\SSD\SSD.exe 2
ls_an = 0
return

Ich gehe mal wieder durch:

Browser_Search::

Bei mir schaltet die „Suche“-Taste auf der Tastatur das Ausgabegerät um, weil ich diese Taste nie benutze.

if ls_an = 0

Um unterscheiden zu können, ob die Lautsprecher oder das Headset läuft habe ich die Variable „ls_an“ (Lautsprecher an?), die ich auf 1 setze, wenn die Lautsprecher laufen oder auf 0 wenn die Töne aus dem Headset kommen. Hier wird abgefragt, ob das Headset läuft.

run, c:\Users\Michael\Anwendungen\SSD\SSD.exe 1

Da festgestellt wurde, dass die Lautsprecher nicht tönen, werden sie hier eingeschaltet. Die 1 hinter ssd.exe ist in diesem Fall die Nummer des Audioausgabegeräts, wie es in der Systemsteuerung steht.

ls_an = 1

Jetzt wird noch der Status von „ls_an“ auf 1 gesetzt. Weiter gehts mit

if ls_an = 1
run, c:\Users\Michael\Anwendungen\SSDS\SSD.exe 2
ls_an = 0
return

Wieder fast die gleiche Abfrage, nur mit dem Unterschied, dass „ls_an“ diesmal abgefragt wird, ob die Lautsprecher schon an sind. Dann wird die Ausgabe auf das Headset geschaltet.

Ich weiß nicht, ob man das mit Autohotkey noch eleganter lösen kann, aber es ist eine Lösung mit der ich leben kann.

Update:
Nachdem ich das Script jetzt einige Zeit ausprobiert habe, erscheint es mir sinnvoller, jedes Ausgabegerät mit einer Taste zu belegen, denn die Umschalterei funktioniert oft nicht. Dann bleiben Überreste des Programms im Tray hängen. Also sehen meine AHK-Schnipsel jetzt so aus:

Browser_Refresh::
	run, c:\Users\Michael\Anwendungen\SSDS\SSD.exe 1
return

Browser_Search::
	run, c:\Users\Michael\Anwendungen\SSDS\SSD.exe 2
return

Beide Tasten liegen auf der Tastatur nebeneinander. Damit ichs nicht vergesse, habe ich mir einen Aufkleber über den Tasten auf die Tastatur geklebt, auf den ich beide Symbole aufgemalt habe. Das funktioniert jetzt einwandfrei.

Update vom 15.05.2013: Nachdem ich Windows 8 jetzt rund ein halbes Jahr am laufen habe und SSD immer öfter schmerzlich vermisst habe (weil es nur bis Windows 7 funktionierte), habe ich mich mal an den Quellcode gesetzt und das Programm auch zu Windows 8 kompatibel gemacht.

9 Gedanken zu “Soundausgabe unter Windows 7 und 8 per Knopfdruck umschalten

  1. Vielen Dank für das Anpassen an Windows8. Genau so ein Programm habe ich für mein neues Notebook mit Windows8 gesucht. Bei meinem alten Notebook mit Windows7 wurde von der Soundkarte aus schon so ein Programm zum schnellen Umschalten mitgeliefert. Doch leider ließ sich das nicht unter Windows8 installieren.

  2. Geht auch mit der genialen nircmd.exe und dem Befehl „setdefaultsounddevice“. Einfach Verknüpfung erstellen und unter Eigenschaften eine Tastenkombination belegen.

    Im Bereich Audio sind auch „setappvolume“ und „muteappvolume“ als Shortcuts sehr praktisch z.B. um nur den Browser zu muten.

    NirCmd bietet jede Menge weitere hilfreiche Befehle. Einfach mal ausprobieren.

    Gruß,
    Nico

  3. Sehr genial, genau was ich gesucht habe! Nutze das kleine Programm in Kombination mit der Logitech Tastatursteuerung, wo ich direkt zwei F-Tasten mit entsprechendem Parameter konfigurieren kann. So lässt es sich bequem zwischen Kopfhörer am Digital-Ausgang und normalen Boxen umschalten.

  4. Tausend Dank… habe ein paar NuPro Monitore mit USB und einen Kopfhörer über Frontpanel. Automatisches Umschalten klappt dank dem „genialen“ Realtec Treiber nicht. Jetzt gehts mit einem Tastendruck… vielen, vielen Dank, welch eine Erlösung!

Die Kommentarfunktion ist geschlossen.