X-Git-Url: https://feistymeow.org/gitweb/?a=blobdiff_plain;f=scripts%2Fmultimedia%2Fsound_play.sh;h=66b859f9f41397e5fae8da56d78810b4b0c3e0af;hb=a8cecb58250ab0b05f9c4767ab52d625e6c87a29;hp=2110a4b69593f579b85285db5302ad51de7867e2;hpb=6b39cd62e70b90832923c63a9bde27ca487d0b94;p=feisty_meow.git diff --git a/scripts/multimedia/sound_play.sh b/scripts/multimedia/sound_play.sh index 2110a4b6..66b859f9 100644 --- a/scripts/multimedia/sound_play.sh +++ b/scripts/multimedia/sound_play.sh @@ -2,37 +2,60 @@ # play the sound files specified. -source "$FEISTY_MEOW_SCRIPTS/core/functions.sh" # provides psfind. +source "$FEISTY_MEOW_SCRIPTS/core/launch_feisty_meow.sh" if [ $# -lt 1 ]; then #echo no sound file specified. exit 0; fi -export PLAYCMD=/usr/bin/play -if [ ! -f "$PLAYCMD" ]; then - PLAYCMD=echo -fi +export BASIC_PLAY_CMD='echo Unknown basic sound player...' -if [ ! -z "$(psfind artsd)" ]; then - # we see artsd running... - PLAYCMD=artsplay +if [ -f "/usr/bin/play" ]; then +#echo we see /usr/bin/play available... + BASIC_PLAY_CMD=/usr/bin/play +elif [ ! -z "$WINDIR" ]; then +#echo "kludge for win32; we provide our own sound player." + BASIC_PLAY_CMD=playsound +elif [ ! -z "$(whichable afplay)" ]; then +#echo we see afplay available... + BASIC_PLAY_CMD=afplay +elif [ ! -z "$(psfind artsd)" ]; then +#echo we see artsd running... + BASIC_PLAY_CMD=artsplay elif [ ! -z "$(psfind esd)" ]; then - # we see esd running... - PLAYCMD=esdplay +#echo we see esd running... + BASIC_PLAY_CMD=esdplay elif [ ! -z "$(psfind pulseaudio)" ]; then - # we see pulse running... - PLAYCMD="padsp aplay" -elif [ ! -z "$WINDIR" ]; then - # kludge for win32; we provide our own sound player. - PLAYCMD=playsound +#echo we see pulse running... + BASIC_PLAY_CMD="padsp aplay" +else + echo "I don't know how to play basic sound files for this OS and sound system." +fi + +export MP3_PLAY_CMD='echo Unknown mp3 player...' + +if [ ! -z "$(whichable mplayer)" ]; then + MP3_PLAY_CMD=mplayer else - echo "I don't know how to play sounds for this OS and sound system." + echo "I don't know how to play mp3 files for this OS and sound system." fi -# play the sounds individually; playsound can handle multiple files, but -# "play" doesn't want to on some systems. -for i in $*; do $PLAYCMD $i >/dev/null 2>&1; done +# play the sounds individually; some apps like playsound can handle multiple +# files, but "/usr/bin/play" doesn't want to on some systems. +for filename in $*; do + case "$filename" in + *wav) + $BASIC_PLAY_CMD $filename >/dev/null 2>&1; + ;; + *mp3) + $MP3_PLAY_CMD $filename >/dev/null 2>&1; + ;; + *) + echo "I don't know the file extension here: $filename" + ;; + esac +done exit 0