aboutsummaryrefslogtreecommitdiff
path: root/nixos/services/pipewire.service.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixos/services/pipewire.service.nix')
-rw-r--r--nixos/services/pipewire.service.nix58
1 files changed, 30 insertions, 28 deletions
diff --git a/nixos/services/pipewire.service.nix b/nixos/services/pipewire.service.nix
index be0cc76..83548a4 100644
--- a/nixos/services/pipewire.service.nix
+++ b/nixos/services/pipewire.service.nix
@@ -1,4 +1,5 @@
-{pkgs, ...}: let
+{ pkgs, ... }:
+let
pw_rnnoise_config = {
"context.modules" = [
{
@@ -13,11 +14,11 @@
"name" = "rnnoise";
"plugin" = "${pkgs.rnnoise-plugin}/lib/ladspa/librnnoise_ladspa.so";
"label" = "noise_suppressor_stereo";
- "control" = {"VAD Threshold (%)" = 50.0;};
+ "control" = { "VAD Threshold (%)" = 50.0; };
}
];
};
- "audio.position" = ["FL" "FR"];
+ "audio.position" = [ "FL" "FR" ];
"capture.props" = {
"node.name" = "effect_input.rnnoise";
"node.passive" = true;
@@ -30,7 +31,8 @@
}
];
};
-in {
+in
+{
services.pipewire = {
enable = true;
alsa = {
@@ -42,33 +44,33 @@ in {
wireplumber.configPackages = [
(pkgs.writeTextDir
"share/wireplumber/wireplumber.conf.d/52-profile-switch.conf" ''
- wireplumber.settings = {
- bluetooth.autoswitch-to-headset-profile = false
- }
+ wireplumber.settings = {
+ bluetooth.autoswitch-to-headset-profile = false
+ }
- monitor.bluez.properties = {
- ## Supported roles: hsp_hs (HSP Headset),
- ## hsp_ag (HSP Audio Gateway),
- ## hfp_hf (HFP Hands-Free),
- ## hfp_ag (HFP Audio Gateway)
- ## a2dp_sink (A2DP Audio Sink)
- ## a2dp_source (A2DP Audio Source)
- ## bap_sink (LE Audio Basic Audio Profile Sink)
- ## bap_source (LE Audio Basic Audio Profile Source)
- ## --
- ## Only enable A2DP here and disable HFP. See note at the top as to why.
- bluez5.roles = [ a2dp_sink a2dp_source ]
- }
- '')
+ monitor.bluez.properties = {
+ ## Supported roles: hsp_hs (HSP Headset),
+ ## hsp_ag (HSP Audio Gateway),
+ ## hfp_hf (HFP Hands-Free),
+ ## hfp_ag (HFP Audio Gateway)
+ ## a2dp_sink (A2DP Audio Sink)
+ ## a2dp_source (A2DP Audio Source)
+ ## bap_sink (LE Audio Basic Audio Profile Sink)
+ ## bap_source (LE Audio Basic Audio Profile Source)
+ ## --
+ ## Only enable A2DP here and disable HFP. See note at the top as to why.
+ bluez5.roles = [ a2dp_sink a2dp_source ]
+ }
+ '')
(pkgs.writeTextDir
"share/wireplumber/bluetooth.lua.d/51-bluez-config.lua" ''
- bluez_monitor.properties = {
- ["bluez5.enable-sbc-xq"] = true,
- ["bluez5.enable-msbc"] = true,
- ["bluez5.enable-hw-volume"] = true,
- ["bluez5.headset-roles"] = "[ hsp_hs hsp_ag hfp_hf hfp_ag ]"
- }
- '')
+ bluez_monitor.properties = {
+ ["bluez5.enable-sbc-xq"] = true,
+ ["bluez5.enable-msbc"] = true,
+ ["bluez5.enable-hw-volume"] = true,
+ ["bluez5.headset-roles"] = "[ hsp_hs hsp_ag hfp_hf hfp_ag ]"
+ }
+ '')
];
#extraConfig.pipewire."99-input-denoising" = pw_rnnoise_config;
};