Blame doc/README-pulse

Packit 675970
PulseAudio <--> ALSA plugins
Packit 675970
============================
Packit 675970
Packit 675970
This plugin allows any program that uses the ALSA API to access a PulseAudio
Packit 675970
sound daemon. In other words, native ALSA applications can play and record
Packit 675970
sound across a network.
Packit 675970
Packit 675970
There are two plugins in the suite, one for PCM and one for mixer control. A
Packit 675970
typical configuration will look like:
Packit 675970
Packit 675970
    pcm.pulse {
Packit 675970
        type pulse
Packit 675970
    }
Packit 675970
Packit 675970
    ctl.pulse {
Packit 675970
        type pulse
Packit 675970
    }
Packit 675970
Packit 675970
Put the above in ~/.asoundrc, or /etc/asound.conf, and use "pulse" as device
Packit 675970
in your ALSA applications. For example:
Packit 675970
Packit 675970
    % aplay -Dpulse foo.wav
Packit 675970
    % amixer -Dpulse
Packit 675970
Packit 675970
PulseAudio will accept more or less any format you throw at it. So a plug
Packit 675970
wrapper is unnecessary. Mixing is also handled so dmix will only cause a
Packit 675970
performance hit without any gain.
Packit 675970
Packit 675970
The plugins will respect your PulseAudio environment variables (like
Packit 675970
PULSE_SERVER), but you can override these in ALSA's configuration files.
Packit 675970
Packit 675970
Both plugins accept the "server" parameter, specifying which PulseAudio server
Packit 675970
to contact. Both also accept the "device" parameter, which indicate which
Packit 675970
source and sink to use.
Packit 675970
Packit 675970
The mixer control plugin also accepts the parameters "source" and "sink" for
Packit 675970
when you need to specify a sink/source combination with different names. If
Packit 675970
you need to do this with PCM:s then specify two PCM:s with different "device".
Packit 675970
Packit 675970
If you do not specify any source and/or sink, then the server's defaults will
Packit 675970
be used.
Packit 675970
Packit 675970
When "fallback" option is set, the plugin will try to open the given PCM
Packit 675970
(or control) automatically when connecting to PA server fails.  Typically,
Packit 675970
it should point to "sysdefault", which was introduced recently in alsa-lib,
Packit 675970
so that the system-default setup is used even when you overwrite "default"
Packit 675970
PCM and control definitions.
Packit 675970
Packit 675970
    pcm.pulse {
Packit 675970
        type pulse
Packit 675970
        fallback "sysdefault"
Packit 675970
    }
Packit 675970
Packit 675970
    ctl.pulse {
Packit 675970
        type pulse
Packit 675970
        fallback "sysdefault"
Packit 675970
    }
Packit 675970
Packit 675970
   pcm.!default "pulse"
Packit 675970
   ctl.!default "pulse"