Bearskin is series of command wrappers that creates a common interface for controlling the device types under Minerva's control. It also maintains the state, in those cases where other software does not support it. This allows replacement software to control the CD player (for example), or for the command to be sent across a network to a different machine.
The currently supported abstractions are all held in /usr/local/minerva/bin include:
- X10 control
Usage: /usr/local/minerva/bin/x10control
command ::= on off set dim bright get status
device ::= e1 e2 bedroom_light etc..
- CD player
Usage: /usr/local/minerva/bin/cdplayer [track number]
device ::= /dev/cdrom
command ::= count tracks close eject play stop pause resume
isdiscpresent isplaying isstopped isdraweropen
- Media playback (MP3/OGG/Wave)
Usage : /usr/local/minerva/bin/mp3player
command ::= play stop pause resume current artist album length
isplaying
Note : This command is blocking, therefore it is usual to place
it in the background with &
Usage : /usr/local/minerva/bin/wavplayer
command ::= play stop pause resume current
isplaying
- Audio mixer
Usage: /usr/local/minerva/bin/mixer
command ::= get set inc dec
channel ::= master bass treble wave speaker linein microphone
cd recording linein1 linein2 linein3
- Speech synthesis
say
sayfile
announce
announcefile
The <device> in each case will generally be default
to indicate the default outstream, which is the set of devices attached to the
server machine. In the future this will be expanded to support multiple
soundcards and CD-ROMs on the one machine, and connections to remote PCs.
|