magnetophonDSP: update to new faust libraries

This commit is contained in:
Bart Brouns
2016-11-07 14:06:35 +01:00
parent 77afa8e6b7
commit f63c179b0b
13 changed files with 213 additions and 128 deletions
@@ -0,0 +1,38 @@
{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
stdenv.mkDerivation rec {
name = "CharacterCompressor-${version}";
version = "0.3.3";
src = fetchFromGitHub {
owner = "magnetophon";
repo = "CharacterCompressor";
rev = "V${version}";
sha256 = "1h0bhjhx023476gbijq842b6f8z71zcyn4c9mddwyb18w9cdamp5";
};
buildInputs = [ faust2jaqt faust2lv2 ];
buildPhase = ''
faust2jaqt -vec -time -t 99999 CharacterCompressor.dsp
faust2jaqt -vec -time -t 99999 CharacterCompressorMono.dsp
sed -i "s|\[ *scale *: *log *\]||g ; s|\btgroup\b|hgroup|g" "lib/CharacterCompressor.lib"
faust2lv2 -vec -time -gui -t 99999 CharacterCompressor.dsp
faust2lv2 -vec -time -gui -t 99999 CharacterCompressorMono.dsp
'';
installPhase = ''
mkdir -p $out/bin
cp CharacterCompressor $out/bin/
cp CharacterCompressorMono $out/bin/
mkdir -p $out/lib/lv2
cp -r CharacterCompressor.lv2/ $out/lib/lv2
cp -r CharacterCompressorMono.lv2/ $out/lib/lv2
'';
meta = {
description = "A compressor with character. For jack and lv2";
homepage = https://github.com/magnetophon/CharacterCompressor;
license = stdenv.lib.licenses.gpl3;
maintainers = [ stdenv.lib.maintainers.magnetophon ];
};
}
@@ -0,0 +1,45 @@
{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
stdenv.mkDerivation rec {
name = "CompBus-${version}";
version = "1.1.1";
src = fetchFromGitHub {
owner = "magnetophon";
repo = "CompBus";
rev = "V${version}";
sha256 = "0yhj680zgk4dn4fi8j3apm72f3z2mjk12amf2a7p0lwn9iyh4a2z";
};
buildInputs = [ faust2jaqt faust2lv2 ];
buildPhase = ''
for f in *.dsp;
do
faust2jaqt -time -vec -double -t 99999 $f
done
sed -i "s|\[ *scale *: *log *\]||g ; s|\btgroup\b|hgroup|g" "CompBus.lib"
for f in *.dsp;
do
faust2lv2 -time -vec -double -gui -t 99999 $f
done
'';
installPhase = ''
mkdir -p $out/lib/lv2
mv *.lv2/ $out/lib/lv2
mkdir -p $out/bin
for f in $(find . -executable -type f);
do
cp $f $out/bin/
done
'';
meta = {
description = "A group of compressors mixed into a bus, sidechained from that mix bus. For jack and lv2";
homepage = https://github.com/magnetophon/CompBus;
license = stdenv.lib.licenses.gpl3;
maintainers = [ stdenv.lib.maintainers.magnetophon ];
};
}
@@ -0,0 +1,34 @@
{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
stdenv.mkDerivation rec {
name = "constant-detune-chorus-${version}";
version = "0.1.3";
src = fetchFromGitHub {
owner = "magnetophon";
repo = "constant-detune-chorus";
rev = "V${version}";
sha256 = "1sipmc25fr7w7xqx1r0y6i2zwfkgszzwvhk1v15mnsb3cqvk8ybn";
};
buildInputs = [ faust2jaqt faust2lv2 ];
buildPhase = ''
faust2jaqt -time -vec -t 99999 ConstantDetuneChorus.dsp
sed -i "s|\[ *scale *: *log *\]||g ; s|\btgroup\b|hgroup|g" "ConstantDetuneChorus.dsp"
faust2lv2 -time -vec -t 99999 -gui ConstantDetuneChorus.dsp
'';
installPhase = ''
mkdir -p $out/bin
cp ConstantDetuneChorus $out/bin/
mkdir -p $out/lib/lv2
cp -r ConstantDetuneChorus.lv2/ $out/lib/lv2
'';
meta = {
description = "A chorus algorithm that maintains constant and symmetric detuning depth (in cents), regardless of modulation rate. For jack and lv2";
homepage = https://github.com/magnetophon/constant-detune-chorus;
license = stdenv.lib.licenses.gpl3;
maintainers = [ stdenv.lib.maintainers.magnetophon ];
};
}
@@ -0,0 +1,34 @@
{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
stdenv.mkDerivation rec {
name = "LazyLimiter-${version}";
version = "0.3.2";
src = fetchFromGitHub {
owner = "magnetophon";
repo = "LazyLimiter";
rev = "V${version}";
sha256 = "10xdydwmsnkx8hzsm74pa546yahp29wifydbc48yywv3sfj5anm7";
};
buildInputs = [ faust2jaqt faust2lv2 ];
buildPhase = ''
faust2jaqt -vec -time -t 99999 LazyLimiter.dsp
sed -i "s|\[ *scale *: *log *\]||g ; s|\btgroup\b|hgroup|g" "GUI.lib"
faust2lv2 -vec -time -t 99999 -gui LazyLimiter.dsp
'';
installPhase = ''
mkdir -p $out/bin
cp LazyLimiter $out/bin/
mkdir -p $out/lib/lv2
cp -r LazyLimiter.lv2/ $out/lib/lv2
'';
meta = {
description = "A fast yet clean lookahead limiter for jack and lv2";
homepage = https://magnetophon.github.io/LazyLimiter/;
license = stdenv.lib.licenses.gpl2;
maintainers = [ stdenv.lib.maintainers.magnetophon ];
};
}
@@ -0,0 +1,34 @@
{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
stdenv.mkDerivation rec {
name = "MBdistortion-${version}";
version = "1.1.1";
src = fetchFromGitHub {
owner = "magnetophon";
repo = "MBdistortion";
rev = "V${version}";
sha256 = "0mdzaqmxzgspfgx9w1hdip18y17hwpdcgjyq1rrfm843vkascwip";
};
buildInputs = [ faust2jaqt faust2lv2 ];
buildPhase = ''
faust2jaqt -time -vec -t 99999 MBdistortion.dsp
sed -i "s|\[ *scale *: *log *\]||g ; s|\btgroup\b|hgroup|g" "MBdistortion.dsp"
faust2lv2 -time -vec -gui -t 99999 MBdistortion.dsp
'';
installPhase = ''
mkdir -p $out/bin
cp MBdistortion $out/bin/
mkdir -p $out/lib/lv2
cp -r MBdistortion.lv2/ $out/lib/lv2
'';
meta = {
description = "Mid-side multiband distortion for jack and lv2";
homepage = https://github.com/magnetophon/MBdistortion;
license = stdenv.lib.licenses.gpl2;
maintainers = [ stdenv.lib.maintainers.magnetophon ];
};
}
@@ -0,0 +1,34 @@
{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
stdenv.mkDerivation rec {
name = "RhythmDelay-${version}";
version = "2.1";
src = fetchFromGitHub {
owner = "magnetophon";
repo = "RhythmDelay";
rev = "V${version}";
sha256 = "1j0bjl9agz43dcrcrbiqd7fv7xsxgd65s4ahhv5pvcr729y0fxg4";
};
buildInputs = [ faust2jaqt faust2lv2 ];
buildPhase = ''
faust2jaqt -time -vec -t 99999 RhythmDelay.dsp
sed -i "s|\[ *scale *: *log *\]||g ; s|\btgroup\b|hgroup|g" "RhythmDelay.dsp"
faust2lv2 -time -vec -t 99999 -gui RhythmDelay.dsp
'';
installPhase = ''
mkdir -p $out/bin
cp RhythmDelay $out/bin/
mkdir -p $out/lib/lv2
cp -r RhythmDelay.lv2/ $out/lib/lv2
'';
meta = {
description = "Tap a rhythm into your delay! For jack and lv2";
homepage = https://github.com/magnetophon/RhythmDelay;
license = stdenv.lib.licenses.gpl3;
maintainers = [ stdenv.lib.maintainers.magnetophon ];
};
}
@@ -0,0 +1,56 @@
{ stdenv, pkgs, callPackage, fetchFromGitHub, faust2jack, faust2lv2, helmholtz, mrpeach, puredata-with-plugins }:
stdenv.mkDerivation rec {
name = "VoiceOfFaust-${version}";
version = "1.1.4";
src = fetchFromGitHub {
owner = "magnetophon";
repo = "VoiceOfFaust";
rev = "V${version}";
sha256 = "0la9b806qwrlsxgbir7n1db8v3w24wmd6k43p6qpr1fjjpkhrrgw";
};
plugins = [ helmholtz mrpeach ];
pitchTracker = puredata-with-plugins plugins;
buildInputs = [ faust2jack faust2lv2 ];
runtimeInputs = [ pitchTracker ];
patchPhase = ''
sed -i "s@pd -nodac@${pitchTracker}/bin/pd -nodac@g" launchers/synthWrapper
sed -i "s@../PureData/OscSendVoc.pd@$out/PureData/OscSendVoc.pd@g" launchers/synthWrapper
'';
buildPhase = ''
sh install.sh
# so it doesn;t end up in /bin/ :
rm -f install.sh
'';
installPhase = ''
mkdir -p $out/bin
for file in ./*; do
if test -x "$file" && test -f "$file"; then
cp "$file" "$out/bin"
fi
done
cp launchers/* $out/bin/
mkdir $out/PureData/
# cp PureData/OscSendVoc.pd $out/PureData/OscSendVoc.pd
cp PureData/* $out/PureData/
mkdir -p $out/lib/lv2
cp -r *.lv2/ $out/lib/lv2
'';
meta = {
description = "Turn your voice into a synthesizer";
homepage = https://github.com/magnetophon/VoiceOfFaust;
license = stdenv.lib.licenses.gpl3;
maintainers = [ stdenv.lib.maintainers.magnetophon ];
};
}
@@ -0,0 +1,45 @@
{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
stdenv.mkDerivation rec {
name = "faustCompressors-v${version}";
version = "1.1.1";
src = fetchFromGitHub {
owner = "magnetophon";
repo = "faustCompressors";
rev = "v${version}";
sha256 = "0mkram2hm7i5za7pfn5crh2arbajk8praksxzgjx90rrxwl1y3d1";
};
buildInputs = [ faust2jaqt faust2lv2 ];
buildPhase = ''
for f in *.dsp;
do
faust2jaqt -time -double -t 99999 $f
done
sed -i "s|\[ *scale *: *log *\]||g ; s|\btgroup\b|hgroup|g" "compressors.lib"
for f in *.dsp;
do
faust2lv2 -time -double -gui -t 99999 $f
done
'';
installPhase = ''
mkdir -p $out/lib/lv2
mv *.lv2/ $out/lib/lv2
mkdir -p $out/bin
for f in $(find . -executable -type f);
do
cp $f $out/bin/
done
'';
meta = {
description = "A collection of bread and butter compressors";
homepage = https://github.com/magnetophon/faustCompressors;
license = stdenv.lib.licenses.gpl3;
maintainers = [ stdenv.lib.maintainers.magnetophon ];
};
}
@@ -0,0 +1,41 @@
{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
stdenv.mkDerivation rec {
name = "pluginUtils-${version}";
version = "1.1";
src = fetchFromGitHub {
owner = "magnetophon";
repo = "pluginUtils";
rev = "V${version}";
sha256 = "1hnr5sp7k6ypf4ks61lnyqx44dkv35yllf3a3xcbrw7yqzagwr1c";
};
buildInputs = [ faust2jaqt faust2lv2 ];
buildPhase = ''
for f in *.dsp
do
echo "Building jack standalone for $f"
faust2jaqt -vec -time -t 99999 "$f"
sed -i "s|\[ *scale *: *log *\]||g ; s|\btgroup\b|hgroup|g" "$f"
echo "Building lv2 for $f"
faust2lv2 -vec -time -gui -t 99999 "$f"
done
'';
installPhase = ''
rm -f *.dsp
rm -f *.lib
mkdir -p $out/lib/lv2
mv *.lv2/ $out/lib/lv2
mkdir -p $out/bin
cp * $out/bin/
'';
meta = {
description = "Some simple utility lv2 plugins";
homepage = https://github.com/magnetophon/pluginUtils;
license = stdenv.lib.licenses.gpl3;
maintainers = [ stdenv.lib.maintainers.magnetophon ];
};
}
@@ -0,0 +1,38 @@
{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
stdenv.mkDerivation rec {
name = "shelfMultiBand-${version}";
version = "0.6.1";
src = fetchFromGitHub {
owner = "magnetophon";
repo = "shelfMultiBand";
rev = "V${version}";
sha256 = "1b1h4z5fs2xm7wvw11p9wnd0bxs3m88124f5phh0gwvpsdrd0im5";
};
buildInputs = [ faust2jaqt faust2lv2 ];
buildPhase = ''
faust2jaqt -vec -double -time -t 99999 shelfMultiBand.dsp
faust2jaqt -vec -double -time -t 99999 shelfMultiBandMono.dsp
sed -i "s|\[ *scale *: *log *\]||g ; s|\btgroup\b|hgroup|g" "shelfMultiBand.lib"
faust2lv2 -vec -double -time -gui -t 99999 shelfMultiBandMono.dsp
faust2lv2 -vec -double -time -gui -t 99999 shelfMultiBand.dsp
'';
installPhase = ''
mkdir -p $out/bin
cp shelfMultiBand $out/bin/
cp shelfMultiBandMono $out/bin/
mkdir -p $out/lib/lv2
cp -r shelfMultiBand.lv2/ $out/lib/lv2
cp -r shelfMultiBandMono.lv2/ $out/lib/lv2
'';
meta = {
description = "A multiband compressor made from shelving filters.";
homepage = https://github.com/magnetophon/shelfMultiBand;
license = stdenv.lib.licenses.gpl3;
maintainers = [ stdenv.lib.maintainers.magnetophon ];
};
}