From b67c54bd18cb31734c268c8a09fc830ca23c1cf3 Mon Sep 17 00:00:00 2001 From: Marcel Saegebarth Date: Tue, 6 Jan 2015 23:39:00 +0700 Subject: audio/jack_capture: Updated for version 0.9.71 + new maintainer. Signed-off-by: Willy Sudiarto Raharjo --- audio/jack_capture/README | 59 +++++++++++++++++++++++--- audio/jack_capture/doinst.sh | 6 +++ audio/jack_capture/jack_capture.SlackBuild | 68 ++++++++++++++++++++---------- audio/jack_capture/jack_capture.info | 12 +++--- audio/jack_capture/setcap.sh | 1 + audio/jack_capture/slack-desc | 10 ++--- 6 files changed, 117 insertions(+), 39 deletions(-) create mode 100644 audio/jack_capture/setcap.sh (limited to 'audio') diff --git a/audio/jack_capture/README b/audio/jack_capture/README index c29ad28b0c1f..3ae29ea35cd9 100644 --- a/audio/jack_capture/README +++ b/audio/jack_capture/README @@ -1,8 +1,57 @@ -A handy audio recorder based on jack. Command line or GUI. Very low on -resources. Able to write 256 channels to local hard drive (tested on -iCore 7). +jack_capture is a program for recording sound files with JACK. -Meterbridge is a nice companion program (VU meters) unless you start -the program from console. +* Autogenerated filenames are unique and humanly readable. + +* The 4GB size barrier for wav files is handled by continuing + writing to new files when reaching 4GB. + +* Supports all soundfile formats supported by sndfile. + (wav, aiff, ogg, flac, wavex, au, etc.) (option: -f ) + +* Supports mp3 by using liblame. (option: -mp3) + +* Option for writing raw 16 bit data to stdout. (option: -ws) + +* Built-in console meter, plus option for automatically starting and stopping + the Meterbridge jack meter program. Port connections to Meterbridge + are done automatically, and on the fly, by jack_capture. + +* jack_capture can connect to any input or output jack port. + + When "connecting" to a jack input port (i.e. a writable port), jack_capture + constantly monitors which jack ports which are connected + to that input port, and makes sure jack_capture is always + connected to the same ports. + + In other words, jack_capture will reconnect its ports automatically during + recording to match the connections of the ports. + This is for instance convenient when recording the playback ports since + jack_capture can be started first, and then other programs can start + and stop at any moment while all sound still should be recorded. + +* No limit on the number of jack ports jack_capture can connect to. + (I.e. the --port argument can be specified more than once, plus that + it accepts wildcard arguments. For instance, jack_capture --port "*" will + connect to all current jack ports, both input and output ports, except + jack_capture's own ports.) + +* Buffers are automatically increased during runtime to prevent + underruns and to avoid wasting memory by preallocating too much. + +* The disk thread is automatically reniced to a higher priority when + using more than half of the buffer. + +* Significantly better recording performance than Ardour. (probably because + jack_capture writes all channels into only one file and that it is + not creating peak files). (tested on athlonXP) + +* No problem writing at least 256 channels of 32 bit wav at once to a + local hard drive. (tested on icore7) Optional runtime dependencies are meterbridge and lame. + +This package uses POSIX filesystem capabilities to execute with +elevated privileges (required for realtime audio processing). This +may be considered a security/stability risk. Please read +http://www.slackbuilds.org/caps/ for more information. To disable +capabilities, pass SETCAP=no to the script. diff --git a/audio/jack_capture/doinst.sh b/audio/jack_capture/doinst.sh index 5fb28930db0b..3e5691a052b5 100644 --- a/audio/jack_capture/doinst.sh +++ b/audio/jack_capture/doinst.sh @@ -1,3 +1,9 @@ if [ -x /usr/bin/update-desktop-database ]; then /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1 fi + +if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then + if [ -x /usr/bin/gtk-update-icon-cache ]; then + /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1 + fi +fi diff --git a/audio/jack_capture/jack_capture.SlackBuild b/audio/jack_capture/jack_capture.SlackBuild index a572eba0f01a..bd06474ddbd2 100644 --- a/audio/jack_capture/jack_capture.SlackBuild +++ b/audio/jack_capture/jack_capture.SlackBuild @@ -1,9 +1,32 @@ #!/bin/sh -# Slackware build script for -# Written by Michales Michaloudes korgie@gmail.com + +# Slackware build script for "jack_capture". + +# Copyright -2015 Michales Michaloudes +# Copyright 2015 Marcel Saegebarth +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. PRGNAM=jack_capture -VERSION=${VERSION:-0.9.57} +VERSION=${VERSION:-0.9.71} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} @@ -40,44 +63,43 @@ rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT cd $TMP rm -rf $PRGNAM-$VERSION -tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || exit 1 +tar xvf $CWD/$PRGNAM-$VERSION.tar.gz cd $PRGNAM-$VERSION chown -R root:root . find -L . \ - \( -perm 777 -o -perm 775 -o -perm 750 -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 {} \; - + \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ + -o -perm 511 \) -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ + -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; -# prefix correction -sed -i -e 's+/usr/local+/usr+g' Makefile - -# compile flags correction sed -i -e "s/OPTIMIZE=-O3.*/OPTIMIZE=${SLKCFLAGS}/g" Makefile make -make install DESTDIR=$PKG +make install PREFIX=/usr DESTDIR=$PKG find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true -mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION -cd $TMP/$PRGNAM-$VERSION/ -cp -a \ - COPYING README \ - $PKG/usr/doc/$PRGNAM-$VERSION -cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild - -# cp KDE desktop icon mkdir -p $PKG/usr/share/applications cat $CWD/${PRGNAM}_gui2.desktop > $PKG/usr/share/applications/${PRGNAM}_gui2.desktop mkdir -p $PKG/usr/share/${PRGNAM}_gui2 -install -m0644 -oroot $CWD/$PRGNAM*.xpm $PKG/usr/share/${PRGNAM}_gui2/ +install -m 0644 $CWD/$PRGNAM*.xpm $PKG/usr/share/${PRGNAM}_gui2/ + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a COPYING README TODO config $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 cat $CWD/doinst.sh > $PKG/install/doinst.sh +# Only add capability stuff if not disabled: +if [ "${SETCAP:-yes}" = "yes" ]; then + cat $CWD/setcap.sh >> $PKG/install/doinst.sh + # Only allow execution by audio group + chown root:audio $PKG/usr/bin/* + chmod 0750 $PKG/usr/bin/* +fi + cd $PKG /sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/audio/jack_capture/jack_capture.info b/audio/jack_capture/jack_capture.info index d0d043fc15d9..e861fad4793d 100644 --- a/audio/jack_capture/jack_capture.info +++ b/audio/jack_capture/jack_capture.info @@ -1,10 +1,10 @@ PRGNAM="jack_capture" -VERSION="0.9.57" -HOMEPAGE="http://archive.notam02.no/arkiv/src/" -DOWNLOAD="http://archive.notam02.no/arkiv/src/jack_capture-0.9.57.tar.gz" -MD5SUM="c78ddb7d6b9f1bbef20f663d7c3f99a5" +VERSION="0.9.71" +HOMEPAGE="http://users.notam02.no/~kjetism/" +DOWNLOAD="http://archive.notam02.no/arkiv/src/jack_capture-0.9.71.tar.gz" +MD5SUM="9f5f39d2183c32a790612ca0257fdcc4" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="jack-audio-connection-kit" -MAINTAINER="Michales Michaloudes" -EMAIL="korgie@gmail.com" +MAINTAINER="Marcel Saegebarth" +EMAIL="marc@mos6581.de" diff --git a/audio/jack_capture/setcap.sh b/audio/jack_capture/setcap.sh new file mode 100644 index 000000000000..7125aaffbbd6 --- /dev/null +++ b/audio/jack_capture/setcap.sh @@ -0,0 +1 @@ +[ -x /sbin/setcap ] && /sbin/setcap cap_ipc_lock,cap_sys_nice=ep usr/bin/jack_capture diff --git a/audio/jack_capture/slack-desc b/audio/jack_capture/slack-desc index 030efeee04e1..901c8f2f205b 100644 --- a/audio/jack_capture/slack-desc +++ b/audio/jack_capture/slack-desc @@ -6,13 +6,13 @@ # customary to leave one space after the ':' except on otherwise blank lines. |-----handy-ruler------------------------------------------------------| -jack_capture: jack_capture (jack-based audio recorder) +jack_capture: jack_capture (JACK capture client) +jack_capture: +jack_capture: jack_capture is a program for recording sound files with JACK. +jack_capture: +jack_capture: Homepage: http://users.notam02.no/~kjetism/ jack_capture: -jack_capture: jack_capture is a handy audio recorder based on jack. Command line or -jack_capture: GUI, cery low on resources. Reported to write 256 channels to local -jack_capture: hard drive (tested on iCore 7) jack_capture: -jack_capture: Meterbridge is a nice companion program. jack_capture: jack_capture: jack_capture: -- cgit v1.2.3