A hotkey to switch between headphones and speakers. Soundswitch.

I use USB headphones. I also use regular speakers connected to my sound card. Windows makes it a multi-step process to switch from headphones to speakers.

I tired of this, so I wrote a program to rectify the situation and I called it Soundswitch because I’m a wordsmith. You can find this program here:

Available here.

Basic Use and Installation

Unzip it to the directory of your choice.

Look in the Sound applet in control panel to see which two sound devices you want to switch between. In the following image, the two I switch between are labeled 1 and 4. Thus, in the ini file, I used 1 for Source1 and 4 for Source2.  Update:  Note that the number of items will vary based upon whether you have “Show Disabled Devices” and “Show Disconnected Devices” checked (Right click anywhere in the list to see these).  For the purposes of Sound Switch make sure both options are checked before counting the items. The screenshot below doesn’t reflect this.

sound_panel

The ini by default has the switch key assigned to Ctrl-Alt-F12. Edit this as you like.

Tested on Win7 x64 and Vista x32.   Update:  XP no longer works with the latest updates.  Use this older version for XP compatibility:  soundswitch

Any comments on this are welcome and I’ll try to fix any bugs reported.

Version 2 Notes

I’ve added a good number of features in the latest version. All accessible through the .ini file.

  • “Scroll” through each enabled item in your Sound panel.
  • Hide the tray icon
  • Switch between two speaker configurations for your current active playback device
  • Switch/scroll just the default comm device, default playback device, or both
  • Hotkey to terminate the program
Leave a comment ?

273 Comments.

  1. @Chris: I haven’t touched the code for this in ages.

    IIRC, you can only have two speaker sets.

  2. Just wanted to say THANK YOU! This made it super easy for me to game on my HDTV…

    Here’s the setup…

    Used UltraMon to setup 2 display profiles. Pro1 has the TV output (HDMI from ATI Card) disabled. Pro2 Has HDTV enabled and default monitor. Setup UltraMon to use a hotkey to switch between the two.

    Then I used this utility to switch to the HDMI audio output once it was activated by UltraMon’s 2nd display profile.

    Everything tested great – SWEET! Thanks!

  3. Little Remind =)

  4. @Skince: This is wrote in AutoIT. I’ll give some thought to releasing the source…

  5. Works like a charm. Just what I was looking for to easily switch between headphones and speakers. Thanks for sharing.

  6. Great solution that works.

  7. Perfect, thanks!

  8. You are the best. Thanks

  9. life changing =) thanks

  10. Can you call it from a batch file used to launch an aplication.

  11. Truly Awesome, thankyou!

  12. Thanks heaps, I am clickin up on your advert links to repay the favour, hope others do aswell.

  13. Thanks a lot its working great :D

  14. Did you figure out how fix the thing where it just brings up the sound config page ?

  15. @jjubic: Not currently, but I’ll put it on my to-do list.

    @Grevy: I cannot reproduce this bug, so I haven’t figured out a fix yet.

  16. I like the concept of running from a batch/command-line as this would solve the very problem I was hoping your program would solve. However, the machine I’m working on is an XP machine. Any possibility this item could be XP-compatible, too?

    Looks like a great tool, Dustin!

  17. Thanks so much! This is incredible. This makes switching between my office and living room easy again. Really appreciate the work!

  18. Great little piece of software. It’d be great though if the icon changed to reflect what speakers/devices were active.
    Thanks very much

  19. I’ll add that to my features to-do list.

  20. You, my friend, are awesome. Thank you for putting a tool like this out for all to use! I’m using this to switch between the speakers at my desktop and the surround sound of my receiver (sometimes my wife doesn’t want to hear the “noise” I’m listening to). BTW – running Windows 7 Pro.

  21. This is exactly what I needed! I was just getting ready to dive into the Windows API to figure out how to write something to change my audio from 5.1 (speakers) to stereo (headphones). This saved me a bunch of time. I’d love to know how you did this.

  22. @Josh: The Windows API was too much trouble, so I just automated the Sound control panel applet UI.

    I’ll be open sourcing the code sometime this summer so you’ll be able to see how I did it exactly soon.

  23. Just FYI – the 2.03 version doesn’t work with Vista 64, but the XP-compatible version works like a charm.

    3 Thumbs Up for this awesome little piece of software!

  24. Amazing application kudos to you for taking matters into your hands and sharing it with the world.

  25. Dustin,
    Does this work between Wireless headphones and wired speakers.
    I can switch between the two if I am watching a video on youtube via the Sound Panel.
    But when I am streaming a movie online, the sound will work with only the first device that is on for eg: If I have my Wireless headphone on, the sound will come thru it. If I have my wired speaker on, the sound will come thru it but will not revert.
    Vista 64 Bit Home premium.

  26. @Dustin: Glad to hear it.

    @Anonymous with headphone problem: I think some programs have difficulty switching sound devices while they are already running. I don’t actually switch sound devices, but sound output (stereo/5.1), myself, so it might be similar.

    For instance, if I have skype running with a call on and I’m on 5.1, I have to end the call in order to be able to switch back to stereo or skype freaks out and says it can’t find the sound device. Once I’ve switched, I can restart the call no problem and it will be on stereo.

    So, if that’s the case, the problem is likely with whatever program/browser you’re using to stream your movie.

  27. can you talk me through how to do this on xp as i downloaded the xp one but dont know how to install and use it.

  28. Hi, first of all thank you Dustin for this.
    I saw same issue as Anonymous reported, about screen flicking but nothing changing. I figured out it happens because I on windows 7 had disabled my other device.
    So I just needed to have both enabled, but only one active (naturally) then it changes as it should.

    And lastly would you consider adding quick change to the tray icon? I could use that when controlling only using the mouse while away from the keyboard.

    But again, thank you. I think I can even instruct my wife on how to change the output now :)

    br
    Las

  29. Well,
    i’ve been using it for a few months now, without any problems.
    But now it’s starting to bugg a bit.
    Each time I press my hotkey to switch from headset to speakers, it buggs out a bit. I need to press it a couple of times before it switches back.
    But this only happens from headset to speakers, not from speakers to headset where it works propperly.

    Any thoughts would be great.

  30. I’m not sure. It shouldn’t matter which device you’re switching from/to since Soundswitch is just selecting items from a list and has no knowledge what kind of devices there are.

  31. well,
    that is what I guess.

    BUt maybe it has artificial inteligence ^^

  32. I have extracted and run the legacy XP .exe file. It appears in the taskbar but Script Paused is checked and I cannot uncheck it. Any suggestions?

  33. I have the same problem than anonymous.. win 7 64 but my system is in french… it’s related to the problem?

    I changed the sources number in the ini file and I tried other shortcuts but i meet the same problem.

    Thanks! it seem a good software, exactly what I seach…

  34. I’m going to spend some time this month looking the code on this over and see if I can’t fix a few bugs and add a couple requested features…

  35. love this damn good software:),have been looking for such kind of soft for long.
    though cant use it now,same problem as anonymous.
    looking forward to see the fixed version^ ^

  36. Like RS above (31 August), I downloaded the XP legacy version and it appears in the taskbar but Script Paused is checked and I cannot uncheck it.

    Would love to get this working.

    Thnx in anticipation.

  37. This is a great little app, I myself was getting annoyed with the exact same situation you were in and four mins of playing with this app has fixed it forever.
    Thanks alot

  38. I’ve started tackling some feature additions and bug fixes in earnest on this.

    Also, as soon as I figure out which license to use, I will be open-sourcing the code.

    So far, I’ve rewrote the device selection code so hopefully it will address some of the bugs people are getting with regard to nothing actually happening…

  39. I notice most if not all of the comments are for win7. i am still using winxp and i just get an icon in the corner and blinks and X and says script paused. nothing opens up for me and i cant seem to delete program either. anyway to get this to work for xp?

  40. Sounded like just what I needed. Downloaded the older version for XP and tried to install but AdWatch blocked it because it was trying to install the “HottieStar” toolbar. Not against porn or anything, but I really dont need this at work, and especially in the form of another toolbar.

  41. @PsychoPenguin:

    http://blog.contriving.net/software/comment-page-1/#comment-33571

    I’ll put a notice about this in the main article.

  42. Hey Dustin, thanks for this great app!

    Just a question:
    What would be the code to assign a hotkey to switch to ONE specific device?

    In example, I want Ctrl+F4 to make my speaker default device and Ctrl+F5 to make SPDIF the default.

    How would I do this?

  43. I don’t think that’s possible with this version.

    If you wait till this evening or maybe tomorrow, I’ll have a new version out that should allow this.

  44. Thanks for this innovative program. I still run XP SP3 and note that there are no instructions anywhere how to configure the ini file or number the devices in XP. Could you give step by step instructions for how to use this with WinXP?
    Thanks

  45. BTW – I’ve already downloaded the XP version of the program

  46. Anyway you can have a autostart option? I currently have to manually start it then click the icon in the tray to change. That would be great! Keep up the great work .

  47. Dustin:

    Again, thank for the time you have spent on such great software that fits the needs of so many. Your efforts are truly appreciated and I say that sincerely.

    That being said, there have been MANY of us post here as WinXP users wanting to know how to get the legacy version working for XP with no response. I know you’re working hard to perfect the latest version, but could you PLEASE spend some time telling us, step-by-step, how to get the XP version to work. At last count, at least 6 of us are interested.

    Thanks,
    Gary

  48. It’s been over a year since I even looked at the old XP version and I no longer have any XP machines to test it on.

    IIRC, it’s not much different from the Vista/7 version when it comes to configuring it.

    Set Source1 and Source2 as per above and then set the hotkey as per above.

    You’re just going to have to experiment to figure out what exactly Source1 and Source2 correspond to.

    If I get some more feedback about what exactly is happening when people try to run the XP version, I may be able to give you some advice.

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>