diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/audio')
24 files changed, 732 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/audio/jamomacore/default.nix b/nixpkgs/pkgs/development/libraries/audio/jamomacore/default.nix new file mode 100644 index 000000000000..7c9b3ef67c9b --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/jamomacore/default.nix @@ -0,0 +1,25 @@ +{ stdenv, fetchFromGitHub, pkgconfig, alsaLib, portaudio, portmidi, libsndfile, cmake, libxml2 }: + +stdenv.mkDerivation rec { + version = "1.0-beta.1"; + pname = "JamomaCore"; + + src = fetchFromGitHub { + owner = "jamoma"; + repo = "JamomaCore"; + rev = "v${version}"; + sha256 = "1hb9b6qc18rsvzvixgllknn756m6zwcn22c79rdibbyz1bhrcnln"; + }; + + nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ alsaLib portaudio portmidi libsndfile cmake libxml2 ]; + + meta = { + description = "A C++ platform for building dynamic and reflexive systems with an emphasis on audio and media"; + homepage = "http://www.jamoma.org"; + license = stdenv.lib.licenses.bsd3; + maintainers = [ stdenv.lib.maintainers.magnetophon ]; + platforms = stdenv.lib.platforms.linux; + broken = true; # 2018-04-10 + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/libbass/default.nix b/nixpkgs/pkgs/development/libraries/audio/libbass/default.nix new file mode 100644 index 000000000000..593854bb280d --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/libbass/default.nix @@ -0,0 +1,66 @@ +{ stdenv, unzip, fetchurl }: + +# Upstream changes files in-place, to update: +# 1. Check latest version at http://www.un4seen.com/ +# 2. Update `version`s and `sha256` sums. +# See also http://www.un4seen.com/forum/?topic=18614.0 + +let + allBass = { + bass = { + h = "bass.h"; + version = "2.4.15"; + so = { + i686_linux = "libbass.so"; + x86_64-linux = "x64/libbass.so"; + }; + urlpath = "bass24-linux.zip"; + sha256 = "1z01im0l2ydi608vc0n0c1cfyp1vrh6681zn2zkhg98vvs20y805"; + }; + + bass_fx = { + h = "C/bass_fx.h"; + version = "2.4.12.1"; + so = { + i686_linux = "libbass_fx.so"; + x86_64-linux = "x64/libbass_fx.so"; + }; + urlpath = "z/0/bass_fx24-linux.zip"; + sha256 = "1q0g74z7iyhxqps5b3gnnbic8v2jji1r0mkvais57lsx8y21sbin"; + }; + }; + + dropBass = name: bass: stdenv.mkDerivation { + pname = "lib${name}"; + inherit (bass) version; + + src = fetchurl { + url = "https://www.un4seen.com/files/${bass.urlpath}"; + inherit (bass) sha256; + }; + unpackCmd = '' + mkdir out + ${unzip}/bin/unzip $curSrc -d out + ''; + + lpropagatedBuildInputs = [ unzip ]; + dontBuild = true; + installPhase = + let so = + if bass.so ? ${stdenv.hostPlatform.system} then bass.so.${stdenv.hostPlatform.system} + else throw "${name} not packaged for ${stdenv.hostPlatform.system} (yet)."; + in '' + mkdir -p $out/{lib,include} + install -m644 -t $out/lib/ ${so} + install -m644 -t $out/include/ ${bass.h} + ''; + + meta = with stdenv.lib; { + description = "Shareware audio library"; + homepage = "https://www.un4seen.com/"; + license = licenses.unfreeRedistributable; + platforms = builtins.attrNames bass.so; + }; + }; + +in stdenv.lib.mapAttrs dropBass allBass diff --git a/nixpkgs/pkgs/development/libraries/audio/libbs2b/default.nix b/nixpkgs/pkgs/development/libraries/audio/libbs2b/default.nix new file mode 100644 index 000000000000..bc98dab4ab62 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/libbs2b/default.nix @@ -0,0 +1,23 @@ +{ stdenv, fetchurl, pkgconfig, libsndfile }: + +stdenv.mkDerivation rec { + pname = "libbs2b"; + version = "3.1.0"; + + src = fetchurl { + url = "mirror://sourceforge/bs2b/${pname}-${version}.tar.bz2"; + sha256 = "0vz442kkjn2h0dlxppzi4m5zx8qfyrivq581n06xzvnyxi5rg6a7"; + }; + + nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ libsndfile ]; + + hardeningDisable = [ "format" ]; + + meta = { + homepage = "http://bs2b.sourceforge.net/"; + description = "Bauer stereophonic-to-binaural DSP library"; + license = stdenv.lib.licenses.mit; + platforms = stdenv.lib.platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/libgme/default.nix b/nixpkgs/pkgs/development/libraries/audio/libgme/default.nix new file mode 100644 index 000000000000..3ac8293986d8 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/libgme/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchFromBitbucket, cmake, removeReferencesTo }: +let + version = "0.6.3"; +in stdenv.mkDerivation { + pname = "libgme"; + inherit version; + + meta = with stdenv.lib; { + description = "A collection of video game music chip emulators"; + homepage = "https://bitbucket.org/mpyne/game-music-emu/overview"; + license = licenses.lgpl21; + platforms = platforms.all; + maintainers = with maintainers; [ lheckemann ]; + }; + + src = fetchFromBitbucket { + owner = "mpyne"; + repo = "game-music-emu"; + rev = version; + sha256 = "100ahb4n4pvgcry9xzlf2fr4j57n5h9x7pvyhhxys4dcy8axqqsy"; + }; + + buildInputs = [ cmake ]; + + nativeBuildInputs = [ removeReferencesTo ]; + + # It used to reference it, in the past, but thanks to the postFixup hook, now + # it doesn't. + disallowedReferences = [ stdenv.cc.cc ]; + + postFixup = stdenv.lib.optionalString stdenv.isLinux '' + remove-references-to -t ${stdenv.cc.cc} "$(readlink -f $out/lib/libgme.so)" + ''; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/libinstpatch/default.nix b/nixpkgs/pkgs/development/libraries/audio/libinstpatch/default.nix new file mode 100644 index 000000000000..3968794d2dc7 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/libinstpatch/default.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchFromGitHub, cmake, pkg-config, glib, libsndfile }: + +stdenv.mkDerivation rec { + pname = "libinstpatch"; + version = "1.1.5"; + + src = fetchFromGitHub { + owner = "swami"; + repo = pname; + rev = "v${version}"; + sha256 = "0psx4hc5yksfd3k2xqsc7c8lbz2d4yybikyddyd9hlkhq979cmjb"; + }; + + nativeBuildInputs = [ cmake pkg-config ]; + + propagatedBuildInputs = [ glib libsndfile ]; # Both are needed for includes. + + cmakeFlags = [ + "-DLIB_SUFFIX=" # Install in $out/lib. + ]; + + meta = with stdenv.lib; { + homepage = "http://www.swamiproject.org/"; + description = "MIDI instrument patch files support library"; + license = licenses.lgpl21; + maintainers = with maintainers; [ orivej ]; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/libmysofa/default.nix b/nixpkgs/pkgs/development/libraries/audio/libmysofa/default.nix new file mode 100644 index 000000000000..c2b2725c19cc --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/libmysofa/default.nix @@ -0,0 +1,26 @@ +{ stdenv, fetchFromGitHub, cmake, zlib }: + +stdenv.mkDerivation rec { + pname = "libmysofa"; + version = "1.1"; + + src = fetchFromGitHub { + owner = "hoene"; + repo = "libmysofa"; + rev = "v${version}"; + sha256 = "12jzap5fh0a1fmfy4z8z4kjjlwi0qzdb9z59ijdlyqdzwxnzkccx"; + }; + + nativeBuildInputs = [ cmake ]; + buildInputs = [ zlib ]; + + cmakeFlags = [ "-DBUILD_TESTS=OFF" "-DCODE_COVERAGE=OFF" ]; + + meta = with stdenv.lib; { + description = "Reader for AES SOFA files to get better HRTFs"; + homepage = "https://github.com/hoene/libmysofa"; + license = licenses.bsd3; + platforms = platforms.all; + maintainers = with maintainers; [ jfrankenau ]; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/libsmf/default.nix b/nixpkgs/pkgs/development/libraries/audio/libsmf/default.nix new file mode 100644 index 000000000000..d521b7e76abb --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/libsmf/default.nix @@ -0,0 +1,21 @@ +{ stdenv, fetchurl, autoreconfHook, glib, pkgconfig }: + +stdenv.mkDerivation rec { + version = "1.3"; + pname = "libsmf"; + src = fetchurl { + url = "https://github.com/stump/libsmf/archive/${pname}-${version}.tar.gz"; + sha256 = "1527pcc1vd0l5iks2yw8m0bymcrnih2md5465lwpzw0wgy4rky7n"; + }; + + nativeBuildInputs = [ autoreconfHook pkgconfig ]; + buildInputs = [ glib ]; + + meta = with stdenv.lib; { + description = "A C library for reading and writing Standard MIDI Files"; + homepage = "https://github.com/stump/libsmf"; + license = licenses.bsd2; + maintainers = [ maintainers.goibhniu ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/lilv/default.nix b/nixpkgs/pkgs/development/libraries/audio/lilv/default.nix new file mode 100644 index 000000000000..124828b0ff5f --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/lilv/default.nix @@ -0,0 +1,25 @@ +{ stdenv, fetchurl, lv2, pkgconfig, python3, serd, sord, sratom, wafHook }: + +stdenv.mkDerivation rec { + pname = "lilv"; + version = "0.24.8"; + + src = fetchurl { + url = "https://download.drobilla.net/${pname}-${version}.tar.bz2"; + sha256 = "0063i5zgf3d3accwmyx651hw0wh5ik7kji2hvfkcdbl1qia3dp6a"; + }; + + patches = [ ./lilv-pkgconfig.patch ]; + + nativeBuildInputs = [ pkgconfig python3 wafHook ]; + buildInputs = [ serd sord sratom ]; + propagatedBuildInputs = [ lv2 ]; + + meta = with stdenv.lib; { + homepage = "http://drobilla.net/software/lilv"; + description = "A C library to make the use of LV2 plugins"; + license = licenses.mit; + maintainers = [ maintainers.goibhniu ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/lilv/lilv-pkgconfig.patch b/nixpkgs/pkgs/development/libraries/audio/lilv/lilv-pkgconfig.patch new file mode 100644 index 000000000000..a5a8c6007e43 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/lilv/lilv-pkgconfig.patch @@ -0,0 +1,6 @@ +--- a/lilv.pc.in ++++ b/lilv.pc.in +@@ -9 +9,2 @@ Description: Simple C library for hosting LV2 plugins +-Requires: @LILV_PKG_DEPS@ ++Requires: lv2 ++Requires.private: @LILV_PKG_DEPS@ diff --git a/nixpkgs/pkgs/development/libraries/audio/lv2/default.nix b/nixpkgs/pkgs/development/libraries/audio/lv2/default.nix new file mode 100644 index 000000000000..dac985846469 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/lv2/default.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchurl, gtk2, libsndfile, pkgconfig, python3, wafHook }: + +stdenv.mkDerivation rec { + pname = "lv2"; + version = "1.18.0"; + + src = fetchurl { + url = "https://lv2plug.in/spec/${pname}-${version}.tar.bz2"; + sha256 = "0gs7401xz23q9vajqr31aa2db8dvssgyh5zrvr4ipa6wig7yb8wh"; + }; + + nativeBuildInputs = [ pkgconfig wafHook ]; + buildInputs = [ gtk2 libsndfile python3 ]; + + wafConfigureFlags = stdenv.lib.optionals stdenv.isDarwin [ "--lv2dir=${placeholder "out"}/lib/lv2" ]; + + meta = with stdenv.lib; { + homepage = "https://lv2plug.in"; + description = "A plugin standard for audio systems"; + license = licenses.mit; + maintainers = [ maintainers.goibhniu ]; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/lvtk/default.nix b/nixpkgs/pkgs/development/libraries/audio/lvtk/default.nix new file mode 100644 index 000000000000..d4a0f671e8f8 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/lvtk/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchurl, boost, gtkmm2, lv2, pkgconfig, python, wafHook }: + +stdenv.mkDerivation rec { + pname = "lvtk"; + version = "1.2.0"; + + src = fetchurl { + url = "https://github.com/lvtk/lvtk/archive/${version}.tar.gz"; + sha256 = "03nbj2cqcklqwh50zj2gwm07crh5iwqbpxbpzwbg5hvgl4k4rnjd"; + }; + + nativeBuildInputs = [ pkgconfig python wafHook ]; + buildInputs = [ boost gtkmm2 lv2 ]; + + enableParallelBuilding = true; + + # Fix including the boost libraries during linking + postPatch = '' + sed -i '/target[ ]*= "ttl2c"/ ilib=["boost_system"],' tools/wscript_build + ''; + + wafConfigureFlags = [ + "--boost-includes=${boost.dev}/include" + "--boost-libs=${boost.out}/lib" + ]; + + meta = with stdenv.lib; { + description = "A set C++ wrappers around the LV2 C API"; + homepage = "http://lvtoolkit.org"; + license = licenses.gpl3; + maintainers = [ maintainers.goibhniu ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/mbelib/default.nix b/nixpkgs/pkgs/development/libraries/audio/mbelib/default.nix new file mode 100644 index 000000000000..1fda3a919264 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/mbelib/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchFromGitHub, cmake }: + +stdenv.mkDerivation rec { + pname = "mbelib"; + version = "1.3.0"; + + src = fetchFromGitHub { + owner = "szechyjs"; + repo = "mbelib"; + rev = "v${version}"; + sha256 = "0v6b7nf8fgxy7vzgcwffqyql5zhldrz30c88k1ylbjp78hwh4rif"; + }; + + nativeBuildInputs = [ cmake ]; + + enableParallelBuilding = true; + + doCheck = true; + preCheck = '' + export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD + export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH''${DYLD_LIBRARY_PATH:+:}$PWD + ''; + + meta = with stdenv.lib; { + description = "P25 Phase 1 and ProVoice vocoder"; + homepage = https://github.com/szechyjs/mbelib; + license = licenses.isc; + platforms = platforms.unix; + maintainers = with maintainers; [ andrew-d ]; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/ntk/default.nix b/nixpkgs/pkgs/development/libraries/audio/ntk/default.nix new file mode 100644 index 000000000000..f039e574d547 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/ntk/default.nix @@ -0,0 +1,26 @@ +{ stdenv, fetchFromGitHub, cairo, libjpeg, libXft, pkgconfig, python2, wafHook }: + +stdenv.mkDerivation rec { + pname = "ntk"; + version = "1.3.1000"; + src = fetchFromGitHub { + owner = "original-male"; + repo = "ntk"; + rev = "v${version}"; + sha256 = "0j38mhnfqy6swcrnc5zxcwlqi8b1pgklyghxk6qs1lf4japv2zc0"; + }; + + nativeBuildInputs = [ pkgconfig wafHook ]; + buildInputs = [ + cairo libjpeg libXft python2 + ]; + + meta = { + description = "Fork of FLTK 1.3.0 with additional functionality"; + version = version; + homepage = "http://non.tuxfamily.org/"; + license = stdenv.lib.licenses.lgpl21; + maintainers = with stdenv.lib.maintainers; [ magnetophon nico202 ]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/qm-dsp/default.nix b/nixpkgs/pkgs/development/libraries/audio/qm-dsp/default.nix new file mode 100644 index 000000000000..a93b031a4d15 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/qm-dsp/default.nix @@ -0,0 +1,53 @@ +{ stdenv +, fetchFromGitHub +, fetchpatch +, kissfft +}: + +stdenv.mkDerivation rec { + pname = "qm-dsp"; + version = "1.7.1"; + + src = fetchFromGitHub { + owner = "c4dm"; + repo = pname; + rev = "v${version}"; + sha256 = "1vkb1xr2hjcaw88gig7rknlwsx01lm0w94d2z0rk5vz9ih4fslvv"; + }; + + patches = [ + # Make installable + (fetchpatch { + url = "https://src.fedoraproject.org/rpms/qm-dsp/raw/6eb385e2f970c4150f9c8eba73b558318475ed15/f/qm-dsp-install.patch"; + sha256 = "071g30p17ya0pknzqa950pb93vrgp2024ray8axn22c44gvy147c"; + }) + (fetchpatch { + url = "https://src.fedoraproject.org/rpms/qm-dsp/raw/6eb385e2f970c4150f9c8eba73b558318475ed15/f/qm-dsp-flags.patch"; + sha256 = "127n6j5bsp94kf2m1zqfvkf4iqk1h5f7w778bk7w02vi45nm4x6q"; + postFetch = '' + sed -i 's~/Makefile~/build/linux/Makefile.linux32~g' "$out" + ''; + }) + ]; + + buildInputs = [ + kissfft + ]; + + makefile = "build/linux/Makefile.linux32"; + + makeFlags = [ + "PREFIX=${placeholder "out"}" + "LIBDIR=${placeholder "out"}/lib" + ]; + + NIX_CFLAGS_COMPILE = "-I${kissfft}/include/kissfft"; + + meta = with stdenv.lib; { + description = "A C++ library of functions for DSP and Music Informatics purposes"; + homepage = "https://code.soundsoftware.ac.uk/projects/qm-dsp"; + license = licenses.gpl2Plus; + maintainers = [ maintainers.goibhniu ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/raul/default.nix b/nixpkgs/pkgs/development/libraries/audio/raul/default.nix new file mode 100644 index 000000000000..8acd6d3c6664 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/raul/default.nix @@ -0,0 +1,25 @@ +{ stdenv, fetchgit, boost, gtk2, pkgconfig, python, wafHook }: + +stdenv.mkDerivation rec { + pname = "raul"; + version = "unstable-2019-12-09"; + name = "${pname}-${version}"; + + src = fetchgit { + url = "https://gitlab.com/drobilla/raul.git"; + fetchSubmodules = true; + rev = "e87bb398f025912fb989a09f1450b838b251aea1"; + sha256 = "1z37jb6ghc13b8nv8a8hcg669gl8vh4ni9djvfgga9vcz8rmcg8l"; + }; + + nativeBuildInputs = [ pkgconfig wafHook ]; + buildInputs = [ boost gtk2 python ]; + + meta = with stdenv.lib; { + description = "A C++ utility library primarily aimed at audio/musical applications"; + homepage = "http://drobilla.net/software/raul"; + license = licenses.gpl3; + maintainers = [ maintainers.goibhniu ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/rtaudio/default.nix b/nixpkgs/pkgs/development/libraries/audio/rtaudio/default.nix new file mode 100644 index 000000000000..53efa598079b --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/rtaudio/default.nix @@ -0,0 +1,32 @@ +{ stdenv, fetchFromGitHub, autoconf, automake, libtool, libjack2, alsaLib, pulseaudio, rtmidi }: + +stdenv.mkDerivation rec { + version = "5.1.0"; + pname = "rtaudio"; + + src = fetchFromGitHub { + owner = "thestk"; + repo = "rtaudio"; + rev = version; + sha256 = "1pglnjz907ajlhnlnig3p0sx7hdkpggr8ss7b3wzf1lykzgv9l52"; + }; + + patches = [ ./rtaudio-pkgconfig.patch ]; + + enableParallelBuilding = true; + + buildInputs = [ autoconf automake libtool libjack2 alsaLib pulseaudio rtmidi ]; + + preConfigure = '' + ./autogen.sh --no-configure + ./configure + ''; + + meta = with stdenv.lib; { + description = "A set of C++ classes that provide a cross platform API for realtime audio input/output"; + homepage = "http://www.music.mcgill.ca/~gary/rtaudio/"; + license = licenses.mit; + maintainers = [ maintainers.magnetophon ]; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/rtaudio/rtaudio-pkgconfig.patch b/nixpkgs/pkgs/development/libraries/audio/rtaudio/rtaudio-pkgconfig.patch new file mode 100644 index 000000000000..8536332d46d7 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/rtaudio/rtaudio-pkgconfig.patch @@ -0,0 +1,5 @@ +--- a/rtaudio.pc.in ++++ b/rtaudio.pc.in +@@ -9 +9 @@ Version: @PACKAGE_VERSION@ +-Requires: @req@ ++Requires.private: @req@ diff --git a/nixpkgs/pkgs/development/libraries/audio/rtmidi/default.nix b/nixpkgs/pkgs/development/libraries/audio/rtmidi/default.nix new file mode 100644 index 000000000000..d30b1ce6c64c --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/rtmidi/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchFromGitHub, autoconf, automake, libtool, libjack2, alsaLib, pkgconfig }: + +stdenv.mkDerivation rec { + version = "4.0.0"; + pname = "rtmidi"; + + src = fetchFromGitHub { + owner = "thestk"; + repo = "rtmidi"; + rev = version; + sha256 = "1g31p6a96djlbk9jh5r4pjly3x76lhccva9hrw6xzdma8dsjzgyq"; + }; + + enableParallelBuilding = true; + + nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ autoconf automake libtool libjack2 alsaLib ]; + + preConfigure = '' + ./autogen.sh --no-configure + ./configure + ''; + + meta = { + description = "A set of C++ classes that provide a cross platform API for realtime MIDI input/output"; + homepage = "http://www.music.mcgill.ca/~gary/rtmidi/"; + license = stdenv.lib.licenses.mit; + maintainers = [ stdenv.lib.maintainers.magnetophon ]; + platforms = with stdenv.lib.platforms; linux ++ darwin; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/sratom/default.nix b/nixpkgs/pkgs/development/libraries/audio/sratom/default.nix new file mode 100644 index 000000000000..cec50290d09e --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/sratom/default.nix @@ -0,0 +1,22 @@ +{ stdenv, fetchurl, lv2, pkgconfig, python3, serd, sord, wafHook }: + +stdenv.mkDerivation rec { + pname = "sratom"; + version = "0.6.4"; + + src = fetchurl { + url = "https://download.drobilla.net/${pname}-${version}.tar.bz2"; + sha256 = "0vh0biy3ngpzzgdml309c2mqz8xq9q0hlblczb4c6alhp0a8yv0l"; + }; + + nativeBuildInputs = [ pkgconfig wafHook python3 ]; + buildInputs = [ lv2 serd sord ]; + + meta = with stdenv.lib; { + homepage = "http://drobilla.net/software/sratom"; + description = "A library for serialising LV2 atoms to/from RDF"; + license = licenses.mit; + maintainers = [ maintainers.goibhniu ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/suil/default.nix b/nixpkgs/pkgs/development/libraries/audio/suil/default.nix new file mode 100644 index 000000000000..c2496840b7d4 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/suil/default.nix @@ -0,0 +1,32 @@ +{ stdenv, lib, fetchurl, gtk2, lv2, pkgconfig, python, serd, sord, sratom +, wafHook +, withQt4 ? true, qt4 ? null +, withQt5 ? false, qt5 ? null }: + +# I haven't found an XOR operator in nix... +assert withQt4 || withQt5; +assert !(withQt4 && withQt5); + +stdenv.mkDerivation rec { + pname = "suil"; + version = "0.10.6"; + name = "${pname}-qt${if withQt4 then "4" else "5"}-${version}"; + + src = fetchurl { + url = "https://download.drobilla.net/${pname}-${version}.tar.bz2"; + sha256 = "0z4v01pjw4wh65x38w6icn28wdwxz13ayl8hvn4p1g9kmamp1z06"; + }; + + nativeBuildInputs = [ pkgconfig wafHook ]; + buildInputs = [ gtk2 lv2 python serd sord sratom ] + ++ (lib.optionals withQt4 [ qt4 ]) + ++ (lib.optionals withQt5 (with qt5; [ qtbase qttools ])); + + meta = with stdenv.lib; { + homepage = "http://drobilla.net/software/suil"; + description = "A lightweight C library for loading and wrapping LV2 plugin UIs"; + license = licenses.mit; + maintainers = with maintainers; [ goibhniu ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/vamp-plugin-sdk/default.nix b/nixpkgs/pkgs/development/libraries/audio/vamp-plugin-sdk/default.nix new file mode 100644 index 000000000000..0e49a6265120 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/vamp-plugin-sdk/default.nix @@ -0,0 +1,29 @@ +# set VAMP_PATH ? +# plugins availible on sourceforge and http://www.vamp-plugins.org/download.html (various licenses) + +{ stdenv, fetchFromGitHub, pkgconfig, libsndfile }: + +stdenv.mkDerivation rec { + pname = "vamp-plugin-sdk"; + version = "2.10"; + + src = fetchFromGitHub { + owner = "c4dm"; + repo = "vamp-plugin-sdk"; + rev = "vamp-plugin-sdk-v${version}"; + sha256 = "1lhmskcyk7qqfikmasiw7wjry74gc8g5q6a3j1iya84yd7ll0cz6"; + }; + + nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ libsndfile ]; + + enableParallelBuilding = true; + + meta = with stdenv.lib; { + description = "Audio processing plugin system for plugins that extract descriptive information from audio data"; + homepage = "https://vamp-plugins.org/"; + license = licenses.bsd3; + maintainers = [ maintainers.goibhniu maintainers.marcweber ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/zita-alsa-pcmi/default.nix b/nixpkgs/pkgs/development/libraries/audio/zita-alsa-pcmi/default.nix new file mode 100644 index 000000000000..c819f355e0b8 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/zita-alsa-pcmi/default.nix @@ -0,0 +1,64 @@ +{ stdenv, fetchurl , alsaLib, }: + +stdenv.mkDerivation rec { + pname = "zita-alsa-pcmi"; + version = "0.3.2"; + src = fetchurl { + url = "http://kokkinizita.linuxaudio.org/linuxaudio/downloads/${pname}-${version}.tar.bz2"; + sha256 = "12d7vdg74yh21w69qi0wg57iz4876j94qbiq09bvscih6xz9y78s"; + }; + + buildInputs = [ alsaLib ]; + + buildPhase = '' + cd source + make PREFIX="$out" + + # create lib link for building apps + ln -s libzita-alsa-pcmi.so.$version libzita-alsa-pcmi.so + + # apps + cd ../apps + CXXFLAGS+=" -I../source" \ + LDFLAGS+=" -L../source" \ + make PREFIX="$out" + ''; + + installPhase = '' + mkdir "$out" + mkdir "$out/lib" + mkdir "$out/include" + mkdir "$out/bin" + + cd ../source + + # source + install -Dm755 libzita-alsa-pcmi.so.$version \ + "$out/lib/libzita-alsa-pcmi.so.$version" + + # link + ln -s libzita-alsa-pcmi.so.$version \ + "$out/lib/libzita-alsa-pcmi.so" + ln -s libzita-alsa-pcmi.so.$version \ + "$out/lib/libzita-alsa-pcmi.so.0" + + # header + install -Dm644 zita-alsa-pcmi.h \ + "$out/include/zita-alsa-pcmi.h" + + # apps + install -Dm755 ../apps/alsa_delay \ + "$out/bin/alsa_delay" + install -Dm755 ../apps/alsa_loopback \ + "$out/bin/alsa_loopback" + ''; + + meta = { + description = "The successor of clalsadrv, provides easy access to ALSA PCM devices"; + version = version; + homepage = "http://kokkinizita.linuxaudio.org/linuxaudio/downloads/index.html"; + license = stdenv.lib.licenses.gpl3; + maintainers = [ stdenv.lib.maintainers.magnetophon ]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/zita-convolver/default.nix b/nixpkgs/pkgs/development/libraries/audio/zita-convolver/default.nix new file mode 100644 index 000000000000..2b7d89b30a17 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/zita-convolver/default.nix @@ -0,0 +1,36 @@ +{ stdenv, fetchurl, fftwFloat }: + +stdenv.mkDerivation rec { + pname = "zita-convolver"; + version = "4.0.3"; + src = fetchurl { + url = "http://kokkinizita.linuxaudio.org/linuxaudio/downloads/${pname}-${version}.tar.bz2"; + sha256 = "0prji66p86z2bzminywkwchr5bfgxcg2i8y803pydd1hzf2198cs"; + }; + + buildInputs = [ fftwFloat ]; + + patchPhase = '' + cd source + sed -e "s@ldconfig@@" -i Makefile + ''; + + makeFlags = [ + "PREFIX=$(out)" + "SUFFIX=" + ]; + + postInstall = '' + # create lib link for building apps + ln -s $out/lib/libzita-convolver.so.${version} $out/lib/libzita-convolver.so.${stdenv.lib.versions.major version} + ''; + + meta = { + description = "Convolution library by Fons Adriaensen"; + version = version; + homepage = "http://kokkinizita.linuxaudio.org/linuxaudio/downloads/index.html"; + license = stdenv.lib.licenses.gpl2; + maintainers = [ stdenv.lib.maintainers.magnetophon ]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/audio/zita-resampler/default.nix b/nixpkgs/pkgs/development/libraries/audio/zita-resampler/default.nix new file mode 100644 index 000000000000..2881e5662180 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/audio/zita-resampler/default.nix @@ -0,0 +1,33 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + pname = "zita-resampler"; + version = "1.6.2"; + src = fetchurl { + url = "http://kokkinizita.linuxaudio.org/linuxaudio/downloads/${pname}-${version}.tar.bz2"; + sha256 = "1my5k2dh2dkvjp6xjnf9qy6i7s28z13kw1n9pwa4a2cpwbzawfr3"; + }; + + makeFlags = [ + "PREFIX=$(out)" + "SUFFIX=" + ]; + + patchPhase = '' + cd source + sed -e "s@ldconfig@@" -i Makefile + ''; + + fixupPhase = '' + ln -s $out/lib/libzita-resampler.so.$version $out/lib/libzita-resampler.so.1 + ''; + + meta = { + description = "Resample library by Fons Adriaensen"; + version = version; + homepage = "http://kokkinizita.linuxaudio.org/linuxaudio/downloads/index.html"; + license = stdenv.lib.licenses.gpl2; + maintainers = [ stdenv.lib.maintainers.magnetophon ]; + platforms = stdenv.lib.platforms.linux; + }; +} |