summaryrefslogtreecommitdiffstats
path: root/doc/README-pulse
blob: d5431b481c84d6f6d093a0da0710de699e9cd585 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
PulseAudio <--> ALSA plugins
============================

This plugin allows any program that uses the ALSA API to access a PulseAudio
sound daemon. In other words, native ALSA applications can play and record
sound across a network.

There are two plugins in the suite, one for PCM and one for mixer control. A
typical configuration will look like:

    pcm.pulse {
        type pulse
    }

    ctl.pulse {
        type pulse
    }

Put the above in ~/.asoundrc, or /etc/asound.conf, and use "pulse" as device
in your ALSA applications. For example:

    % aplay -Dpulse foo.wav
    % amixer -Dpulse

PulseAudio will accept more or less any format you throw at it. So a plug
wrapper is unnecessary. Mixing is also handled so dmix will only cause a
performance hit without any gain.

The plugins will respect your PulseAudio environment variables (like
PULSE_SERVER), but you can override these in ALSA's configuration files.

Both plugins accept the "server" parameter, specifying which PulseAudio server
to contact. Both also accept the "device" parameter, which indicate which
source and sink to use.

The mixer control plugin also accepts the parameters "source" and "sink" for
when you need to specify a sink/source combination with different names. If
you need to do this with PCM:s then specify two PCM:s with different "device".

If you do not specify any source and/or sink, then the server's defaults will
be used.