diff --git a/pkgs/development/python-modules/noisereduce/default.nix b/pkgs/development/python-modules/noisereduce/default.nix new file mode 100644 index 000000000000..8ceb9cccd102 --- /dev/null +++ b/pkgs/development/python-modules/noisereduce/default.nix @@ -0,0 +1,52 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + joblib, + matplotlib, + numpy, + pytestCheckHook, + scipy, + setuptools, + torch, + tqdm, +}: + +buildPythonPackage rec { + pname = "noisereduce"; + version = "3.0.3"; + pyproject = true; + + src = fetchFromGitHub { + owner = "timsainb"; + repo = "noisereduce"; + tag = "v${version}"; + hash = "sha256-CMXbl+9L01rtsD8BZ3nNomacsChy/1EGdUdWz7Ytbjk="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + joblib + matplotlib + numpy + scipy + tqdm + ]; + + optional-dependencies = { + PyTorch = [ torch ]; + }; + + nativeCheckInputs = [ pytestCheckHook ] ++ lib.flatten (builtins.attrValues optional-dependencies); + + pythonImportsCheck = [ "noisereduce" ]; + + meta = { + description = "Noise reduction using spectral gating (speech, bioacoustics, audio, time-domain signals"; + homepage = "https://github.com/timsainb/noisereduce"; + changelog = "https://github.com/timsainb/noisereduce/releases/tag/${src.tag}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index fd87324b2c11..43706a598c28 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -10477,6 +10477,8 @@ self: super: with self; { noiseprotocol = callPackage ../development/python-modules/noiseprotocol { }; + noisereduce = callPackage ../development/python-modules/noisereduce { }; + nomadnet = callPackage ../development/python-modules/nomadnet { }; nominal = callPackage ../development/python-modules/nominal { };