SYNOPSIS

roard [OPTIONS]...

DESCRIPTION

roard 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.

GENERAL OPTIONS

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.

SERVER INFO

--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.

STARTUP AND SHUTDOWN

--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.

STANDBY MODE

--standby

Start in standby mode.

--auto-standby

Go into standby mode if no streams are active.

LOGGING

--verbose

Increment the verbosity level. Can be used multiple times.

--log-syslog

Log to syslog.

PLUGINS

--plugin-load FILENAME

Load the given plugin.

--plugin-args ARGS

Arguments for the plugin. (must be given before the --plugin-load).

--list-plugins

List loaded plugins.

SECURITY

--chroot DIR

Chroots to the given directory. This improves the security. This normally needs root privileg's.

USER AND GROUPS

--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 (normaly only root has).

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:

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.

AUDIO OPTIONS

--rate RATE, -R RATE

Set server sample rate.

--bits BITS, -B BITS

Set server bits.

--chans CHANNELS, -C CHANNELS

Set server channels.

--aiprofile PROFILE

Use a existing audio profile.

GENERAL STREAM OPTIONS

--stream-flags

Sets default flags for a given stream directions. Examples: play=-meta, bidir=+antiecho

DRIVER OPTIONS

--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.

SOURCE OPTIONS

--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.

HARDWARE MIXER OPTIONS

--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.

CODEC FILTER

--list-cf

List all supported codecfilters and codecs.

MIDI OPTIONS

--midi-no-console

Disable console based MIDI synth.

--midi-console-enable

Enables console based MIDI synth.

--midi-console

Sets device for MIDI console. Example: /dev/console

--ssynth-enable

Enables simple software synth.

--ssynth-disable

Disables simple software synth.

LIGHT CONTROL OPTIONS

--light-channels

Sets the number of light channels. Examples: 512, 1024

RADIO DATA SYSTEM OPTIONS

--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).

X11 OPTIONS

--x11-display, --display

Sets the display to use.

--x11

Enable X11 support.

NETWORK OPTIONS

--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.

OPENSLP OPTIONS

--slp

Enable OpenSLP support.

STREAM OPTIONS

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 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.

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

MIXER OPTIONS

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.

ENVIRONMENT VARIABLES

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.

BUGS

There are lots of bugs...

RELATED TO roard…

HISTORY

For history information see RoarAudio(7).