wok annotate apulse/description.txt @ rev 22954

updated iperf (2.0.13 -> 3.7)
author Hans-G?nter Theisgen
date Fri Feb 28 15:11:56 2020 +0100 (2020-02-28)
parents
children
rev   line source
hackdorte@20007 1 The program provides an alternative partial implementation of the PulseAudio
hackdorte@20007 2 API. It consists of a loader script and a number of shared libraries with the
hackdorte@20007 3 same names as from original PulseAudio, so applications could dynamically
hackdorte@20007 4 load them and think they are talking to PulseAudio. Internally, no separate
hackdorte@20007 5 sound mixing daemon is used. Instead, apulse relies on ALSA's dmix, dsnoop,
hackdorte@20007 6 and plug plugins to handle multiple sound sources and capture streams running
hackdorte@20007 7 at the same time. dmix plugin muxes multiple playback streams; dsnoop plugin
hackdorte@20007 8 allow multiple applications to capture from a single microphone; and plug
hackdorte@20007 9 plugin transparently converts audio between various sample formats, sample
hackdorte@20007 10 rates and channel numbers. For more than a decade now, ALSA comes with these
hackdorte@20007 11 plugins enabled and configured by default.
hackdorte@20007 12
hackdorte@20007 13 apulse wasn't designed to be a drop-in replacement of PulseAudio. It's
hackdorte@20007 14 pointless, since that will be just reimplementation of original PulseAudio,
hackdorte@20007 15 with the same client-daemon architecture, required by the complete feature
hackdorte@20007 16 set. Instead, only parts of the API that are crucial to specific applications
hackdorte@20007 17 are implemented. That's why there is a loader script, named apulse. It
hackdorte@20007 18 updates value of LD_LIBRARY_PATH environment variable to point also to the
hackdorte@20007 19 directory where apulse's libraries are installed, making them available to
hackdorte@20007 20 the application.
hackdorte@20007 21
hackdorte@20007 22 Name comes from names of both ALSA and PulseAudio. As aoss was a
hackdorte@20007 23 compatibility layer between OSS programs and ALSA, apulse was designed to be
hackdorte@20007 24 compatibility layer between PulseAudio applications and ALSA.