7

On Ubuntu 20.10 I was able to pair the Samsung Galaxy Buds+ earplug headset with the Bluetooth from PulseAudio through the BlueZ API, but the audio from the low quality headphone had very low volume and only had medium frequencies, without bass and treble. The microphone did not work, as the SBC codec is unidirectional and did not return my voice.

I knew that the Pipewire audio server would support Bluetooth Audio 5.2 with AptX HD and maybe AptX Adaptive that would allow high quality sound from the headphone due to its advanced compression engine in the same bandwidth and implement Headset Profile (HSP) and Hands-Free Profile (HFP) with the Continuously Variable Slope Delta modulation (CVSD) protocol allowing bidirectional communication that would return the audio from the microphone.

However, at the time Pipewire was still in development and did not work in a production environment.

Researching the Internet a lot, I noticed that many users like me were frustrated with the limitations of the old PulseAudio, Jack and BlueZ audio servers, which did not support new hardware, not to mention the high latency and complications of managing two different servers that often went into conflict in professional audio recording.

Be patient!

Fernando Santucci
  • 1,270
  • 1
  • 11
  • 19

1 Answers1

5

With the announcement of Ubuntu 21.04 I was happy to know that Wayland and Pipewire would be the default, but then I knew that they would not support Nvidea graphics cards, so I would continue on Xorg. Nvidea Wayland support just only on driver version 480 with Ubuntu 21.10!

After installing version 21.04 I noticed the presence of Pipewire version 0.3.24, but the audio server that came with Xorg was still PulseAudio and the old BlueZ.

Following the procedures below I replaced the ALSA, PulseAudio, Jack and BlueZ set by Pipewire:

https://wiki.debian.org/PipeWire

The audio worked perfectly using a wired headphone connected via the P2 plug to the computer. However, I couldn't even activate Bluetooth (libspa-0.2-bluetooth) in the Gnome Settings.

So I updated Pipewire from the Ubuntu repository from version 0.3.24 to the latest version 0.3.27 of the PPA below:

sudo add-apt-repository ppa:pipewire-debian/pipewire-upstream
sudo apt update

In the Gnome Settings I do the following steps:

  1. In the Bluetooth tab, I activated Bluetooth (libspa-0.2-bluetooth), paired and connected the device Galaxy Buds+ (380F);
  2. In the Sound tab, I defined the Headset - Galaxy Buds+ (380F) output device with the High Fidelity Playback (A2DP Sink, AAC codec) setting and I defined the Headset - Galaxy Buds+ (380F) input device with the Headset Head Unit (HSP/HFP, CVSD codec) setting.

The Samsung Galaxy Buds+ audio worked bi-directionally with high quality stereo sound on the headphone and mono sound returning from the microphone!

Enjoy!

Fernando Santucci
  • 1,270
  • 1
  • 11
  • 19
  • I do not use gnome, but in the blueman-applet Devices window and in pavucontrol, I do not see AAC as an option for the audio codec. I see only mSBC and CVSD. mSBC is a lot better than CVSD, which has a lot of distortion, but it is still not perfect. I enabled AAC as described [here](https://wiki.archlinux.org/title/PipeWire#Low_audio_quality_on_Bluetooth) – Marcel Jul 09 '21 at 20:04
  • You may need to wait for a Pipewire integration dedicated to your desktop environment, because it hasn't started yet or has no intention of porting and offering compatibility with Wayland. ;) – Fernando Santucci Jul 10 '21 at 21:31
  • On Ubuntu 21.04, the Pipewire PPA on APT package manager downloads a series of Gnome modules such as Bluetooth Settings app and Volume Control extension in sync with bluetooth and pulseaudio pipewire's modules. – Fernando Santucci Jul 10 '21 at 21:32
  • I don't know how PPA will package integration with other desktop environments, such as the Bluetooth settings app and the system volume control extension. – Fernando Santucci Jul 10 '21 at 21:32
  • The AAC CODEC has the best audio quality so far, but in the absence of it, you should select the CODEC with the lowest latency because of your tolerance for being encapsulated over a bluetooth connection. – Fernando Santucci Jul 10 '21 at 21:32
  • Keep in mind that the APTX algorithm with the AAC CODEC was the only one specifically designed to handle no noticeable latency even in FPS games with the Bluetooth Audio 5.0 protocol. – Fernando Santucci Jul 10 '21 at 21:41
  • My DE is not getting support (openbox). Why do I need it? I can change the codec in the bluetooth settings and in pavucontrol. AAC is just not an option – Marcel Jul 11 '21 at 22:03
  • Wayland (Weston) and Pipewire projects are independent, so you can deploy them separately, as I did installing and configuring Pipewire over Xorg. – Fernando Santucci Jul 13 '21 at 06:14
  • However, both projects have a symbiosis in their motivation to exist: the modernization of synchronized audio and video execution without latency, abandoning the legacy and inefficient architecture of Xorg, PulseAudio and Jack that prevented the execution of sandboxed apps in containerized virtual environments like Snapcraft and Flatpak. – Fernando Santucci Jul 13 '21 at 06:14
  • Therefore, the logical conclusion is that if your Desktop Environment is not being ported to Wayland, it also will not have Pipewire compatibility. – Fernando Santucci Jul 13 '21 at 06:14
  • About AptX AAC codec isn't an option available, maybe the soundboard or bluetooth hardware of your chipset haven't support to Bluetooth Audio 5.2 protocol. Refer to your manufacturer's manual. – Fernando Santucci Jul 13 '21 at 06:22
  • Currently, the only windowing systems I know they migrated to Wayland were GNOME GTK and KDE QT. – Fernando Santucci Jul 13 '21 at 06:33
  • 2
    What? What does wayland have to do with audio? Anyway, I don't need my DE to install pipewire for me. I installed and configured it myself – Marcel Jul 13 '21 at 14:50
  • @FernandoSantucci Do I understand you correctly, that with your configuration in Gnome's Sound tab you have Hi-Fi playback (A2DP) even while using your headset as a microphone (HSP/HFP) too? So you'll hear your interlocutor in stereo, while the other part will hear you in mono? – DMT Feb 04 '22 at 11:44
  • Exactly! The headset setup is: headphone A2DP with codec AAC and microphone HSP/HFP with codec mSBC. Now is need to install the Wireplumber from PPA pipewire-debian. – Fernando Santucci Feb 05 '22 at 18:31