.\" roard.1: .TH "ROARD" "1" "October 2010" "RoarAudio" "System Manager's Manual: roard" .SH NAME roard \- RoarAudio sound server .SH SYNOPSIS \fBroard\fR [OPTIONS]... .SH "DESCRIPTION" \fBroard\fR is the most common RoarAudio sound server. The RoarAudio sound server is the central component in a RoarAudio setup. It mixes up diffrent audio streams from it's clients to send them to it's outputs. Such outputs include soundcards, monitoring clients, streaming servers and more. .SH "GENERAL OPTIONS" \fBNOTE: This list is incomplete!\fR .TP \fB--help\fR Print some help text. .TP \fB--daemon\fR Go into background after startup. .TP \fB--realtime\fR Ask for higher priority. May be used multiple times. .TP \fB--memlock LEVEL\fR Sets default memory locking level to LEVEL. Valid levels are: .RS .TP \fBnone\fR No memory is locked at all. .TP \fBlow\fR Only very few (important) objects are locked in memory. .TP \fBmedium\fR Few (important) objects are locked in memory. .TP \fBhigh\fR Many objects are locked in memory. .TP \fBnearlyall\fR All known objects are locked in memory. .TP \fBnearlyallsys\fR All known objects are locked in memory but also pages provided by the system like stack and heap. .TP \fBallcur\fR All currently used pages are locked in memory. .TP \fBall\fR All pages (including future allocated pages) are locked in memory. .TP \fBdefault\fR Use defaults (the default). .RE A higher memlock level may result in memory allocations problems at runtime and even segfauls on some systems. (VM killed processes). Check your current system limits before altering this value. .TP \fB--pidfile PIDFILE\fR Asks the server to use the given pidfile. This is recommended. .TP \fB--sysclocksync\fR Messure exact audio clock frequency based on system time. obsolete. .SH "SERVER INFO" .TP \fB--location LOC\fR Sets lion-readable location of server. Examples: livingroom, room 32 .TP \fB--description DESC\fR Sets lion-readable description of server. Examples: Stereo, UKW Transmitter .SH "STARTUP AND SHUTDOWN" .TP \fB--start\fR Start a new server. .TP \fB--stop\fR Stop the currently running server. See also \fB--shutdown\fR. .TP \fB--restart\fR Stop the currently running server and start up a new server. .TP \fB--shutdown\fR Terminates the currently running server after last client has quit. This is the most clean way to shutdown a running server as it does not kick any clients. This option must not be confused with \fB--terminate\fR. .TP \fB--terminate\fR Auto terminates the new server after last client has quit. This option must not be confused with \fB--shutdown\fR. .TP \fB--script-postdown S\fR Run script S after server shutdown. The script is passed to a shell. Any shell feature can be used within the string. .SH "STANDBY MODE" .TP \fB--standby\fR Start in standby mode. .TP \fB--auto-standby\fR Go into standby mode if no streams are active. .SH "LOGGING" .TP \fB--verbose\fR Increment the verbosity level. Can be used multiple times. .TP \fB--log-syslog\fR Log to syslog. .SH "PLUGINS" .TP \fB--plugin-load FILENAME\fR Load the given plugin. .TP \fB--plugin-args ARGS\fR Arguments for the plugin. (must be given before the \-\-plugin-load). .SH "SECURITY" .TP \fB--chroot DIR\fR Chroots to the given directory. This improves the security. This normally needs root privileg's. .SH "USER AND GROUPS" .TP \fB--setgid\fR Sets GroupID to the audio group as specified via \fB-G\fR. .TP \fB--setuid\fR Sets UserID to the audio user as specified via \fB-U\fR. .TP \fB-G GROUP\fR Sets the group for the UNIX Domain Socket, (default: audio) You need the permittions to change the GID. .TP \fB-U USER\fR Sets the user for the UNIX Domain Socket, (default: do not set) You need the permittions to change the UID (normaly only root has). .SH "AUTH OPTIONS" The following options control the access rights of connections. Some of them take an access level. The access level is one from the following list: .RS .TP \fBnone\fR This is used to disable an authentication method. .TP \fBidented\fR Used internally. Should not be used. .TP \fBconctl\fR The client is only allowed to do some basic operations only affecting it's own connection. .TP \fBguest\fR Guest access (read only). The client may list resources but not alter them. .TP \fBuser\fR Normal user. The client may create and alter most resources. .TP \fBpwruser\fR Power User. The client can create and alter all resources and do all operation but operations which would break the POSIX right system. The user is not allowed to control the server itself like terminating it or alter (system) resources with the rights of the user runnung roard. This is the access level a fully trusted user in a multi user setup should have. .TP \fBall\fR The client can do everything. This includes operations which may alter system resources (like files) with the rights of the user running roard. This accesslevel should be given to the user in case of a single user setup or root or some administrator in a multi user setup. .RE .TP \fB--guest-acclev ACCESSLEVEL\fR Sets the access level for guest connections. Set to "none" to disable guest access. .TP \fB--trust-acclev ACCESSLEVEL\fR Sets the access level for clients authenticated by trust auth. Set to "none" to disable trust auth. .TP \fB--trust-root\fR Trust root user. .TP \fB--no-trust-root\fR Do not trust root user. .TP \fB--authfile-gen FILE\fR Generate a new authfile with a fresh cookie. .TP \fB--authfile-load FILE\fR Load all keys from a given authfile. .TP \fB--authfile-type TYPE\fR Sets the type for the authfile. .TP \fB--authfile-acclev ACCLEV\fR Sets the access level for the given authfile. .TP \fB--new-authfile\fR Add another authfile. .SH "AUDIO OPTIONS" .TP \fB--rate RATE\fR, \fB-R RATE\fR Set server sample rate. .TP \fB--bits BITS\fR, \fB-B BITS\fR Set server bits. .TP \fB--chans CHANNELS\fR, \fB-C CHANNELS\fR Set server channels. .TP \fB--aiprofile PROFILE\fR Use a existing audio profile. .SH "GENERAL STREAM OPTIONS" .TP \fB--stream-flags\fR Sets default flags for a given stream directions. Examples: play=-meta, bidir=+antiecho .SH "DRIVER OPTIONS" .TP \fB--list-driver\fR Shows a list of all available drivers. .TP \fB--driver\fR, \fB-d\fR .\"Set the output driver. To get a list of all drivers use \fB--list-driver\fR. This option is obsolete. Use \fB-o\fR instead. .TP \fB--device\fR, \fB-D\fR .\"Set the device for the output driver. Possible devices depends on the driver. .\"They may be a path to a device node or a hostname. .\"Use \fB--list-driver\fR to get a hint. .\"This option will obsolete soon. This option is obsolete. Use \fB-O\fR instead. .TP \fB--odriver\fR, \fB-o\fR Set the output driver. To get a list of all drivers use \fB--list-driver\fR. .TP \fB--odevice\fR, \fB-O\fR Set the device for the output driver. Possible devices depends on the driver. They may be a path to a device node or a hostname. Use \fB--list-driver\fR to get a hint. .TP \fB-oO\fR Sets options for the new stream. See STREAM OPTIONS. .TP \fB-oN\fR Adds another output. .TP \fB-oP\fR Marks the output primary. .SH "SOURCE OPTIONS" .TP \fB--list-sources\fR List all supported sources. .TP \fB--source\fR, \fB-s\fR Adds a source of the given type. .TP \fB-S\fR Sets the device or filename for the source. Type may depend on the source type. .TP \fB-sO\fR Sets options for the current source. .TP \fB-sN\fR Adds another source. .TP \fB-sP\fR Marks the source as primary. If the source reaches EOF roard will quit automatically. .SH "HARDWARE MIXER OPTIONS" .TP \fB--list-mixers\fR List all supported hardware mixers. .TP \fB--mixer\fR, \fB-m\fR Add a hardware mixer of given type. .TP \fB-M\fR Sets the device used for the hardware mixer. .TP \fB-mO\fR Sets options for the hardware mixer. See MIXER OPTIONS. .TP \fB-mN\fR Adds another hardware mixer. .TP \fB-mP\fR Marks the mixer primary. .SH "CODEC FILTER" .TP \fB--list-cf\fR List all supported codecfilters and codecs. .SH "MIDI OPTIONS" .TP \fB--midi-no-console\fR Disable console based MIDI synth. .TP \fB--midi-console-enable\fR Enables console based MIDI synth. .TP \fB--midi-console\fR Sets device for MIDI console. Example: /dev/console .TP \fB--ssynth-enable\fR Enables simple software synth. .TP \fB--ssynth-disable\fR Disables simple software synth. .SH "LIGHT CONTROL OPTIONS" .TP \fB--light-channels\fR Sets the number of light channels. Examples: 512, 1024 .SH "RADIO DATA SYSTEM OPTIONS" .TP \fB--rds-pi\fR Sets the Programme Identification (PI). .TP \fB--rds-ps\fR Sets the Programme Service Name (PS). .TP \fB--rds-pty\fR Sets the Programme Type (PTY). .TP \fB--rds-tp\fR Sets the Traffic Programme (TP) flag .TP \fB--rds-ct\fR Enables sending of RDS Clock Time (CT). .SH "X11 OPTIONS" .TP \fB--x11-display\fR, \fB--display\fR Sets the display to use. .TP \fB--x11\fR Enable X11 support. .SH "NETWORK OPTIONS" .TP \fB--tcp\fR, \fB-t\fR Sets defaults for TCP/IP Socket. .TP \fB-4\fR, \fB-6\fR Use IPv4 or IPv6 mode. .TP \fB-64\fR Try to downgrade IPv6 sockets into IPv4 sockets. .TP \fB--unix\fR, \fB-u\fR Sets defaults for UNIX Domain Socket. .TP \fB--decnet\fR, \fB-n\fR Sets defaults for DECnet Socket. .TP \fB--port\fR, \fB-p\fR Sets the port the server should listen on. .TP \fB--bind\fR, \fB-b\fR, \fB--sock\fR Sets the hostname or path the server should listen on. .TP \fB--list-proto\fR List supported protocols. .TP \fB--proto\fR Sets the protocol used for the listening socket. .TP \fB--proto-dir\fR, \fB--proto-rate\fR, \fB--proto-bits\fR, \fB--proto-codec\fR, \fB--proto-chans\fR, \fB--proto-aiprofile\fR Set stream parameters for protocols needing stream options. Defaults to server defaults. .TP \fB--list-profiles\fR List supported profiles. \fB--proto-profile\fR Use the given profile for the listening socket. .TP \fB--new-sock\fR Adds a new listening socket. .TP \fB--no-listen\fR Do not listen for new clients (only useful for relaing, impleys \-\-terminate). .TP \fB--client-fh FH\fR Expects a client on the given FH. This may be useful with \fB--no-listen\fR. .TP \fB--close-fh FH\fR Close the given FH. This is not useful for endusers but used internaly. .TP \fB--jumbo-mtu\fR Sets the MTU for Jambo Packets. .SH "OPENSLP OPTIONS" .TP \fB--slp\fR Enable OpenSLP support. .SH "STREAM OPTIONS" .TP \fBrate\fR Sets the sample rate. .TP \fBchannels\fR Sets the number of channels. .TP \fBbits\fR Sets the number of bits per sample. .TP \fBcodec\fR Sets the codec. .TP \fBblocks\fR Sets the number of memory blocks that sould be used by the devices. Most devices only support a few values or don't support this option at all. If this option or the specifyed value is not supported by the device this is not handled as fatal error. .TP \fBblocksize\fR Sets the size of the memory blocks used by the device. Most devices only support a few values or don't support this option at all. If this option or the specifyed value is not supported by the device this is not handled as fatal error. .TP \fBmeta\fR Sets the meta flag. .TP \fBsync\fR Sets the sync flag. .TP \fBprimary\fR Marks this stream as primary. .TP \fBcleanmeta\fR Sets the cleanmeta flag. .TP \fBautoconf\fR Sets the autoconf flag. This flag is not supported by all drivers. If the flag is set and the devices does not support this there is no fatal error if the device could be opend with defaults. .TP Example: rate=44100,bits=16,channels=2,codec=pcm,sync .SH "MIXER OPTIONS" .TP \fRprimary\fR Makes this stream as primary. .TP \fBautoconf\fR Sets the autoconf flag. .TP \fBpassmixer\fR Sets the passmixer flag. .TP \fBname\fR Sets the name for the device. .TP \fBsubs\fR Sets list of subdevices. This is driver specific. .SH "ENVIRONMENT VARIABLES" .TP \fBHOME\fR The users home directory. .TP \fBROAR_SERVER\fR The address of the listening server. This may be in form of host:port for TCP/IP connections and /path/to/sock for UNIX Domain Sockets. .TP \fBROAR_DRIVER\fR The driver to select. Same as \fB-d\fR. .TP \fBROAR_DEVICE\fR The device to select. Same as \fB-D\fR. .SH "BUGS" There are lots of bugs... .SH "SEE ALSO" \fBroar-config\fR(1), \fBroarcat\fR(1), \fBroarcat2sock\fR(1), \fBroarcatad\fR(1), \fBroarctl\fR(1), \fBroarfilt\fR(1), \fBroarfish\fR(1), \fBroarmon\fR(1), \fBroarsockconnect\fR(1), \fBroartypes\fR(1), \fBroarvorbis\fR(1), \fBRoarAudio\fR(7). .SH "HISTORY" For history information see \fBRoarAudio\fR(7). .\" ll