You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
107 lines
2.2 KiB
107 lines
2.2 KiB
#!/bin/sh
|
|
# artsdsp - wrapper script to allow *some* binary only programs to use artsd
|
|
# based on the esddsp script
|
|
|
|
# keep this in sync with artsversion.h
|
|
version="@ARTS_VERSION@"
|
|
|
|
# default values for script variables
|
|
verbose=0
|
|
set_name=0
|
|
single_thread=0
|
|
|
|
# check for artsdsp options
|
|
while test $# -gt 0; do
|
|
|
|
case "$1" in
|
|
|
|
-h|--help)
|
|
echo "artsdsp - attempt to reroute audio device to artsd"
|
|
echo " "
|
|
echo "artsdsp [options] application arguments"
|
|
echo " "
|
|
echo "options:"
|
|
echo "-h, --help show brief help"
|
|
echo "-n, --name=NAME use name to identify player to artsd"
|
|
echo "-m, --mmap emulate memory mapping (i.e. for quake)"
|
|
echo "-s, --single-threaded use the single-threaded version"
|
|
echo "-v, --verbose show parameters"
|
|
echo "-V, --version show version"
|
|
exit 0
|
|
;;
|
|
|
|
-n)
|
|
shift
|
|
if test $# -gt 0; then
|
|
export ARTSDSP_NAME=$1
|
|
else
|
|
echo "no player name specified"
|
|
exit 1
|
|
fi
|
|
shift
|
|
set_name=1
|
|
;;
|
|
|
|
--name*)
|
|
export ARTSDSP_NAME=`echo $1 | sed -e 's/^[^=]*=//g'`
|
|
set_name=1
|
|
shift
|
|
;;
|
|
|
|
-v|--verbose)
|
|
verbose=1
|
|
shift
|
|
;;
|
|
|
|
-V|--version)
|
|
echo "artsdsp $version"
|
|
exit
|
|
;;
|
|
|
|
-m|--mmap)
|
|
export ARTSDSP_MMAP=1
|
|
shift
|
|
;;
|
|
|
|
-s|--single-threaded)
|
|
single_thread=1
|
|
shift
|
|
;;
|
|
|
|
*)
|
|
# no more artsdsp options, get on with life
|
|
break
|
|
;;
|
|
esac
|
|
done
|
|
|
|
# echo options if verbose specified
|
|
if test "$verbose" = 1; then
|
|
ARTSDSP_VERBOSE=1
|
|
export ARTSDSP_VERBOSE
|
|
echo "artsdsp: $version"
|
|
echo "name: $ARTSDSP_NAME"
|
|
echo "command line: $@"
|
|
if test "$single_thread" = 1; then
|
|
echo "threaded: no"
|
|
else
|
|
echo "threaded: yes"
|
|
fi
|
|
fi
|
|
|
|
prefix=@prefix@
|
|
exec_prefix=@exec_prefix@
|
|
|
|
if test "$single_thread" = 1; then
|
|
LD_PRELOAD=${exec_prefix}/\$LIB/libartsdsp_st.so.0
|
|
else
|
|
LD_PRELOAD=${exec_prefix}/\$LIB/libartsdsp.so.0:${exec_prefix}/\$LIB/libartsc.so.0
|
|
fi
|
|
if test -f ${exec_prefix}/\$LIB/libdl.so.2; then
|
|
LD_PRELOAD=$LD_PRELOAD:${exec_prefix}/\$LIB/libdl.so.2
|
|
fi
|
|
export LD_PRELOAD
|
|
|
|
# invoke the program with the args given
|
|
exec "$@"
|