Problem with Soundblaster AE7 remaining as default device

I have a Soundblaster AE7 and a Bose Companion USB connected to my computer. I am running on KDE Plasma 20.2.1 and am able to get sound from both Bose Speaker and my Headphones connected to the internal Soundblaster soundcard.

However, I don’t understand how to make Soundblaster my default playback device and it is getting annoying because every time my youtube playlist jumps to a new song, I have to manually select the correct sound ouput again. That’s the reason for this topic and I hope you can help me :slight_smile:

To explain what I did so far:

  • Fresh new install of Manjaro KDE 20.2.1
  • run “sudo pacman -Syu” after the installation
  • upgraded kernel to 5.10 (also tried the experimental 5.11). Why? Because AE7 support seems to be part of 5.10 and with a kernel below that I cannot even switch my Output Type correctly to analog and I am missing profiles (you see that below soon)

With that I can run alsamixer to set the Output Type of my Soundblaster to Headphones. This is not possible it seems with a kernel below 5.10.

In addition I need to run pavucontrol and go to Configuration and select “Analog Stereo Duplex (not available)” from the HDA Creative dropdown. This option is also not available with a kernel below 5.10.

For whatever reason the default profile is “SPDIF” which is the digital output? I don’t have anything connected to the digital output. Also, it says “(not available)” for the analog output - what does that mean? When I select that I can hear the sound correctly when setting HDA Creative as playback device.

So until now everything is fine and working and I can switch between Bose and HDA Creative but there is one big issue - whenever the playback source changes (e.g. new youtube song from the playlist) it switches back to Bose as the default device. In addition to that, HDA Creative is now a “hidden” device and I have to make it visible to select it. I guess the reason is the profile I select in pavucontrol. I don’t have that profile in the normal Manjaro Sound Settings area.

Is this a known issue? Is there a fix for it?

I also just switched to Linux (two days ago) for the first time. So please keep that in mind when giving me advice because I am a noob :wink:

edit: I would like to add images, but I am not allowed to add images nor links?

1 Like

Hi! I have a similar problem on my desktop.

You need to edit the file ~/.config/pulse/default.pa and add the following lines to the following section:

### Make some devices default
#set-default-sink output
#set-default-source input
set-card-profile alsa_card.pci-0000_00_1b.0 output:analog-stereo+input:analog-stereo
set-sink-port alsa_output.pci-0000_00_1b.0.analog-stereo analog-output-lineout

That is, set-card-profile <card> <profile> and set-sink-port <sink> <port>. You can get info about the names with pacmd list cards.

EDIT: I still haven’t figured out why, but sometimes pulseaudio rewrites that file, so keep a copy of those lines you need.

EDIT: Ok, I figured it out. It’s Pulseaudio Equalizer which replaces the file.

If S/PDIF is active and detected as (available) by PulseAudio, audio stream is likely to connect to digital optical output instead of a (not available) output

suggest you check in alsamixer for the AE-7 controls and make sure S/PDIF output is turned off

  • use M to mute this control so it looks like this:

alsaspdif

  • change controls for analog audio outputs to unmuted [OO]

  • save any changes to ALSA - sudo alsactl store

Check PulseAudio - pacmd list-cards - to confirm if the analog-output Sink is (available)
and S/PDIF is (not available)

Thank you, I tried that but it didn’t solve the issue.

However, I have a workaround for the time being in place. It is not as comfortable as it was in Windows but I can live with it for now.

My workaround was to edit “default.pa” and “client.conf” in /etc/pulse folder.

In default.pa I added following lines:

### Make some devices default
set-default-sink alsa_output.pci-0000_07_00.0.analog-stereo
set-default-source alsa_output.pci-0000_07_00.0.analog-stereo.monitor

## Activate specific profile
set-card-profile alsa_card.pci-0000_07_00.0 output:analog-stereo+input:analog-stereo

In client.conf I modified following lines:

default-sink = alsa_output.pci-0000_07_00.0.analog-stereo
default-source = alsa_output.pci-0000_07_00.0.analog-stereo.monitor

Finally I had to delete the local configs from ~/.config/pulse by simply deleting that folder.

Now, after a reboot, the correct analog output for my AE7 is selected. The downside now is, that when I want to switch to my Bose Speakers I have to run the application first and then switch for that application to the Bose Output.

Also, the analog profile dropdown for HDA Creative is still empty which tells me the solution is not correct. I just force it to what I want by changing the files above. No idea how the analog duplex profile gets normally active so it can be selected from the normal KDE UI dropdown.

I think ~/.config/pulse are your local user setting. You most likely should change it in /etc/pulse instead and delete your local folder once.

Setting those properties did not solve my problem (see my answer below).

I suggest you check if PulseAudio is following your settings for the card profile and defaults

pacmd dump | grep -v module 

If you want audio to switch to playing to the USB speakers, set the speakers to be the default-sink and set the AE7 card to be the Fallback device in GUI controls

It should be a user option, as pulseaudio runs in user mode. But of course you can also set it as system wide. It’s your choice.

On Manjaro, PulseAudio is running in per-user mode from systemd pulseaudio.service
Usage of the per-user configuration files is explained in man default.pa and man pulse-daemon.conf

I usually suggest use of custom PulseAudio configuration files in home folder because the system configuration remains unaltered. User can revert to default configuration by deleting the custom configuration and restarting PulseAudio - systemctl --user restart pulseaudio

PulseAudio can be changed to run as system wide, but user should be aware of the limitations and security implications
PulseAudio/Documentation/WhatIsWrongWithSystemWide

1 Like