61 lines
1.6 KiB
Nix
61 lines
1.6 KiB
Nix
{ lib, stdenv, fetchFromGitHub, fetchpatch
|
|
, audiofile, libvorbis, fltk, fftw, fftwFloat
|
|
, minixml, pkg-config, libmad, libjack2, portaudio, libsamplerate
|
|
}:
|
|
|
|
stdenv.mkDerivation {
|
|
pname = "paulstretch";
|
|
version = "2.2-2";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "paulnasca";
|
|
repo = "paulstretch_cpp";
|
|
rev = "7f5c3993abe420661ea0b808304b0e2b4b0048c5";
|
|
sha256 = "06dy03dbz1yznhsn0xvsnkpc5drzwrgxbxdx0hfpsjn2xcg0jrnc";
|
|
};
|
|
|
|
nativeBuildInputs = [ pkg-config ];
|
|
|
|
buildInputs = [
|
|
audiofile
|
|
libvorbis
|
|
fltk
|
|
fftw
|
|
fftwFloat
|
|
minixml
|
|
libmad
|
|
libjack2
|
|
portaudio
|
|
libsamplerate
|
|
];
|
|
|
|
patches = [
|
|
# https://github.com/paulnasca/paulstretch_cpp/pull/12
|
|
(fetchpatch {
|
|
url = "https://github.com/paulnasca/paulstretch_cpp/commit/d8671b36135fe66839b11eadcacb474cc8dae0d1.patch";
|
|
sha256 = "0lx1rfrs53afkiz1drp456asqgj5yv6hx3lkc01165cv1jsbw6q4";
|
|
})
|
|
];
|
|
|
|
buildPhase = ''
|
|
bash compile_linux_fftw_jack.sh
|
|
'';
|
|
|
|
installPhase = ''
|
|
install -Dm555 ./paulstretch $out/bin/paulstretch
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "Produces high quality extreme sound stretching";
|
|
longDescription = ''
|
|
This is a program for stretching the audio. It is suitable only for
|
|
extreme sound stretching of the audio (like 50x) and for applying
|
|
special effects by "spectral smoothing" the sounds.
|
|
It can transform any sound/music to a texture.
|
|
'';
|
|
homepage = "https://hypermammut.sourceforge.net/paulstretch/";
|
|
platforms = platforms.linux;
|
|
license = licenses.gpl2;
|
|
mainProgram = "paulstretch";
|
|
};
|
|
}
|