aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorB. Watson <urchlay@slackware.uk>2023-01-12 02:02:08 -0500
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2023-01-14 08:50:31 +0700
commit9dc7867ef650d361b0e53d505ce40e1208232b74 (patch)
tree4814ae59bf9186386abf4ea33cd3e9eb36dd7419
parent69a230ba364349f4378d40d3a070df4131dc4b3e (diff)
audio/rubberband: Updated for version 3.1.2.
Signed-off-by: B. Watson <urchlay@slackware.uk> Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-rw-r--r--audio/rubberband/README3
-rw-r--r--audio/rubberband/rubberband.1295
-rw-r--r--audio/rubberband/rubberband.SlackBuild23
-rw-r--r--audio/rubberband/rubberband.info6
-rw-r--r--audio/rubberband/slack-desc2
5 files changed, 203 insertions, 126 deletions
diff --git a/audio/rubberband/README b/audio/rubberband/README
index a9facf9b4245..d8644ac391f9 100644
--- a/audio/rubberband/README
+++ b/audio/rubberband/README
@@ -10,3 +10,6 @@ packages, make sure its profile script has been sourced (normally
by logging out & back in), and build rubberband with JAVA=yes
set in the environment. Currently, this has only been tested
with openjdk8.
+
+Optional dependency: lv2 (autodetected). If present, the rubberband
+lv2 plugin will be built.
diff --git a/audio/rubberband/rubberband.1 b/audio/rubberband/rubberband.1
index 73bbf1058cec..bb4fbbfdc5bd 100644
--- a/audio/rubberband/rubberband.1
+++ b/audio/rubberband/rubberband.1
@@ -1,120 +1,175 @@
-.\" This manpage has been automatically generated by docbook2man
-.\" from a DocBook document. This tool can be found at:
-.\" <http://shell.ipoline.com/~elmert/comp/docbook2X/>
-.\" Please send any bug reports, improvements, comments, patches,
-.\" etc. to Steve Cheng <steve@ggi-project.org>.
-.TH "RUBBERBAND" "1" "15 September 2014" "" ""
-
-.SH NAME
-rubberband \- an audio time-stretching and pitch-shifting utility program
-.SH SYNOPSIS
-
-\fBrubberband\fR [ \fB\fIoptions\fB\fR ] [ \fB\fIinput file\fB\fR ] [ \fB\fIoutput file\fB\fR ]
-
-.SH "DESCRIPTION"
-.PP
-This manual page documents briefly the
-\fBrubberband\fR command.
-.PP
-Rubber Band is a program that permits you to change the
-tempo and pitch of an audio recording independently of one
-another.
-.SH "OPTIONS"
-.PP
-These programs follow the usual GNU command line syntax,
-with long options starting with two dashes (`-'). A summary of
-options is included below.
-.PP
-You must specify at least one of the following time and
-pitch ratio options.
-.TP
-\fB-t, --time \fIX\fB\fR
-Stretch to \fIX\fR times original
-duration, or
-.TP
-\fB-T, --tempo \fIX\fB\fR
-Change tempo by multiple \fIX\fR (equivalent to --time 1/X)
-.TP
-\fB-p, --pitch \fIX\fB\fR
-Raise pitch by \fIX\fR semitones, or
-.TP
-\fB-f, --frequency \fIX\fB\fR
-Change frequency by multiple \fIX\fR
-.PP
-The following option provides a simple way to adjust the
-sound. See below for more details.
-.TP
-\fB-n, --crisp \fIN\fB\fR
-Crispness (N = 0,1,2,3,4,5); default 4 (see below)
-.PP
-The remaining options fine-tune the processing mode and
-stretch algorithm. These are mostly included for test purposes;
-the default settings and standard crispness parameter are
-intended to provide the best sounding set of options for most
-situations.
-.TP
-\fB-P, --precise\fR
-Aim for minimal time distortion (implied by -R)
-.TP
-\fB-R, --realtime\fR
-Select realtime mode (implies -P --no-threads)
-.TP
-\fB--no-threads\fR
-No extra threads regardless of CPU and channel count
-.TP
-\fB--threads\fR
-Assume multi-CPU even if only one CPU is identified
-.TP
-\fB--no-transients\fR
-Disable phase resynchronisation at transients
-.TP
-\fB--bl-transients\fR
-Band-limit phase resync to extreme frequencies
-.TP
-\fB--no-peaklock\fR
-Disable phase locking to peak frequencies
-.TP
-\fB--no-softening\fR
-Disable large-ratio softening of phase locking
-.TP
-\fB--window-long\fR
-Use longer processing window (actual size may vary)
-.TP
-\fB--window-short\fR
-Use shorter processing window
-.TP
-\fB--thresh \fIN\fB \fIF\fB\fR
-Set internal freq threshold \fIN\fR (N = 0,1,2) to \fIF\fR Hz
-.TP
-\fB-d, --debug \fIN\fB\fR
-Select debug level (N = 0,1,2,3); default 0, full 3
-(N.B. debug level 3 includes audible ticks in output)
-.TP
-\fB-q, --quiet\fR
-Suppress progress output
-.TP
-\fB-h, --help\fR
-Show a list of available options
-.PP
-Crispness levels:
-.TP
-\fB0\fR
-equivalent to --no-transients --no-peaklock --window-long
-.TP
-\fB1\fR
-equivalent to --no-transients --no-peaklock
-.TP
-\fB2\fR
-equivalent to --no-transients
-.TP
-\fB3\fR
-equivalent to --bl-transients
-.TP
-\fB4\fR
-default processing options
-.TP
-\fB5\fR
-equivalent to --no-peaklock --window-short (may be suitable for drums)
-.SH "AUTHOR"
-.PP
-Rubber Band was written by Chris Cannam <cannam@all-day-breakfast.com>\&.
+.TH "RUBBERBAND" "1"
+.SH "NAME"
+rubberband \(em an audio time-stretching and pitch-shifting utility program
+.SH "SYNOPSIS"
+.PP
+\fBrubberband\fR [\fB\fIoptions\fR\fP] [\fB\fIinput file\fR\fP] [\fB\fIoutput file\fR\fP]
+.SH "DESCRIPTION"
+.PP
+This manual page documents briefly the
+\fBrubberband\fR command.
+.PP
+Rubber Band is a program that permits you to change the
+tempo and pitch of an audio recording independently of one
+another.
+.SH "OPTIONS"
+.PP
+These programs follow the usual GNU command line syntax,
+with long options starting with two dashes (`\-\-'). A summary of
+options is included below.
+.PP
+You must specify at least one of the following time and
+pitch ratio options.
+.IP "\fB-t\fP, \fB\-\-time\fP \fIX\fR" 10
+Stretch to \fIX\fR times original duration, or
+.IP "\fB-T\fP, \fB\-\-tempo\fP \fIX\fR" 10
+Change tempo by multiple \fIX\fR (equivalent to \-\-time 1/X), or
+.IP "\fB-T\fP, \fB\-\-tempo\fP \fIX\fR:\fIY\fR" 10
+Change tempo from \fIX\fR to \fIY\fR (same as \-\-time X/Y), or
+.IP "\fB-D\fP, \fB\-\-duration\fP \fIX\fR" 10
+Stretch or squash to make output file \fIX\fR seconds long
+.IP "\fB-p\fP, \fB\-\-pitch\fP \fIX\fR" 10
+Raise pitch by \fIX\fR semitones, or
+.IP "\fB-f\fP, \fB\-\-frequency\fP \fIX\fR" 10
+Change frequency by multiple \fIX\fR
+.PP
+The following options provide ways of making the time and frequency ratios
+change during the audio:
+.IP "\fB-M\fP, \fB\-\-timemap\fP \fIF\fR" 10
+Use file F as the source for time map
+.PP
+A time map (or key-frame map) file contains a series of lines, each with two
+sample frame numbers separated by a single space. These are source and
+target frames for fixed time points within the audio data, defining a varying
+stretch factor through the audio. When supplying a time map you must specify
+an overall stretch factor using \-t, \-T, or \-D as well, to determine the
+total output duration.
+.IP " \fB\-\-pitchmap\fP \fIF\fR" 10
+Use file F as the source for pitch map
+.PP
+A pitch map file contains a series of lines, each with two values: the input
+sample frame number and a pitch offset in semitones, separated by a single
+space. These specify a varying pitch factor through the audio. The offsets
+are all relative to an initial offset specified by the pitch or frequency
+option, or relative to no shift if neither was specified. Offsets are
+not cumulative. This option implies realtime mode (\-R) and also enables a
+high-consistency pitch shifting mode, appropriate for dynamic pitch changes.
+Because of the use of realtime mode, the overall duration will not be exact.
+.IP " \fB\-\-freqmap\fP \fIF\fR" 10
+Use file F as the source for freq map
+.PP
+A frequency map file is like a pitch map, except that its second column
+lists frequency multipliers rather than pitch offsets (like the difference
+between pitch and frequency options above)
+.PP
+The following options affect the sound manipulation and quality
+.IP "\fB-2\fP, \fB\-\-fast\fP" 10
+Use the R2 (faster) engine
+.PP
+This is the default (for backward compatibility) when this tool is invoked
+as "rubberband". It was the only engine available in versions prior to v3.0.
+.IP "\fB-3\fP, \fB\-\-fine\fP" 10
+Use the R3 (finer) engine
+.PP
+This is the default when this tool is invoked as "rubberband-r3". It almost
+always produces better results than the R2 engine, but with significantly
+higher CPU load.
+.IP "\fB-F\fP, \fB\-\-formant\fP" 10
+Enable formant preservation when pitch shifting
+.PP
+This option attempts to keep the formant envelope unchanged when changing
+the pitch, retaining the original timbre of vocals and instruments in a
+recognisable way.
+.IP "\fB-c\fP, \fB\-\-crisp\fP \fIN\fR" 10
+Crispness (N = 0,1,2,3,4,5); default 4 (see below)
+.PP
+This option only has an effect when using the R2 (faster) engine. See below
+for details of the different levels.
+.PP
+The remaining options fine-tune the processing mode and stretch algorithm.
+The default is to use none of these options.
+The options marked (2) currently only have an effect when using the R2 engine
+(see \-2, \-3 options above).
+.IP "\fB-R\fP, \fB\-\-realtime\fP" 10
+Select realtime mode (implies \-\-no-threads).
+This utility does not do realtime stream processing;
+the option merely selects realtime mode for the
+stretcher it uses
+.IP "\fB\-\-no-threads\fP" 10
+No extra threads regardless of CPU and channel count (R2)
+.IP "\fB\-\-threads\fP" 10
+Assume multi-CPU even if only one CPU is identified (R2)
+.IP "\fB\-\-no-transients\fP" 10
+Disable phase resynchronisation at transients (R2)
+.IP "\fB\-\-bl-transients\fP" 10
+Band-limit phase resync to extreme frequencies (R2)
+.IP "\fB\-\-no-lamination\fP" 10
+Disable phase lamination (R2)
+.IP "\fB\-\-smoothing\fP" 10
+Apply window presum and time-domain smoothing (R2)
+.IP "\fB\-\-detector-perc\fP" 10
+Use percussive transient detector (as in pre-1.5) (R2)
+.IP "\fB\-\-detector-soft\fP" 10
+Use soft transient detector (R2)
+.IP "\fB\-\-window-long\fP" 10
+Use longer processing window (actual size may vary) (R2)
+.IP "\fB\-\-window-short\fP" 10
+Use shorter processing window (with the R3 engine
+this is effectively a quick "draft mode")
+.IP "\fB\-\-pitch-hq\fP" 10
+In RT mode, use a slower, higher quality pitch shift
+.IP "\fB\-\-centre-focus\fP" 10
+reserve focus of centre material in stereo
+(at a cost in width and individual channel quality)
+.IP "\fB\-\-ignore-clipping\fP" 10
+Ignore clipping at output; the default is to restart
+with reduced gain if clipping occurs
+.IP "\fB-L\fP, \fB\-\-loose \fP" 10
+[Accepted for compatibility but ignored; always off]
+.IP "\fB-P\fP, \fB\-\--precise \fP" 10
+[Accepted for compatibility but ignored; always on]
+.IP "\fB-d\fP, \fB\-\-debug\fP \fIN\fR" 10
+Select debug level (N = 0,1,2,3); default 0, full 3
+(N.B. debug level 3 includes audible ticks in output)
+.PP
+The following options are for output control and administration:
+.IP "\fB-q\fP, \fB\-\-quiet\fP" 10
+Suppress progress output
+.IP "\fB-V\fP, \fB\-\-version\fP" 10
+Show version number and exit
+.IP "\fB-h\fP, \fB\-\-help\fP" 10
+Show the normal help output
+.IP "\fB-H\fP, \fB\-\-full-help\fP" 10
+Show the full help output
+.PP
+"Crispness" levels:
+.IP "0" 10
+equivalent to \-\-no-transients \-\-no-lamination \-\-window-long
+.IP "1" 10
+equivalent to \-\-detector-soft \-\-no-lamination \-\-window-long (for piano)
+.IP "2" 10
+equivalent to \-\-no-transients \-\-no-lamination
+.IP "3" 10
+equivalent to \-\-no-transients
+.IP "4" 10
+equivalent to \-\-bl-transients
+.IP "5" 10
+default processing options
+.IP "6" 10
+equivalent to \-\-no-lamination \-\-window-short (may be good for drums)
+.SH "AUTHOR"
+.PP
+Rubber Band was written by Chris Cannam <cannam@all-day-breakfast.com>.
+.PP
+This manual page was written by Székelyi Szabolcs <cc@mail.3d.hu> and
+revised in October 2022 by Dennis Braun <snd@y0o.de> for
+the \fBDebian\fP system (but may be used by others), because the
+original program does not have a manual page. Permission is
+granted to copy, distribute and/or modify this document under
+the terms of the GNU General Public License, Version 2 any
+later version published by the Free Software Foundation.
+.PP
+On Debian systems, the complete text of the GNU General
+Public License can be found in
+/usr/share/common-licenses/GPL.
+.\" created by instant / docbook-to-man
diff --git a/audio/rubberband/rubberband.SlackBuild b/audio/rubberband/rubberband.SlackBuild
index 14ce25984653..e2d996741587 100644
--- a/audio/rubberband/rubberband.SlackBuild
+++ b/audio/rubberband/rubberband.SlackBuild
@@ -8,6 +8,13 @@
# Modified version licensed under the WTFPL. See
# http://www.wtfpl.net/txt/copying/ for details.
+# 20230112 bkw: update for v3.1.2.
+# In 3.1.2, ladspa_sdk and vamp-plugin-sdk are not required. I'm
+# leaving them in REQUIRES for now, because other builds that
+# depend on rubberband might also depend on ladspa_sdk and/or
+# vamp-plugin-sdk, but not list them in REQUIRES because rubberband
+# "pulls them in". This will change in the future!
+
# 20211125 bkw: update for v2.0.0
# 20201103 bkw: update for v1.9.0
# 20180702 bkw:
@@ -25,7 +32,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=rubberband
-VERSION=${VERSION:-2.0.0}
+VERSION=${VERSION:-3.1.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -141,16 +148,28 @@ fi
WITHJAVA=WITHOUT
[ -e $JNILIB ] && WITHJAVA=WITH
+WITHLV2=WITHOUT
+[ -e $PKG/usr/lib$LIBDIRSUFFIX/lv2/$PRGNAM.lv2/lv2-$PRGNAM.so ] && \
+ WITHLV2=WITH
+
+# 20230112 bkw: in 3.1.2, we get two identical binaries...
+rm $PKG/usr/bin/$PRGNAM-r3
+ln -s $PRGNAM $PKG/usr/bin/$PRGNAM-r3
+
# man page borrowed from Debian
mkdir -p $PKG/usr/man/man1
gzip -9c < $CWD/$PRGNAM.1 > $PKG/usr/man/man1/$PRGNAM.1.gz
+ln -s $PRGNAM.1.gz $PKG/usr/man/man1/$PRGNAM-r3.1.gz
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a CHANGELOG COPYING README* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
-sed "s,@WITHJAVA@,$WITHJAVA," $CWD/slack-desc > $PKG/install/slack-desc
+sed -e "s,@WITHJAVA@,$WITHJAVA," \
+ -e "s,@WITHLV2@,$WITHLV2," \
+ $CWD/slack-desc \
+ > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/audio/rubberband/rubberband.info b/audio/rubberband/rubberband.info
index fff24935077d..50d7db9f3e13 100644
--- a/audio/rubberband/rubberband.info
+++ b/audio/rubberband/rubberband.info
@@ -1,8 +1,8 @@
PRGNAM="rubberband"
-VERSION="2.0.0"
+VERSION="3.1.2"
HOMEPAGE="https://www.breakfastquay.com/rubberband"
-DOWNLOAD="https://breakfastquay.com/files/releases/rubberband-2.0.0.tar.bz2"
-MD5SUM="505d10a6817e5edffd3b1fc8a21b35c2"
+DOWNLOAD="https://breakfastquay.com/files/releases/rubberband-3.1.2.tar.bz2"
+MD5SUM="3e57a26cf4d60da25bafa317a91e0250"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="ladspa_sdk vamp-plugin-sdk"
diff --git a/audio/rubberband/slack-desc b/audio/rubberband/slack-desc
index 65e2344901ed..9ff92d4aafb6 100644
--- a/audio/rubberband/slack-desc
+++ b/audio/rubberband/slack-desc
@@ -15,5 +15,5 @@ rubberband:
rubberband: Homepage: http://breakfastquay.com/rubberband
rubberband:
rubberband: This package was built @WITHJAVA@ Java JNI support.
-rubberband:
+rubberband: This package was built @WITHLV2@ the LV2 plugin.
rubberband: