gnu: alsa-modular-synth: Build with gnu++11.
[jackhill/guix/guix.git] / gnu / packages / audio.scm
index 441067c..6c0f066 100644 (file)
@@ -4,6 +4,8 @@
 ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -38,6 +40,7 @@
   #:use-module (gnu packages boost)
   #:use-module (gnu packages base)
   #:use-module (gnu packages bison)
+  #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages databases)
@@ -61,6 +64,7 @@
   #:use-module (gnu packages python)
   #:use-module (gnu packages rdf)
   #:use-module (gnu packages readline)
+  #:use-module (gnu packages video)
   #:use-module (gnu packages webkit)
   #:use-module (gnu packages xiph)
   #:use-module (gnu packages xml)
     (version "2.1.2")
     (source (origin
               (method url-fetch)
-              (uri (string-append "mirror://sourceforge/alsamodular/ams-"
-                                  version ".tar.bz2"))
+              (uri (string-append "mirror://sourceforge/alsamodular/alsamodular"
+                                  "/" version "/ams-" version ".tar.bz2"))
               (sha256
                (base32
                 "1azbrhpfk4nnybr7kgmc7w6al6xnzppg853vas8gmkh185kk11l0"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:configure-flags '("--enable-qt5")
+     `(#:configure-flags
+       '("--enable-qt5"
+         "CXXFLAGS=-std=gnu++11")
        #:phases
        (modify-phases %standard-phases
          ;; Insert an extra space between linker flags.
        ("jack" ,jack-1)
        ("ladspa" ,ladspa)
        ("liblo" ,liblo)
-       ("qt" ,qt)))
+       ("qtbase" ,qtbase)
+       ("qttools" ,qttools)))
     (native-inputs
      `(("pkg-config" ,pkg-config)))
     (home-page "http://alsamodular.sourceforge.net/")
@@ -170,7 +177,7 @@ streams from live audio.")
 (define-public ardour
   (package
     (name "ardour")
-    (version "4.7")
+    (version "5.0")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -184,10 +191,10 @@ streams from live audio.")
                     "libs/ardour/revision.cc"
                   (lambda (port)
                     (format port "#include \"ardour/revision.h\"
-namespace ARDOUR { const char* revision = \"4.7-219-g0e36f8e\" ; }"))))
+namespace ARDOUR { const char* revision = \"5.0-10-g23d1d1f\" ; }"))))
               (sha256
                (base32
-                "149gswphz77m3pkzsn2nqbm6yvcfa3fva560bcvjzlgb73f64q5l"))
+                "0ihd6zxha1vvp4jy5s49pqyw09qxxjgrdlslrkz6ll59zdh6x7am"))
               (file-name (string-append name "-" version))))
     (build-system waf-build-system)
     (arguments
@@ -229,12 +236,14 @@ namespace ARDOUR { const char* revision = \"4.7-219-g0e36f8e\" ; }"))))
        ("sratom" ,sratom)
        ("suil" ,suil)
        ("lilv" ,lilv)
+       ("readline" ,readline)
        ("redland" ,redland)
        ("rubberband" ,rubberband)
        ("taglib" ,taglib)
        ("python-rdflib" ,python-rdflib)))
     (native-inputs
      `(("perl" ,perl)
+       ("cppunit" ,cppunit)
        ("pkg-config" ,pkg-config)))
     (home-page "http://ardour.org")
     (synopsis "Digital audio workstation")
@@ -333,7 +342,7 @@ tools (analyzer, mono/stereo tools, crossovers).")
               (sha256
                (base32
                 "0a1sni6lr7qpwywpggbkp0ia3h9bwwgf9i87gsag8ra2h30v82hd"))
-              (patches (list (search-patch "csound-header-ordering.patch")))))
+              (patches (search-patches "csound-header-ordering.patch"))))
     (build-system cmake-build-system)
     (arguments
      ;; Work around this error on x86_64 with libc 2.22+:
@@ -486,6 +495,123 @@ high-pass filter by Robert Moog.  The filters attempt to accurately emulate
 the non-linear circuit elements of their original analog counterparts.")
     (license license:gpl2+)))
 
+(define-public rev-plugins
+  (package
+    (name "rev-plugins")
+    (version "0.7.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "http://kokkinizita.linuxaudio.org"
+                    "/linuxaudio/downloads/REV-plugins-"
+                    version ".tar.bz2"))
+              (sha256
+               (base32
+                "1ikpinxm00pkfi259bnkzhsy3miagrjgdihaaf5x4v7zac29j3g7"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f ; no "check" target
+       #:phases
+       (modify-phases %standard-phases
+         ;; no configure script
+         (delete 'configure)
+         (add-before 'install 'prepare-target-directory
+           (lambda* (#:key outputs #:allow-other-keys)
+             (mkdir-p (string-append (assoc-ref outputs "out") "/lib/ladspa"))
+             #t))
+         (add-after 'unpack 'override-target-directory
+           (lambda* (#:key outputs #:allow-other-keys)
+             (substitute* "Makefile"
+               (("/usr") (assoc-ref outputs "out")))
+             #t)))))
+    (home-page "http://kokkinizita.linuxaudio.org")
+    (synopsis "LADSPA reverb plugin")
+    (description
+     "This package provides a stereo reverb LADSPA plugin based on the
+well-known greverb.")
+    (license license:gpl2+)))
+
+(define-public fil-plugins
+  (package
+    (name "fil-plugins")
+    (version "0.3.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "http://kokkinizita.linuxaudio.org"
+                    "/linuxaudio/downloads/FIL-plugins-"
+                    version ".tar.bz2"))
+              (sha256
+               (base32
+                "1scfv9j7jrp50r565haa4rvxn1vk2ss86xssl5qgcr8r45qz42qw"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f ; no "check" target
+       #:phases
+       (modify-phases %standard-phases
+         ;; no configure script
+         (delete 'configure)
+         (add-before 'install 'prepare-target-directory
+           (lambda* (#:key outputs #:allow-other-keys)
+             (mkdir-p (string-append (assoc-ref outputs "out") "/lib/ladspa"))
+             #t))
+         (add-after 'unpack 'override-target-directory
+           (lambda* (#:key outputs #:allow-other-keys)
+             (substitute* "Makefile"
+               (("/usr") (assoc-ref outputs "out")))
+             #t)))))
+    (home-page "http://kokkinizita.linuxaudio.org")
+    (synopsis "LADSPA four-band parametric equalizer plugin")
+    (description
+     "This package provides a LADSPA plugin for a four-band parametric
+equalizer.  Each section has an active/bypass switch, frequency, bandwidth and
+gain controls.  There is also a global bypass switch and gain control.
+
+The 2nd order resonant filters are implemented using a Mitra-Regalia style
+lattice filter, which is stable even while parameters are being changed.
+
+All switches and controls are internally smoothed, so they can be used 'live'
+without any clicks or zipper noises.  This makes this plugin suitable for use
+in systems that allow automation of plugin control ports, such as Ardour, or
+for stage use.")
+    (license license:gpl2+)))
+
+(define-public ste-plugins
+  (package
+    (name "ste-plugins")
+    (version "0.0.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "http://kokkinizita.linuxaudio.org"
+                    "/linuxaudio/downloads/STE-plugins-"
+                    version ".tar.bz2"))
+              (sha256
+               (base32
+                "0s3c9w5xihs87cnd1lh9xgj3maabjdyh6bl766qp5lhkg3ax8zy6"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f ; no "check" target
+       #:phases
+       (modify-phases %standard-phases
+         ;; no configure script
+         (delete 'configure)
+         (add-before 'install 'prepare-target-directory
+           (lambda* (#:key outputs #:allow-other-keys)
+             (mkdir-p (string-append (assoc-ref outputs "out") "/lib/ladspa"))
+             #t))
+         (add-after 'unpack 'override-target-directory
+           (lambda* (#:key outputs #:allow-other-keys)
+             (substitute* "Makefile"
+               (("/usr") (assoc-ref outputs "out")))
+             #t)))))
+    (home-page "http://kokkinizita.linuxaudio.org")
+    (synopsis "LADSPA stereo width plugin")
+    (description
+     "This package provides a LADSPA plugin to manipulate the stereo width of
+audio signals.")
+    (license license:gpl2+)))
+
 (define-public vco-plugins
   (package
     (name "vco-plugins")
@@ -531,6 +657,42 @@ All oscillators are low-pass filtered to provide waveforms similar to the
 output of analog synthesizers such as the Moog Voyager.")
     (license license:gpl2+)))
 
+(define-public wah-plugins
+  (package
+    (name "wah-plugins")
+    (version "0.1.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "http://kokkinizita.linuxaudio.org"
+                    "/linuxaudio/downloads/WAH-plugins-"
+                    version ".tar.bz2"))
+              (sha256
+               (base32
+                "1wkbjarxdhjixkh7d5abralj11dj2xxg644fz3ycd7qyfgfvjfgd"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f ; no "check" target
+       #:phases
+       (modify-phases %standard-phases
+         ;; no configure script
+         (delete 'configure)
+         (add-before 'install 'prepare-target-directory
+           (lambda* (#:key outputs #:allow-other-keys)
+             (mkdir-p (string-append (assoc-ref outputs "out") "/lib/ladspa"))
+             #t))
+         (add-after 'unpack 'override-target-directory
+           (lambda* (#:key outputs #:allow-other-keys)
+             (substitute* "Makefile"
+               (("/usr") (assoc-ref outputs "out")))
+             #t)))))
+    (home-page "http://kokkinizita.linuxaudio.org")
+    (synopsis "LADSPA Autowah effect plugin")
+    (description
+     "This package provides a LADSPA plugin for a Wah effect with envelope
+follower.")
+    (license license:gpl2+)))
+
 (define-public g2reverb
   (package
     (name "g2reverb")
@@ -611,8 +773,8 @@ also play midifiles using a Soundfont.")
     (version "2.7")
     (source (origin
               (method url-fetch)
-              (uri (string-append
-                    "mirror://sourceforge/faac/faad2-" version ".zip"))
+              (uri (string-append "mirror://sourceforge/faac/faad2-src/faad2-"
+                                  version "/faad2-" version ".zip"))
               (sha256
                (base32
                 "16f3l16c00sg0wkrkm3vzv0gy3g97x309vw788igs0cap2x1ak3z"))))
@@ -709,15 +871,15 @@ patches that can be used with softsynths such as Timidity and WildMidi.")
 (define-public guitarix
   (package
     (name "guitarix")
-    (version "0.34.0")
+    (version "0.35.0")
     (source (origin
              (method url-fetch)
              (uri (string-append
-                   "mirror://sourceforge/guitarix/guitarix2-"
-                   version ".tar.bz2"))
+                   "mirror://sourceforge/guitarix/guitarix/guitarix2-"
+                   version ".tar.xz"))
              (sha256
               (base32
-               "0pamaq8iybsaglq6y1m1rlmz4wgbs2r6m24bj7x4fwg4grjvzjl8"))))
+               "10hijqrrl8xil46kgsac10ysfxysisxlibm2rz133zyig5n63jdw"))))
     (build-system waf-build-system)
     (arguments
      `(#:tests? #f ; no "check" target
@@ -1075,8 +1237,8 @@ connections between them.")
     (version "3.1.0")
     (source (origin
               (method url-fetch)
-              (uri (string-append
-                    "mirror://sourceforge/bs2b/libbs2b-" version ".tar.lzma"))
+              (uri (string-append "mirror://sourceforge/bs2b/libbs2b/" version
+                                  "/libbs2b-" version ".tar.lzma"))
               (sha256
                (base32
                 "1mcc4gjkmphczjybnsrip3gq1f974knzys7x49bv197xk3fn8wdr"))))
@@ -1098,10 +1260,8 @@ essential distortions.")
     (version "0.28")
     (source (origin
              (method url-fetch)
-             (uri (string-append
-                   "mirror://sourceforge/liblo/liblo-"
-                   version
-                   ".tar.gz"))
+             (uri (string-append "mirror://sourceforge/liblo/liblo/" version
+                                 "/liblo-" version ".tar.gz"))
              (sha256
               (base32
                "02drgnpirvl2ihvzgsmn02agr5sj3vipzzw9vma56qlkgfvak56s"))))
@@ -1148,7 +1308,7 @@ included are the command line utilities @code{send_osc} and @code{dump_osc}.")
 (define-public lilv
   (package
     (name "lilv")
-    (version "0.20.0")
+    (version "0.22.0")
     (source (origin
              (method url-fetch)
              (uri (string-append "http://download.drobilla.net/lilv-"
@@ -1156,7 +1316,7 @@ included are the command line utilities @code{send_osc} and @code{dump_osc}.")
                                  ".tar.bz2"))
              (sha256
               (base32
-               "0aj2plkx56iar8vzjbq2l7hi7sp0ml99m0h44rgwai2x4vqkk2j2"))))
+               "1d3ss7vv8drf1c5340lyd0gv736n2qy7sxji2nh1rw9y48hr69yd"))))
     (build-system waf-build-system)
     (arguments
      `(#:tests? #f ; no check target
@@ -1554,9 +1714,9 @@ Suil currently supports every combination of Gtk 2, Qt 4, and X11.")
     (version "2.14.0")
     (source (origin
               (method url-fetch)
-              (uri (string-append
-                    "mirror://sourceforge/timidity/TiMidity++-"
-                    version ".tar.bz2"))
+              (uri (string-append "mirror://sourceforge/timidity/TiMidity++"
+                                  "/TiMidity++-" version
+                                  "/TiMidity++-" version ".tar.bz2"))
               (sha256
                (base32
                 "0xk41w4qbk23z1fvqdyfblbz10mmxsllw0svxzjw5sa9y11vczzr"))))
@@ -1716,7 +1876,7 @@ encode and decode wavpack files.")
     (source (origin
               (method url-fetch)
               (uri (string-append
-                    "mirror://sourceforge/project/modplug-xmms/"
+                    "mirror://sourceforge/modplug-xmms/"
                     name "/" version "/" name "-" version ".tar.gz"))
               (sha256
                (base32
@@ -1737,7 +1897,7 @@ surround and reverb.")
     (version "4.3.10")
     (source (origin
               (method url-fetch)
-              (uri (string-append "mirror://sourceforge/xmp/libxmp/"
+              (uri (string-append "mirror://sourceforge/xmp/libxmp/" version "/"
                                   name "-" version ".tar.gz"))
               (sha256
                (base32
@@ -1757,7 +1917,7 @@ Scream Tracker 3 (S3M), Fast Tracker II (XM), and Impulse Tracker (IT).")
     (version "4.0.10")
     (source (origin
               (method url-fetch)
-              (uri (string-append "mirror://sourceforge/xmp/xmp/"
+              (uri (string-append "mirror://sourceforge/xmp/xmp/" version "/"
                                   name "-" version ".tar.gz"))
               (sha256
                (base32
@@ -1817,8 +1977,8 @@ control functionality, or just for playing around with the sound effects.")
     (version "14.4.2")
     (source (origin
               (method url-fetch)
-              (uri (string-append "mirror://sourceforge/sox/sox-"
-                                  version ".tar.bz2"))
+              (uri (string-append "mirror://sourceforge/sox/sox/" version "/"
+                                  name "-" version ".tar.bz2"))
               (sha256
                (base32
                 "170lx90r1nlnb2j6lg00524iwvqy72p48vii4xc5prrh8dnrb9l1"))))
@@ -1880,8 +2040,8 @@ conversion.  It may be used, for example, to resample PCM-encoded audio.")
     (source
      (origin
        (method url-fetch)
-       (uri (string-append
-             "mirror://sourceforge/twolame/twolame-" version ".tar.gz"))
+       (uri (string-append "mirror://sourceforge/twolame/twolame/" version
+                           "/twolame-" version ".tar.gz"))
        (sha256
         (base32 "0ahiqqng5pidwhj1wzph4vxxgxxgcfa3gl0gywipzx2ii7s35wwq"))))
     (build-system gnu-build-system)
@@ -1911,7 +2071,7 @@ portions of LAME.")
              ".tgz"))
        (sha256
         (base32 "0mwddk4qzybaf85wqfhxqlf0c5im9il8z03rd4n127k8y2jj9q4g"))
-       (patches (list (search-patch "portaudio-audacity-compat.patch")))))
+       (patches (search-patches "portaudio-audacity-compat.patch"))))
     (build-system gnu-build-system)
     (inputs
      ;; TODO: Add ASIHPI.
@@ -1943,20 +2103,23 @@ interface.")
 (define-public qsynth
   (package
     (name "qsynth")
-    (version "0.4.0")
+    (version "0.4.1")
     (source
      (origin
        (method url-fetch)
-       (uri (string-append
-             "mirror://sourceforge/qsynth/qsynth-" version ".tar.gz"))
+       (uri (string-append "mirror://sourceforge/qsynth/qsynth/" version
+                           "/qsynth-" version ".tar.gz"))
        (sha256
-        (base32 "1chc89v9hcjw3k4rvzakl8g56wv24kh48fzv1gfs4iv8vhyl3j4x"))))
+        (base32 "034p6mbwrjnxd9b6h20cidxi4ilkk3cgpjp154j0jzjs1ipf7x2h"))))
     (build-system gnu-build-system)
     (arguments
      `(#:tests? #f)) ; no "check" phase
+    (native-inputs
+     `(("qttools" ,qttools)))
     (inputs
-     `(("qt" ,qt)
-       ("fluidsynth" ,fluidsynth)))
+     `(("fluidsynth" ,fluidsynth)
+       ("qtbase" ,qtbase)
+       ("qtx11extras" ,qtx11extras)))
     (home-page "http://qsynth.sourceforge.net")
     (synopsis "Graphical user interface for FluidSynth")
     (description
@@ -2268,3 +2431,26 @@ module to handle that particular file type.")
 with support for HD extensions.")
     (home-page "https://github.com/foo86/dcadec")
     (license license:lgpl2.1+)))
+
+(define-public bs1770gain
+  (package
+    (name "bs1770gain")
+    (version "0.4.11")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://sourceforge/bs1770gain/bs1770gain/"
+                           version "/bs1770gain-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0j765drdb7h3y5ipjv9sg1a0if6zh8cksbv3rdk5ppd7kxcrjnlb"))))
+    (build-system gnu-build-system)
+    (inputs `(("ffmpeg" ,ffmpeg)
+              ("sox" ,sox)))
+    (home-page "http://bs1770gain.sourceforge.net/")
+    (synopsis "Tool to adjust loudness of media files")
+    (description
+     "BS1770GAIN is a loudness scanner compliant with ITU-R BS.1770 and its
+flavors EBU R128, ATSC A/85, and ReplayGain 2.0.  It helps normalizing the
+loudness of audio and video files to the same level.")
+    (license license:gpl2+)))