Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I have a Bose Soundlink external audio device, which I use to stream music from my computer to my stereo. Ubuntu recognizes the device, but does not automatically use it. In order to get PulseAudio to use it for output, I have to manually choose it in the 'Output' tab in 'Sound settings'.

I would like PulseAudio to always prefer an external device over the internal, if one is available. Is there a way to accomplish this?

share|improve this question
add comment

2 Answers

In theory, this should be handled by 'PulseAudio Volume Control'. There is a button to select a device as the default device, though imho poorly titled as 'Set as fallback'. More info about this feature here: http://ubuntuguide.org/wiki/Ubuntu_Oneiric_Hardware

Unfortunately the feature doesn't work. As soon as a USB audio device is unplugged the setting as default device is annoyingly forgotten, despite the fact that all the other settings such as volume, balance, etc. are retained next time the device is plugged in. In your case, if the device is not being removed this feature may actually work for you. If you are missing the app, just install the package 'pavucontrol'

I use a USB headset for calling and had to make a script using 'pacmd' to enable or disable it as needed to avoid going through the GUI, This allowed me to to just add a few launcher items to switch back and forth as needed. In my case, my script to enable the headset is:

#!/bin/bash
pacmd "set-default-sink alsa_output.usb-Logitech_Logitech_USB_Headset-00-Headset.analog-stereo"
pacmd "set-default-source alsa_input.usb-Logitech_Logitech_USB_Headset-00-Headset.analog-mono"

And to revert to my internal audio:

#!/bin/bash
pacmd "set-default-sink alsa_output.usb-Logitech_Logitech_USB_Headset-00-Headset.analog-stereo"
pacmd "set-default-source alsa_input.usb-Logitech_Logitech_USB_Headset-00-Headset.analog-mono"

'pacmd' is fairly easy to use, just run it from terminal and enter 'help' for more info.

share|improve this answer
    
Also worthy of note, I've switched to a KDE based distro (NetRunner) and audio device preferences are handled much better, even to the point of using different default devices for different application types (communication, multimedia, etc). –  Veazer May 9 '13 at 19:14
add comment

Also of use is loading the the module module-switch-on-connect. If you add the line

load-module module-switch-on-connect

to /etc/pulse/default.pa (as su, of course), this should happen automatically without having to call a script.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.