diff --git a/rc/bin/play b/rc/bin/play index a5194b654..3fd688de8 100755 --- a/rc/bin/play +++ b/rc/bin/play @@ -31,15 +31,16 @@ fn play1 { switch($1){ case *plain* sed 's/ //g' | while(j=`{read}){ + echo $"j >[1=2] if(~ $"j http:* https:* HTTP:* HTTPS:*){ if(~ $#typ 0) typ=mp3 - echo $"j >[1=2] hget -r 'Icy-MetaData: 0' $j | play1 $typ } if not { - if(test -r $"j){ - echo $"j >[1=2] + if(test -r $"j) play1 <$"j + if not { + echo $argv0: 'can''t open file:' $"j >[1=2] } } } diff --git a/sys/man/1/play b/sys/man/1/play new file mode 100644 index 000000000..a279a785f --- /dev/null +++ b/sys/man/1/play @@ -0,0 +1,59 @@ +.TH PLAY 1 +.SH NAME +play \- simple audio player +.SH SYNOPSIS +.B play +[ +.B -o +.I file +] [ +.B -t +.I type +] [ +.I file +\&| +.I url +\&... ] +.SH DESCRIPTION +.I Play +is a simple audio player that understand a number of +audio and playlist formats. +.PP +If no +.I file +or +.I url +arguments are given, standard input is used. +Wihout the +.B -t +option, the file type is determined using +.IR file (1) +command and the appropriate decoder is invoked. +.PP +Supported +.I type +values are: +.TP +.B plain +Plain text with one file or url per line. +.TP +.B pls +Winamp playlist file. +.TP +.B mp3 +Mpeg audio. +.TP +.B ogg +Ogg vorbis. +.PP +By default, raw audio data is written to +.B /dev/audio +unless changed with the +.B -o +option. +.SH SOURCE +.B /rc/bin/play +.SH "SEE ALSO" +.IR mp3dec (1), +.IR oggdec (1), +.IR hget (1)