updated to clean up compiler issues with how functions were used from basis namespace;
[feisty_meow.git] / scripts / multimedia / sound_play.sh
1 #!/bin/bash
2
3 # play the sound files specified.
4
5 source "$FEISTY_MEOW_SCRIPTS/core/functions.sh"  # provides psfind.
6
7 if [ $# -lt 1 ]; then
8   #echo no sound file specified.
9   exit 0;
10 fi
11
12 export PLAYCMD=/usr/bin/play
13 if [ ! -f "$PLAYCMD" ]; then
14   PLAYCMD=echo
15 fi
16
17 if [ ! -z "$(psfind artsd)" ]; then
18   # we see artsd running...
19   PLAYCMD=artsplay
20 elif [ ! -z "$(psfind esd)" ]; then
21   # we see esd running...
22   PLAYCMD=esdplay
23 elif [ ! -z "$(psfind pulseaudio)" ]; then
24   # we see pulse running...
25   PLAYCMD="padsp aplay"
26 elif [ ! -z "$WINDIR" ]; then
27   # kludge for win32; we provide our own sound player.
28   PLAYCMD=playsound
29 else
30   echo "I don't know how to play sounds for this OS and sound system."
31 fi
32
33 # play the sounds individually; playsound can handle multiple files, but
34 # "play" doesn't want to on some systems.
35 for i in $*; do $PLAYCMD $i >/dev/null 2>&1; done
36
37 exit 0
38