19

When I boot, PulseAudio defaults to sending output to Headphones. I'd like it to default to sending output to Line Out. How do I do that?

I can manually change where the output is current sent as follows: launch the Pulseaudio Volume Control application, go to the Output Devices tab, and next to Port, select the Line Out option instead of Headphones. However, I have to do this after each time I boot the machine -- after a reboot, Pulseaudio resets itself back to Headphones. That's a bit annoying. How do I make my selection stick and persist across reboots?

Here's a screenshot of how the Volume Control application looks after a reboot, with Headphones selected:

Volume Control, immediately after boot

If I click on the chooser next to Port, I get the following two options:

Choices for output port

Selecting Line Out makes sound work. (Notice that both Headphones and Line Out are marked as "unplugged", but actually I do have something plugged into the Line Out port.)

Comments: I'm not looking for a way to change the default output device. I have only one sound card. pacmd list-sinks shows only one sink. Therefore, pacmd set-default-sink is not helpful. (This doesn't help either.) Here what I need to set is the "Port", not the output device. If it's relevant, I'm using Fedora 20 and pulseaudio-5.0-25.fc21.x86_64.

2 Answers 2

32

I had the same problem (for at least a year now), and the following seemed to work:

Taken from: https://bbs.archlinux.org/viewtopic.php?id=164868

Use pavucontrol to change the port to your desired one. Then find the internal name of the port with this command:

$ pacmd list | grep "active port"
    active port: <hdmi-output-0>
    active port: <analog-output-lineout>
    active port: <analog-input-linein>

Using this information about the internal name of the port, we can change it with the command:

pacmd set-sink-port 0 analog-output-lineout

If you (or someone else with the problem) has multiple cards, try changing the 0 to a 1.

If this works, you can put:

set-sink-port 0 analog-output-lineout

in your /etc/pulse/default.pa file to have it across reboots.

8
  • 1
    When I try to set-sink-port etc... I get [No PulseAudio daemon running, or not running as session daemon.], how do I change this? Commented Apr 19, 2015 at 21:43
  • @aSystemOverload: Which Fedora version? You could also try to to start it manually with pulseaudio --start and see if the pacmd command works. Commented Apr 22, 2015 at 16:17
  • Apologies for not specifying, but Debian Jessie. The Pulse Audio 'Volume Control' shown by the original poster is working, does that mean a daemon is running, but maybe but a season daemon? Commented Apr 22, 2015 at 16:36
  • After so much time at 2:57 AM you saved my life ...
    – user254419
    Commented Jun 26, 2018 at 21:02
  • Thanks for the answer. This helped me to configure my headphones as default in Linux Mint 18.3!
    – smiddy84
    Commented Aug 17, 2018 at 4:32
-1

When you opened pavucontrol, is your Line Out output uplugged?

Line Out (unplugged)

  • Yes: You have your speakers in wrong connector.
  • No or didn't help: Good luck, I have no idea what is wrong.

Explanation: Only plugged in port is used as default, if all are unplugged who knows why it's headphones. PulseAudio tests only one connector (Front speakers / green) but outputs stereo in all of them (if you have more than stereo capable card but your PulseAudio is set to stereo only).

1
  • 4
    I'm afraid this doesn't seem to help. To answer your question: As I described in the question, Volume Control thinks Line Out is unplugged, but there is actually something plugged in. As I wrote in the question, "Notice that both Headphones and Line Out are marked as "unplugged", but actually I do have something plugged into the Line Out port." It seems that the "plugged/unplugged" detection has gone awry.
    – D.W.
    Commented Sep 20, 2015 at 5:58

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .