aboutsummaryrefslogtreecommitdiff
path: root/audio/nnls-chroma
diff options
context:
space:
mode:
authorB. Watson <yalhcru@gmail.com>2011-08-09 17:19:45 -0300
committerNiels Horn <niels.horn@slackbuilds.org>2011-08-09 17:19:45 -0300
commit589edfbce7d4a5f00779effb02fb4f82eaed6dbf (patch)
tree5ac607f3412a48ab74a5d1c3e30acbf4d031756b /audio/nnls-chroma
parent70f3daff01faa18272eee054a3ee186a09ebdba8 (diff)
audio/nnls-chroma: Added (vamp plugin library)
Signed-off-by: Niels Horn <niels.horn@slackbuilds.org>
Diffstat (limited to 'audio/nnls-chroma')
-rw-r--r--audio/nnls-chroma/README17
-rw-r--r--audio/nnls-chroma/nnls-chroma.SlackBuild74
-rw-r--r--audio/nnls-chroma/nnls-chroma.info10
-rw-r--r--audio/nnls-chroma/slack-desc19
-rw-r--r--audio/nnls-chroma/use_system_vamp_sdk.diff12
5 files changed, 132 insertions, 0 deletions
diff --git a/audio/nnls-chroma/README b/audio/nnls-chroma/README
new file mode 100644
index 000000000000..b418f666f027
--- /dev/null
+++ b/audio/nnls-chroma/README
@@ -0,0 +1,17 @@
+nnls-chroma is an open source Vamp plugin library for harmony and chord
+extraction with some features aimed at amateur musicians, and some at
+music information retrieval researchers. It contains the Chordino,
+NNLS Chroma and Tuning plugins described below. Their main features are:
+
+* Chordino: a simple, no frills chord transcription method based on NNLS
+Chroma features,
+* NNLS Chroma: high-quality chroma features for harmony visualisation
+or further processing,
+* Tuning: an estimate of the 'concert pitch' tuning.
+
+
+Note to x86_64 users: if your VAMP host application can't seem to find
+the plugins, you may have to 'export VAMP_PATH=/usr/lib64/vamp'. The
+SBo vamp-plugin-sdk (v2.1, build 2) package at the time of this writing
+still defaults to using /usr/lib/vamp. Future builds of vamp-plugin-sdk
+should address this.
diff --git a/audio/nnls-chroma/nnls-chroma.SlackBuild b/audio/nnls-chroma/nnls-chroma.SlackBuild
new file mode 100644
index 000000000000..e88f6300c3e3
--- /dev/null
+++ b/audio/nnls-chroma/nnls-chroma.SlackBuild
@@ -0,0 +1,74 @@
+#!/bin/sh
+
+# Slackware build script for nnls-chroma
+
+# Written by B. Watson (yalhcru@gmail.com)
+
+PRGNAM=nnls-chroma
+VERSION=${VERSION:-0.2.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i486 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+# No CFLAGS support: the release is tested with -O3 and frankly
+# this beast needs all the extra optimization it can get...
+
+if [ "$ARCH" = "i486" ]; then
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ LIBDIRSUFFIX="64"
+else
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tgz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+patch -p1 < $CWD/use_system_vamp_sdk.diff
+
+# Look for chord.dict in correct path on x86_64
+sed -i "s,/usr/lib/vamp,/usr/lib$LIBDIRSUFFIX/vamp," chromamethods.cpp
+
+make -f Makefile.linux
+
+# no 'make install'...
+mkdir -p $PKG/usr/lib$LIBDIRSUFFIX/vamp
+cp -a chord.dict $PRGNAM.so $PRGNAM.n3 $PRGNAM.cat $PKG/usr/lib$LIBDIRSUFFIX/vamp
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ README COPYING *.txt \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/audio/nnls-chroma/nnls-chroma.info b/audio/nnls-chroma/nnls-chroma.info
new file mode 100644
index 000000000000..e8f2d09ab193
--- /dev/null
+++ b/audio/nnls-chroma/nnls-chroma.info
@@ -0,0 +1,10 @@
+PRGNAM="nnls-chroma"
+VERSION="0.2.1"
+HOMEPAGE="http://isophonics.net/nnls-chroma"
+DOWNLOAD="http://isophonics.net/sites/isophonics.net/files/nnls-chroma-0.2.1.tgz"
+DOWNLOAD_x86_64=""
+MD5SUM="f25351476d629fe48e48cbbe62fe95fb"
+MD5SUM_x86_64=""
+MAINTAINER="B. Watson"
+EMAIL="yalhcru@gmail.com"
+APPROVED="Niels Horn"
diff --git a/audio/nnls-chroma/slack-desc b/audio/nnls-chroma/slack-desc
new file mode 100644
index 000000000000..34f03b234832
--- /dev/null
+++ b/audio/nnls-chroma/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+nnls-chroma: nnls-chroma (vamp plugin library)
+nnls-chroma:
+nnls-chroma: nnls-chroma is an open source Vamp plugin library for harmony and
+nnls-chroma: chord extraction with some features aimed at amateur musicians,
+nnls-chroma: and some at music information retrieval researchers. It contains
+nnls-chroma: the Chordino, NNLS Chroma and Tuning plugins.
+nnls-chroma:
+nnls-chroma:
+nnls-chroma:
+nnls-chroma:
+nnls-chroma:
diff --git a/audio/nnls-chroma/use_system_vamp_sdk.diff b/audio/nnls-chroma/use_system_vamp_sdk.diff
new file mode 100644
index 000000000000..664f9bda22cb
--- /dev/null
+++ b/audio/nnls-chroma/use_system_vamp_sdk.diff
@@ -0,0 +1,12 @@
+diff -Naur nnls-chroma-0.2.1/Makefile.linux nnls-chroma-0.2.1.patched/Makefile.linux
+--- nnls-chroma-0.2.1/Makefile.linux 2010-12-07 08:05:16.000000000 -0500
++++ nnls-chroma-0.2.1.patched/Makefile.linux 2011-05-30 22:46:39.000000000 -0400
+@@ -13,7 +13,7 @@
+ CXXFLAGS = $(ARCHFLAGS) -I$(VAMP_SDK_DIR) -Wall -fPIC
+ PLUGIN_EXT = .so
+ PLUGIN = $(PLUGIN_LIBRARY_NAME)$(PLUGIN_EXT)
+-LDFLAGS = -shared -Wl,-soname=$(PLUGIN) $(VAMP_SDK_DIR)/libvamp-sdk.a -Wl,--version-script=vamp-plugin.map
++LDFLAGS = -shared -Wl,-soname=$(PLUGIN) -lvamp-sdk -Wl,--version-script=vamp-plugin.map
+
+
+ $(PLUGIN): $(PLUGIN_CODE_OBJECTS)