roard - RoarAudio sound server
roard is the most common RoarAudio sound server. The
RoarAudio sound server is the central component in a RoarAudio setup. It
mixes up different audio streams from it's clients to send them to it's
outputs. Such outputs include soundcards, monitoring clients, streaming
servers and more.
NOTE: This list is incomplete!
- --help
- Print some help text.
- --daemon
- Go into background after startup.
- --realtime
- Ask for higher priority. May be used multiple times.
- --memlock
LEVEL
- Sets default memory locking level to LEVEL.
Valid levels are:
- none
- No memory is locked at all.
- low
- Only very few (important) objects are locked in memory.
- medium
- Few (important) objects are locked in memory.
- high
- Many objects are locked in memory.
- nearlyall
- All known objects are locked in memory.
- nearlyallsys
- All known objects are locked in memory but also pages provided by the
system like stack and heap.
- allcur
- All currently used pages are locked in memory.
- all
- All pages (including future allocated pages) are locked in memory.
- default
- Use defaults (the default).
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.
- --watchdog
- Enable watchdog. This will terminate the daemon if something bad happened
and it halted.
- --watchdog-time
TIME
- Set watchdog time to TIME (in ms).
- --pidfile
PIDFILE
- Asks the server to use the given pidfile. This is recommended.
- --sysclocksync
- Messure exact audio clock frequency based on system time. obsolete.
- --location
LOC
- Sets lion-readable location of server. Examples: livingroom, room 32
- --description
DESC
- Sets lion-readable description of server. Examples: Stereo, UKW
Transmitter
- --contact
CONTACT
- Sets contact information for the server.
- --serial
SERIAL
- Sets the serial number for this device or server. This is normally only
used by embedded systems.
- --uiurl
UIURL
- Sets the URL of the user interface for this device or server. This is
normally only used by embedded systems. It is common to set this to a URL
of type HTTP but all protocols are considered valid. This includes ssh,
telnet and others.
- --start
- Start a new server.
- --stop
- Stop the currently running server. See also --shutdown.
- --restart
- Stop the currently running server and start up a new server.
- --shutdown
- 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 --terminate.
- --terminate
- Auto terminates the new server after last client has quit. This option
must not be confused with --shutdown.
- --script-postdown
S
- Run script S after server shutdown. The script is passed to a shell. Any
shell feature can be used within the string.
- --chroot
DIR
- Chroots to the given directory. This improves the security. This normally
needs root privileg's.
- --setgid
- Sets GroupID to the audio group as specified via -G.
- --setuid
- Sets UserID to the audio user as specified via -U.
- -G GROUP
- Sets the group for the UNIX Domain Socket, (default: audio) You need the
permittions to change the GID.
- -U USER
- Sets the user for the UNIX Domain Socket, (default: do not set) You need
the permittions to change the UID (normally only root has).
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:
- none
- This is used to disable an authentication method.
- idented
- Used internally. Should not be used.
- conctl
- The client is only allowed to do some basic operations only affecting it's
own connection.
- guest
- Guest access (read only). The client may list resources but not alter
them.
- user
- Normal user. The client may create and alter most resources.
- pwruser
- 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.
- all
- 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.
- --guest-acclev
ACCESSLEVEL
- Sets the access level for guest connections. Set to "none" to
disable guest access.
- --trust-acclev
ACCESSLEVEL
- Sets the access level for clients authenticated by trust auth. Set to
"none" to disable trust auth.
- --trust-root
- Trust root user.
- --no-trust-root
- Do not trust root user.
- --authfile-gen
FILE
- Generate a new authfile with a fresh cookie.
- --authfile-load
FILE
- Load all keys from a given authfile.
- --authfile-type
TYPE
- Sets the type for the authfile.
- --authfile-acclev
ACCLEV
- Sets the access level for the given authfile.
- --new-authfile
- Add another authfile.
- --stream-flags
- Sets default flags for a given stream directions. Examples: play=-meta,
bidir=+antiecho
- --list-driver
- Shows a list of all available drivers.
- --driver,
-d
- This option is obsolete. Use -o instead.
- --device,
-D
- This option is obsolete. Use -O instead.
- --odriver,
-o
- Set the output driver. To get a list of all drivers use
--list-driver.
- --odevice,
-O
- 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
--list-driver to get a hint.
- -oO
- Sets options for the new stream. See STREAM OPTIONS.
- -oN
- Adds another output.
- -oP
- Marks the output primary.
- --list-sources
- List all supported sources.
- --source,
-s
- Adds a source of the given type.
- -S
- Sets the device or filename for the source. Type may depend on the source
type.
- -sO
- Sets options for the current source.
- -sN
- Adds another source.
- -sP
- Marks the source as primary. If the source reaches EOF roard will quit
automatically.
- --list-mixers
- List all supported hardware mixers.
- --mixer,
-m
- Add a hardware mixer of given type.
- -M
- Sets the device used for the hardware mixer.
- -mO
- Sets options for the hardware mixer. See MIXER OPTIONS.
- -mN
- Adds another hardware mixer.
- -mP
- Marks the mixer primary.
- --list-cf
- List all supported codecfilters and codecs.
- --rds-pi
- Sets the Programme Identification (PI).
- --rds-ps
- Sets the Programme Service Name (PS).
- --rds-pty
- Sets the Programme Type (PTY).
- --rds-tp
- Sets the Traffic Programme (TP) flag
- --rds-ct
- Enables sending of RDS Clock Time (CT).
- --tcp, -t
- Sets defaults for TCP/IP Socket.
- -4, -6
- Use IPv4 or IPv6 mode.
- -64
- Try to downgrade IPv6 sockets into IPv4 sockets.
- --unix,
-u
- Sets defaults for UNIX Domain Socket.
- --decnet,
-n
- Sets defaults for DECnet Socket.
- --port,
-p
- Sets the port the server should listen on.
- --bind, -b,
--sock
- Sets the hostname or path the server should listen on.
- --list-proto
- List supported protocols.
- --proto
- Sets the protocol used for the listening socket.
- --proto-dir,
--proto-rate, --proto-bits, --proto-codec,
--proto-chans, --proto-aiprofile
- Set stream parameters for protocols needing stream options. Defaults to
server defaults.
- --list-profiles
- List supported profiles.
--proto-profile Use the given profile for the listening
socket.
- --new-sock
- Adds a new listening socket.
- --no-listen
- Do not listen for new clients (only useful for relaing, impleys
--terminate).
- --client-fh
FH
- Expects a client on the given FH. This may be useful with
--no-listen.
- --close-fh
FH
- Close the given FH. This is not useful for endusers but used internaly.
- --jumbo-mtu
- Sets the MTU for Jambo Packets.
- --slp
- Enable OpenSLP support.
- rate
- Sets the sample rate.
- channels
- Sets the number of channels.
- bits
- Sets the number of bits per sample.
- codec
- Sets the codec.
- blocks
- Sets the number of memory blocks that should 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.
- blocksize
- 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.
- meta
- Sets the meta flag.
- sync
- Sets the sync flag.
- primary
- Marks this stream as primary.
- cleanmeta
- Sets the cleanmeta flag.
- autoconf
- 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.
- Example:
- rate=44100,bits=16,channels=2,codec=pcm,sync
- primary
- Makes this stream as primary.
- autoconf
- Sets the autoconf flag.
- passmixer
- Sets the passmixer flag.
- name
- Sets the name for the device.
- subs
- Sets list of subdevices. This is driver specific.
- HOME
- The users home directory.
- ROAR_SERVER
- 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.
- ROAR_DRIVER
- The driver to select. Same as -d.
- ROAR_DEVICE
- The device to select. Same as -D.
There are lots of bugs...
roar-config(1), roarcat(1), roarcat2sock(1),
roarcatad(1), roarctl(1), roarfilt(1),
roarfish(1), roarmon(1), roarsockconnect(1),
roartypes(1), roarvorbis(1), RoarAudio(7).