diff --git a/pkgs/applications/audio/speech-denoiser/default.nix b/pkgs/applications/audio/speech-denoiser/default.nix new file mode 100644 index 00000000000..2401dc60b09 --- /dev/null +++ b/pkgs/applications/audio/speech-denoiser/default.nix @@ -0,0 +1,42 @@ +{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, lv2, meson, ninja }: + +let + speech-denoiser-src = fetchFromGitHub { + owner = "lucianodato"; + repo = "speech-denoiser"; + rev = "04cfba929630404f8d4f4ca5bac8d9b09a99152f"; + sha256 = "189l6lz8sz5vr6bjyzgcsrvksl1w6crqsg0q65r94b5yjsmjnpr4"; + }; + + rnnoise-nu = stdenv.mkDerivation rec { + pname = "rnnoise-nu"; + version = "unstable-07-10-2019"; + src = speech-denoiser-src; + sourceRoot = "source/rnnoise"; + nativeBuildInputs = [ autoreconfHook ]; + configureFlags = [ "--disable-examples" "--disable-doc" "--disable-shared" "--enable-static" ]; + installTargets = [ "install-rnnoise-nu" ]; + }; +in +stdenv.mkDerivation rec { + pname = "speech-denoiser"; + version = "unstable-07-10-2019"; + + src = speech-denoiser-src; + + nativeBuildInputs = [ pkgconfig meson ninja ]; + buildInputs = [ lv2 rnnoise-nu ]; + + postPatch = '' + substituteInPlace meson.build \ + --replace "cc.find_library('rnnoise-nu',dirs: meson.current_source_dir() + '/rnnoise/.libs/',required : true)" "cc.find_library('rnnoise-nu', required : true)" + ''; + + meta = with stdenv.lib; { + description = "Speech denoise lv2 plugin based on RNNoise library"; + homepage = https://github.com/lucianodato/speech-denoiser; + license = licenses.lgpl3; + maintainers = [ maintainers.magnetophon ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 632a77cfaa0..b86fa5c3d08 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5822,6 +5822,8 @@ in spaceFM = callPackage ../applications/misc/spacefm { }; + speech-denoiser = callPackage ../applications/audio/speech-denoiser {}; + squashfsTools = callPackage ../tools/filesystems/squashfs { }; squashfuse = callPackage ../tools/filesystems/squashfuse { };