Ticket #241 (closed defect: invalid)

Opened 4 years ago

Last modified 3 years ago

Pulse Audio Doesn't Remember Preferred Output Device

Reported by: alexlang Owned by: lennart
Milestone: Component: daemon
Keywords: Cc:

Description

I have 2 audio devices: motherboard VIA 82XX and PCI Creative SBLive!. The VIA device is disabled in BIOS and speakers are hooked to the SB-Live!.

The first oddity is the Pulse still registers the VIA output device even though it's disabled in the BIOS. Secondly, Pulse doesn't seem to remember that I've set the SBLive! as the default output device across reboots.

To circumvent this behavior, when ever I install a new FC8 kernel, I rename the VIA-82XX.ko driver so that the kernel doesn't load it and Pulse doesn't see it.

I assume the problem with the module being loaded even though the device is disabled is a kernel or module loading problem. However, Pulse should remember my default output device across reboots . I think it may actually change my default across logins.

I've listed my current levels below, but I've seen this problem across all kernels and levels of Pulse since installing FC8.

THanks!

Distribution: Fedora 8 Kernel: 2.6.23.14-115.fc8 Pulse Audio: pulseaudio-utils-0.9.8-5.fc8 pulseaudio-esound-compat-0.9.8-5.fc8 pulseaudio-libs-0.9.8-5.fc8 pulseaudio-core-libs-0.9.8-5.fc8 pulseaudio-libs-glib2-0.9.8-5.fc8 alsa-plugins-pulseaudio-1.0.15-2.fc8 gstreamer-plugins-pulse-0.9.5-0.4.svn20070924.fc8 pulseaudio-module-x11-0.9.8-5.fc8 pulseaudio-0.9.8-5.fc8 pulseaudio-module-gconf-0.9.8-5.fc8

Change History

  Changed 4 years ago by lennart

  • status changed from new to closed
  • resolution set to worksforme

Actually PA does save the default output device. That's what module-default-device-restore is for which is loaded by default.

  Changed 4 years ago by jgxenite

  • status changed from closed to reopened
  • resolution worksforme deleted

I am also experiencing a similar problem with PulseAudio 0.9.8 in Fedora 8. I have an onboard Intel HDA card and a TerraTec? Aureon Dual USB soundcard. The Aureon card is set as my default soundcard, and tests via OSS work fine. However, if I use PulseAudio (and set the Aureon card as my default) it continues to ignore that and tries to output via the Intel card.

The only solution I have managed to find is to disable HAL detection in /etc/pulse/default.pa, and only include a sink and source for that hardware card (so PA no longer detects the Intel card).

  Changed 4 years ago by jgxenite

  • priority changed from normal to high

This situation still stands - PulseAudio seems to be defaulting to the first soundcard it finds, and ignoring any commands to redirect output to the second soundcard. I continue to have to use a modified default.pa file, with the USB card explicitly defined.

follow-up: ↓ 6   Changed 4 years ago by coling

You should probably ask this support question on the fedora or pulse Mailing lists. Lennart has stated that a module exists to do this, so if it's not working for you then a valid bug report concerning this with detailed debug output, (including module lists, pulseaudio -vvv output etc.) is appropriate. At present tho' you are not giving any info on your setup to help you work out what's wrong, and regardless, trac is not really a support system and it's not really the most appropriate please to discuss this.

  Changed 4 years ago by lennart

  • status changed from reopened to closed
  • resolution set to invalid

Please use pavucontrol to make the audio device you want the default. Just right click on it and select "Default".

in reply to: ↑ 4 ; follow-up: ↓ 7   Changed 4 years ago by jgxenite

  • status changed from closed to reopened
  • resolution invalid deleted

Replying to coling: Apologies coling, I did not receive notification of your reply, otherwise I would have posted back here earlier. Surely Trac is meant to be a bug tracker, so I should be using this to track what I believe is a potential bug?

Replying to lennart: I've used pavucontrol to try and change the default audio device, but it is still not working.

I have two audio cards - an Intel HDA onboard card (the "default" one) and a TerraTec? Aureon USB card (the one I want to use). I am running Fedora 8 with PulseAudio 0.9.8-5.fc8. The "module-default-device-restore" is configured correctly in my configuration (well, the default configuration anyway). Unless I am missing something, and pauvcontrol doesn't switch the device instantly (it didn't even appear to this after a restart of pulseaudio), then there is still a problem of the default device not being restored when I unplug the USB card and re-plug it in.

If this topic is still not appropriate here (I think it is a bug), then I can re-post it to the mailing list if necessary.

in reply to: ↑ 6 ; follow-up: ↓ 8   Changed 4 years ago by coling

Replying to jgxenite:

Replying to coling: Apologies coling, I did not receive notification of your reply, otherwise I would have posted back here earlier. Surely Trac is meant to be a bug tracker, so I should be using this to track what I believe is a potential bug?

That's OK. There was a bit of a misconfiguration in Trac where reporters were not notified. Fixed now (hence why you got informed this time round ;)) I'll leave Lennart to reply to the other bits, but I would say that setting the default device will not move all streams across to it - you have to do that manually. If pa has remembered that X stream wants your first device, then this is the way it will be.

You can try and clean things out by logging out rm -rf ~/.pulse and logging in and setting the default device and see where you new streams go to.

If you unplug your USB mid playing module-rescue-streams will kick in and even if you plug the USB back in, it will not switch back to it automatically. I guess there is argument for some sort of memory of how a stream was moved (e.g. manually or rescued) and as such, automatic moving (or unrescueing!) of streams would be possible.

I'm not 100% sure if the capability to remember which sink a stream prefers knows that it's on the "default" of it is always uses sink name so this whole reply could be misleading for which I apologise. Lennart will no doubt rubbish it in due course if appropriate :p

in reply to: ↑ 7   Changed 4 years ago by jgxenite

Replying to coling:

I'll leave Lennart to reply to the other bits, but I would say that setting the default device will not move all streams across to it - you have to do that manually. If pa has remembered that X stream wants your first device, then this is the way it will be.

I think that you might be right - once I right-clicked the stream, and moved it to the other device, it worked fine.

You can try and clean things out by logging out rm -rf ~/.pulse and logging in and setting the default device and see where you new streams go to.

I'll give that a go and see how I get on.

If you unplug your USB mid playing module-rescue-streams will kick in and even if you plug the USB back in, it will not switch back to it automatically. I guess there is argument for some sort of memory of how a stream was moved (e.g. manually or rescued) and as such, automatic moving (or unrescueing!) of streams would be possible.

That would be quite a nice feature if someone could implement it. I think that is possible more along the lines of what I was reporting as a bug - it was forgetting about my USB device when it was unplugged, and then not moving the streams for me once I plugged it back in.

I'm not 100% sure if the capability to remember which sink a stream prefers knows that it's on the "default" of it is always uses sink name so this whole reply could be misleading for which I apologise. Lennart will no doubt rubbish it in due course if appropriate :p

Hey, don't worry if you are wrong - I know no more than you do on the whole thing :). I'm open to constructive replies though.

  Changed 4 years ago by lennart

  • status changed from reopened to closed
  • resolution set to invalid

Making a device "default" will not move currently active streams over to it. It is a setting that only affects future streams.

Moreover, PA remembers the device and volume of a stream, and the next time the same application connects it restores both. i.e. you have to manually move each stream to your new device and then PA will remember the settings.

  Changed 4 years ago by jgxenite

Lennart, thank you for the explanation - that is probably what I was confused about at first.

Is there any possibility that in the future, you could set a stream to use the "default" device, and they would then be moved over automatically when you changed the default device?

  Changed 4 years ago by lennart

I prefer to keep things with the minimum number of settings necessary. Routing is always complex, but adding even more options certainly doesn't make things any simpler.

I am opposed.

Note: See TracTickets for help on using tickets.