roard's Drivers
Overview
Currently implemented drivers
Driver | Mode | Flag | Subsys | Description | Devices |
---|---|---|---|---|---|
null | w | SV | W | null audio driver | (none) |
esd | w | V | W | EsounD audio driver | localhost, remote.host.dom |
roar | w | V | WM L X | RoarAudio driver | localhost, remote.host.dom |
raw | w | s V | WM LRX | RAW driver | /some/file |
dstr | w | s V | WM LRX | VIO DSTR driver | /some/file |
oss | rw | s V | W | Open Sound System | /dev/audio |
ao | w | V | W | libao audio driver | DRIVER |
shout | w | V | W | libshout streaming | http://user:pw@host:port/mount.ogg |
sndio | w | V | WM | OpenBSD sndio | /dev/audio, /tmp/aucat-<uid>/default |
rsound | w | V | W | RSound | servername |
portaudio | w | V | W | PortAudio? | |
alsa | w | V | W | ALSA | ??? |
wmm | w | V | W | Win32 MM | ??? |
dmx | w | s V | L | DMX512 driver | /dev/dmx |
pwmled | w | s V | L | PWM LED driver | /dev/ttyS0 |
sysclock | w | V | W | System Clock Clock Source | (none) |
cdriver | w | V | W | RoarAudio Client driver | driver#device |
pulsesimple | w | V | W | PulseAudio? Simple | server |
artsc | w | V | W | aRts plain C API | (none) |
Drivers we work on
Driver | Mode | Flag | Subsys | Description | Devices |
---|---|---|---|---|---|
jack | rw | V | W | Jack |
Driver details
null: True null driver
This driver doesn't do anything with the data just like /dev/null on a POSIX system. It does not provide a clock. For a dummy driver (for example used if no soundcard is present) use the sysclock driver.
This driver takes no device.
esd: Enlightened Sound Daemon
Connect to a EsounD server.
This driver takes the server address as device.
roar: RoarAudio
Connect to another RoarAudio server.
This driver takes the server address as device.
raw: raw file driver
Connect directly to a file or named pipe. Do not use this driver. Use the dstr driver.
This driver takes the filename as device.
dstr: Descriptive String Virtual Input Output driver
Connect directly to a VIO object. This may be a local or remote file, device or other data source or sink.
This driver takes the object address (normally just a plain filename) as device.
oss: Open Sound System
This driver connects to a OSS device. The Open Sound System is a set of audio drivers available for many systems. This driver also works well on ALSA's, NetBSD's alsa-oss and other OSS emulations.
This driver takes the audio device as device. This is often /dev/audio or /dev/dsp.
ao: libao
This driver uses libao to connect to a device. libao is a abstraction layer to abstract the audio interface in a portable way.
This driver should not be used but is provided as it works on most systems.
This driver takes libao's driver name as device. This is subject to change.
shout: Interface to streaming servers
The shout driver connects to a streaming server using libshout. A common example of such a server is icecast.
This driver takes a full URL to the resource it should send the data to as device name. Commonly this looks like: http://user:pw@host:port/mount.ogg
Defaults are set to match icecast defaults: user: source, password: hackme, host: localhost, port: 8000, mount: /roar.ogg So for an icecast server you will normally only provide host, password and mount point: http://:pw@host/mount.ogg
sndio: OpenBSD sndio
This is the driver to access OpenBSD's new audio interace sndio.
Takes a normal sndio device string as device. See it's docs for more info.
rsound: RSound
Driver to access a RSound server.
This driver takes a server address as device.
portaudio: PortAudio?
Driver uses the PortAudio? interface to access the hardware. PortAudio? is a library similar to libao used to abstract the hardware.
This driver currently does not take a device name. This is subject to change.
alsa: Advanced Linux Sound Architecture
This driver uses GNU/Linux's ALSA audio drivers.
This driver takes an ALSA device name as device.
wmm: Win32 WMM API
This driver is used to access win32's WMM API. Use a different/better system.
This driver does not take a device name. This is a bug but may never be fixes: use a better OS. Thanks.
dmx: DMX4Linux / Generic DMX512 Driver
This driver uses the DMX4Linux Interface to control connected light equipment.
Takes a the device name (filename) as device. Common value is /dev/dmx.
pwmled: pulse-width modulation driver for light-emitting diodes and similar non-linear scaled devices
This driver is used to control LEDs and similar devices using the light control subsystem.
Takes a device name as device. The device is opened using the DSTR API (see dstr driver). Common devices include RS-232 interfaces (/dev/ttyS* under Linux).
sysclock: Clock providing dummy driver
This is a dummy driver. It can be used if no sound card is present. Unlike the null driver this one provides a audio clock.
Does not take a device option.
cdriver: libroareio's Client Driver
This opens a device by using libroareio's client driver (cdriver) API. This is a portable interface for some backends. Using is is normally not needed and only helpful for debugging and similar tasks.
Takes a driver name followed by a hash mark ('#') and a device name as device.
pulsesimple: PulseAudio? Simple API
This driver uses PulseAudio? backend. You should not use this but replace your setup fully with RoarAudio.
This driver takes a PulseAudio? server address as device.
artsc: analog Real time synthesizer (KDE 2.x/3.x audio interface)
This driver uses KDE's aRts audio interface.
This driver does not take a device name (because of limits in aRts' API).