How to play audio from different applications on different output devices?

How can I play music on my speakers while I use my headset for video chat applications like Skype?

Shouldn't this be possible via this PulseAudio sound server that Ubuntu uses?


Solution 1:

Routing sound to different sinks with PulseAudio

Yes this is possible, but you need more than one soundcard (PulseAudio calls these sinks) for this to work. Don't worry, if you have something like a headset that is connected via Bluetooth or USB, then this also counts as another soundcard.

Using the PulseAudio GUI

While you can configure PulseAudio from the terminal with pacmd (manpage), you don't need to! There is a GUI application called PulseAudio Volume Control that offers this functionality.

screenshot of pavucontrol showing active applications and a button for each that brings up a dropdown menu with the available soundcards, two in this case

Using plugins for applications

  • If you are already using VLC, you should check that vlc-plugin-pulse is installed. You can then switch between soundcards from within VLC via menu entries Audio > Audio devices.