Browse Source
multimedia/sonivox: Added (Wave Table synthesizer).
multimedia/sonivox: Added (Wave Table synthesizer).
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>pull/303/head
committed by
Willy Sudiarto Raharjo
No known key found for this signature in database
GPG Key ID: 3F617144D7238786
4 changed files with 172 additions and 0 deletions
-
14multimedia/sonivox/README
-
19multimedia/sonivox/slack-desc
-
127multimedia/sonivox/sonivox.SlackBuild
-
12multimedia/sonivox/sonivox.info
@ -0,0 +1,14 @@ |
|||||
|
This project is a fork of the Android Open Source Project |
||||
|
'platform_external_sonivox', including a CMake based build system to be |
||||
|
used not on Android, but on any other computer Operating System. Google |
||||
|
licensed this work originally named Sonivox EAS (Embedded Audio |
||||
|
Synthesis) from the company Sonic Network Inc. under the terms of the |
||||
|
Apache License 2.0. |
||||
|
|
||||
|
This is a Wave Table synthesizer, not using external soundfont files by |
||||
|
default but embedded samples. It also supports external DLS soundfont |
||||
|
files for better rendering quality. It is also a real time GM |
||||
|
synthesizer. It consumes very little resources, so it may be indicated |
||||
|
in projects for small embedded devices. There is neither MIDI input nor |
||||
|
Audio output facilities included in the library. You need to provide |
||||
|
your own input/output. |
@ -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 ':' except on otherwise blank lines. |
||||
|
|
||||
|
|-----handy-ruler------------------------------------------------------| |
||||
|
sonivox: sonivox (Wave Table Synthesizer with embedded samples) |
||||
|
sonivox: |
||||
|
sonivox: This project is a fork of the Android Open Source Project |
||||
|
sonivox: 'platform_external_sonivox', including a CMake based build system to |
||||
|
sonivox: be used not on Android, but on any other computer Operating System. |
||||
|
sonivox: Google licensed this work originally named Sonivox EAS (Embedded |
||||
|
sonivox: Audio Synthesis) from the company Sonic Network Inc. under the terms |
||||
|
sonivox: of the Apache License 2.0. |
||||
|
sonivox: |
||||
|
sonivox: |
||||
|
sonivox: |
@ -0,0 +1,127 @@ |
|||||
|
#!/bin/bash |
||||
|
|
||||
|
# Slackware build script for <sonivox> |
||||
|
|
||||
|
# Copyright 2025, Michales Michaloudes (clavisound), Greece |
||||
|
# All rights reserved. |
||||
|
# |
||||
|
# Redistribution and use of this script, with or without modification, is |
||||
|
# permitted provided that the following conditions are met: |
||||
|
# |
||||
|
# 1. Redistributions of this script must retain the above copyright |
||||
|
# notice, this list of conditions and the following disclaimer. |
||||
|
# |
||||
|
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "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 AUTHOR 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. |
||||
|
|
||||
|
cd $(dirname $0) ; CWD=$(pwd) |
||||
|
|
||||
|
PRGNAM=sonivox |
||||
|
VERSION=${VERSION:-3.6.16} |
||||
|
BUILD=${BUILD:-1} |
||||
|
TAG=${TAG:-_SBo} |
||||
|
PKGTYPE=${PKGTYPE:-tgz} |
||||
|
|
||||
|
if [ -z "$ARCH" ]; then |
||||
|
case "$( uname -m )" in |
||||
|
i?86) ARCH=i586 ;; |
||||
|
arm*) ARCH=arm ;; |
||||
|
*) ARCH=$( uname -m ) ;; |
||||
|
esac |
||||
|
fi |
||||
|
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then |
||||
|
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE" |
||||
|
exit 0 |
||||
|
fi |
||||
|
TMP=${TMP:-/tmp/SBo} |
||||
|
|
||||
|
# sonivox wants this |
||||
|
# first copy TEMP to OLDTEMP to restore if user has env with TEMP |
||||
|
OLDTEMP=$TEMP |
||||
|
export TEMP=$TMP/$PRGNAM-$VERSION |
||||
|
|
||||
|
PKG=$TMP/package-$PRGNAM |
||||
|
OUTPUT=${OUTPUT:-/tmp} |
||||
|
|
||||
|
if [ "$ARCH" = "i586" ]; then |
||||
|
SLKCFLAGS="-O2 -march=i586 -mtune=i686" |
||||
|
LIBDIRSUFFIX="" |
||||
|
elif [ "$ARCH" = "i686" ]; then |
||||
|
SLKCFLAGS="-O2 -march=i686 -mtune=i686" |
||||
|
LIBDIRSUFFIX="" |
||||
|
elif [ "$ARCH" = "x86_64" ]; then |
||||
|
SLKCFLAGS="-O2 -fPIC" |
||||
|
LIBDIRSUFFIX="64" |
||||
|
elif [ "$ARCH" = "aarch64" ]; then |
||||
|
SLKCFLAGS="-O2 -fPIC" |
||||
|
LIBDIRSUFFIX="64" |
||||
|
else |
||||
|
SLKCFLAGS="-O2" |
||||
|
LIBDIRSUFFIX="" |
||||
|
fi |
||||
|
|
||||
|
set -e |
||||
|
|
||||
|
rm -rf $PKG |
||||
|
mkdir -p $TMP $PKG $OUTPUT |
||||
|
cd $TMP |
||||
|
rm -rf $PRGNAM-$VERSION |
||||
|
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz |
||||
|
cd $PRGNAM-$VERSION |
||||
|
ln -s $CWD/Airfont_340.dls soundfont.dls |
||||
|
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 640 -o -perm 600 -o -perm 444 \ |
||||
|
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; |
||||
|
|
||||
|
mkdir -p build |
||||
|
cd build |
||||
|
cmake \ |
||||
|
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ |
||||
|
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ |
||||
|
-DCMAKE_INSTALL_PREFIX=/usr \ |
||||
|
-DLIB_SUFFIX=${LIBDIRSUFFIX} \ |
||||
|
-DMAN_INSTALL_DIR=/usr/man \ |
||||
|
-DCMAKE_BUILD_TYPE=Release .. |
||||
|
make |
||||
|
make install/strip DESTDIR=$PKG |
||||
|
cd .. |
||||
|
|
||||
|
# reset TEMP |
||||
|
export TEMP=$OLDTEMP |
||||
|
|
||||
|
# -DMAN_INSTALL_DIR is ignored |
||||
|
mkdir -p $PKG/usr/man |
||||
|
mv $PKG/usr/share/man $PKG/usr/ |
||||
|
rm -rf $PKG/usr/share |
||||
|
|
||||
|
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la |
||||
|
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 |
||||
|
|
||||
|
find $PKG/usr/man -type f -exec gzip -9 {} \; |
||||
|
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done |
||||
|
|
||||
|
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION |
||||
|
cp -a \ |
||||
|
CONTRIBUTING.md LICENSE LICENSE-2.0.txt \ |
||||
|
NOTICE OWNERS README.md docs/EAS*.pdf docs/*.html docs/JET*_files \ |
||||
|
$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 |
||||
|
|
@ -0,0 +1,12 @@ |
|||||
|
PRGNAM="sonivox" |
||||
|
VERSION="3.6.16" |
||||
|
HOMEPAGE="https://github.com/pedrolcl/sonivox/" |
||||
|
DOWNLOAD="https://github.com/pedrolcl/sonivox/archive/v3.6.16/sonivox-3.6.16.tar.gz \ |
||||
|
http://www.ronimusic.com/sf2/Airfont_340.dls" |
||||
|
MD5SUM="5fda531e1e9a25e3bfeefd51d582cdc9 \ |
||||
|
40c0cd4ad29ae411a8fc3d6681002a2b" |
||||
|
DOWNLOAD_x86_64="" |
||||
|
MD5SUM_x86_64="" |
||||
|
REQUIRES="gtest" |
||||
|
MAINTAINER="Michales Michaloudes" |
||||
|
EMAIL="korgie@gmail.com" |
Write
Preview
Loading…
Cancel
Save
Reference in new issue