9

The settings menu provides me a choice between "Headset Head Unit (HSP/HFP)" and "High Fidelity Playback (A2DP Sink)" on my Bluetooth headphones. The former produces horrible sound quality, so I always set the profile to the latter, but some applications seem to set the profile to Headset Head Unit. For example, if I open TeamSpeak. I can open the settings menu and set the profile back to A2DP without issue, but is there a way I can force it to stay on the mode I select? Additionally, when I turn on my headphones, they often connect to the HSP/HFP profile. Is there a way I can make it remember my profile choice?

Note: My question doesn't pertain to changing the profile via the CLI, but rather how to make sure the profile I pick (via either GUI or CLI) is not overridden by applications, and is not reset on restarting my earphones.

2

1 Answer 1

1

The observed profile switching seems to be a feature of PulseAudio 10.0 and above, mentioned in the release notes as "Automatically switch Bluetooth profile when using VoIP applications". To summarise, if A2DP is used, PulseAudio will switch to HFP when an application uses the microphone. This is necessary because A2DP cannot support simultaneous input and output, whereas HFP does.

The following bug reports have more information on the issue: https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/508522 https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/1711087

To resolve the problem, you can either edit /etc/pulse/default.pa or ~/.config/default.pa, based on your preference. If you decide to use the user configuration file, you may have to create it by copying /etc/pulse/default.pa. Once you've decided which file you want to edit, find the following line:

load-module module-bluetooth-policy

... and replace it with the following:

load-module module-bluetooth-policy auto_switch=false

The added parameter will stop PulseAudio from performing the profile switching.

I will leave the question open, as this answer doesn't specifically address the issue of enforcing a profile. It does, however, address the cause of switching that I was facing, and hopefully someone else will find it useful.

You must log in to answer this question.

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