#!/bin/bash # crude script for recording streaming audio shows with mplayer. # # dean@arctic.org # # this script is public domain. if [ $# != 4 ]; then echo "usage: $0 outputbasename extension length_in_minutes url" 1>&2 exit 1 fi basename="$1" ext="$2" length="$3" url="$4" d=`date +"%Y%m%d-%H%M"` mplayer -quiet -cache 64 \ -ao pcm:waveheader -af-adv force=3 \ -ao pcm:file=>(lame --silent --preset 64 - "$basename$d.$ext") \ -- "$url" & child=$! timeout() { kill -TERM $child exit } trap timeout SIGALRM (sleep $((length*60)); kill -ALRM $$) & wait $child