don't know, haven't tried using it in a while. probably needs quite
some work. don't expect it to work.
playfs - maintain play list and play audio files
typically mounted under /mnt/play.
write commands to, such as "play", "stop", "pause", "next",
"previous", "rewind" "repeat", "norepeat", "random",
read events from, such as "done", "playing $path", "error
$path $error" "stopped" "started"
the playlist. read the entire list from it (each line
contains a path). open with truncate to clear the list,
write to it to add to the list. read back in the order the
elements were written
current status of player: started, stopped, paused, or
offset (in line numbers) in playlist, starts at 0. index
to orderlist. readable and writable.
playlist in order of being played. when playing in "norandom"
order, this will be the same as the contents of /list. when
playing random, this is the shuffled list. note that only
/list is writable, /orderlist is read-only.
make sure you have $ROOT set, now "mk" to compile and
"mk install" to install the files.
when building from within inferno, insert SYSHOST=Inferno and ROOT=
in the mk invocations to override the values in the mkconfig.
# licence & author
this code is in the public domain, written by mechiel lukkien,
reachable at email@example.com or firstname.lastname@example.org.
- think about an acme program, mostly commands that say "play" "stop" etc.
- manual pages, eventually
- /offset writable
- add mp3dec or play to this hg repo
- read audio data and write to /dev/audio ourselves, allows implementing pause
- somehow allow user to read currently position in playlist file? (file "offset")
- allow reading of the playlist in played order (not order of adding) (orderlist)
- give better status info in playview
- status file showing current status?
- better status messages, say what is playing. add state to events fid when opened?
* played path
* error path err (quoted)
* done (nothing more to play)
* playing path (started playing path)
* stopped (got a stop request or this is read when opening events file)
* started (got a play request)