wiki:roard/Drivers

Version 6 (modified by ph3-der-loewe, 13 years ago) (diff)

typo

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