Skip to content

Commit

Permalink
Added PipeWire configuration to disable hardware volume
Browse files Browse the repository at this point in the history
  • Loading branch information
tfpf committed Dec 17, 2024
1 parent 6908ea9 commit 46eb729
Showing 1 changed file with 7 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
monitor.bluez.properties = {
# Keep the software volume (set using a combination of keys) separate from
# the hardware volume (set using the buttons on a Bluetooth device). This
# affords fine-grained volume control; without that, it is painfully loud at
# all levels.
bluez5.enable-hw-volume = false
}

1 comment on commit 46eb729

@tfpf
Copy link
Owner Author

@tfpf tfpf commented on 46eb729 Dec 17, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Found this solution on Bluetooth headset - ArchWiki. Quoting the relevant part of the page below.

1.1.1 High audio volume due to synchronization between headphones and PipeWire

Since version 0.3.26, PipeWire uses "hardware volume" to link the volume of the headphones with the system, making it impossible to change one without the other. On some devices, this may result in the lowest possible volume being uncomfortably loud, and volume controls becoming too coarse. Hardware volume can be disabled using either WirePlumber or Pipewire Media Session.

1.1.1.1 Using WirePlumber

If it does not exist, create the directory and file /etc/wireplumber/wireplumber.conf.d/80-bluez-properties.conf to disable hardware volume system-wide, or ~/.config/wireplumber/wireplumber.conf.d/80-bluez-properties.conf to disable it only for your user. Edit the file to contain the following:

monitor.bluez.properties = {
  bluez5.enable-hw-volume = false
}

Reboot the system or restart the PipeWire and WirePlumber services for the changes to take effect.

Please sign in to comment.