Switching between audio input and output devices on Mac isn’t that hard. If you plug in a pair of headphones, it automatically detects and sets it as the default output device. If you have multiple devices connected to your Mac, you can hold down the Option key, click the volume icon in the Menu Bar and switch to another source. Strictly speaking, this is probably as much as the average user needs. For users with slightly more complex needs, including frequently switching to different audio input or output devices, you might even find holding down the Option key a bit inconvenient. AudioSwitcher is a small utility for OS X that allows you to quickly switch between audio input and output devices connected to your Mac. Not only that, it also allows you to control the volume for input and output separately without having to visit System Preferences. According to AudioSwitcher’s developer, it automatically detects when a new device is added or when one is removed and updates the list of devices. As per tests, you have to close the app’s menu and reopen it to view the updated list. This behavior is similar to that of the default volume control.
What’s different about the app is that it offers volume control for input and output devices separately, while the system volume icon only adjusts the output volume. AudioSwitcher will also let you switch between headphones and the internal speakers even when you have the headphones connected though it might not work on all Macs. The question is, with so little difference between this app and what the default volume utility does, why use AudioSwitcher? The app makes changing audio input and output devices a one click process but the segregated volume controls are what will probably sell the app. The default volume utility is meant purely for controlling speakers and anything else you might want to do, you have to do from the System Preferences.
The app is free but if the developer expects more people to download it and use it as opposed to the default utility, better more powerful features need to be added. Perhaps something simple that will allow a user to adjust the volume for each individual device so that it doesn’t have to be reset each time you switch to another source and back would be a good place to start.