mirror of
https://github.com/aviallon/nixos-lib.git
synced 2026-04-06 01:38:06 +00:00
[Desktop/Multimedia] fix pipewire-noise-filter (and make it visible in outputs selection)
This commit is contained in:
parent
92b6e28cfe
commit
0524dde7e9
2 changed files with 27 additions and 19 deletions
|
|
@ -4,7 +4,7 @@ let
|
||||||
cfg = config.aviallon.desktop;
|
cfg = config.aviallon.desktop;
|
||||||
generalCfg = config.aviallon.general;
|
generalCfg = config.aviallon.general;
|
||||||
|
|
||||||
filterConfig = pkgs.callPackage ./pipewire-noise-filter.cfg.nix {
|
filterConfig = pkgs.callPackage ./pipewire/pipewire-noise-filter.conf.nix {
|
||||||
noiseFilterStrength = cfg.audio.noise-filter.strength;
|
noiseFilterStrength = cfg.audio.noise-filter.strength;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -84,13 +84,14 @@ in {
|
||||||
|
|
||||||
|
|
||||||
# Hardware-agnostic audio denoising
|
# Hardware-agnostic audio denoising
|
||||||
systemd.user.services.pipewire-noise-filter = mkIf cfg.audio.noise-filter.enable {
|
systemd.user.services = let
|
||||||
|
mkPipewireModule = {conf, description}: {
|
||||||
unitConfig = {
|
unitConfig = {
|
||||||
Slice = "session.slice";
|
Slice = "session.slice";
|
||||||
};
|
};
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
ExecStart = [
|
ExecStart = [
|
||||||
"${pkgs.pipewire}/bin/pipewire -c ${filterConfig}"
|
"${pkgs.pipewire}/bin/pipewire -c ${conf}"
|
||||||
];
|
];
|
||||||
Type = "simple";
|
Type = "simple";
|
||||||
Restart = "on-failure";
|
Restart = "on-failure";
|
||||||
|
|
@ -100,9 +101,16 @@ in {
|
||||||
environment = {
|
environment = {
|
||||||
PIPEWIRE_DEBUG = "3";
|
PIPEWIRE_DEBUG = "3";
|
||||||
};
|
};
|
||||||
enable = cfg.audio.noise-filter.strength > 0.0;
|
|
||||||
wantedBy = [ "pipewire.service" ];
|
wantedBy = [ "pipewire.service" ];
|
||||||
description = "Pipewire Noise Filter";
|
inherit description;
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
pipewire-noise-filter = mkIf cfg.audio.noise-filter.enable (
|
||||||
|
(mkPipewireModule { conf = filterConfig; description = "Pipewire Noise Filter"; }) //
|
||||||
|
{
|
||||||
|
enable = cfg.audio.noise-filter.strength > 0.0;
|
||||||
|
}
|
||||||
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue