1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, stdenv
5
6# build-system
7, pybind11
8, setuptools
9
10# native dependencies
11, abseil-cpp
12, darwin
13
14# tests
15, pytestCheckHook
16}:
17
18buildPythonPackage rec {
19 pname = "webrtc-noise-gain";
20 version = "1.2.3";
21 pyproject = true;
22
23 src = fetchFromGitHub {
24 owner = "rhasspy";
25 repo = "webrtc-noise-gain";
26 rev = "v${version}";
27 hash = "sha256-DFEtuO49zXNixLwBjQ/WOiARDhMAXVH+5hfc3eSdPIo=";
28 };
29
30 nativeBuildInputs = [
31 pybind11
32 setuptools
33 ];
34
35 buildInputs = [
36 abseil-cpp
37 ] ++ lib.optionals (stdenv.isDarwin) [
38 darwin.apple_sdk.frameworks.CoreServices
39 ];
40
41 pythonImportsCheck = [
42 "webrtc_noise_gain"
43 ];
44
45 nativeCheckInputs = [
46 pytestCheckHook
47 ];
48
49 meta = with lib; {
50 description = "Tiny wrapper around webrtc-audio-processing for noise suppression/auto gain only";
51 homepage = "https://github.com/rhasspy/webrtc-noise-gain";
52 changelog = "https://github.com/rhasspy/webrtc-noise-gain/blob/${src.rev}/CHANGELOG.md";
53 license = licenses.mit;
54 maintainers = with maintainers; [ hexa ];
55 };
56}