Skip to content

Commit aca334f

Browse files
committed
Merge branch 'exaexa-master'
Add a man-page.
2 parents 1ca7448 + 13e571e commit aca334f

File tree

2 files changed

+57
-0
lines changed

2 files changed

+57
-0
lines changed

CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,3 +79,4 @@ configure_file("${CMAKE_CURRENT_SOURCE_DIR}/src/apulse.template"
7979
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/apulse" DESTINATION bin
8080
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
8181
install(TARGETS pulse-simple pulse pulse-mainloop-glib DESTINATION "${APULSEPATH}")
82+
install(FILES "${CMAKE_SOURCE_DIR}/man/apulse.1" DESTINATION share/man/man1)

man/apulse.1

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
.TH APULSE 1 2017-10-23 "apulse" "apulse"
2+
.SH NAME
3+
.B apulse
4+
\- The PulseAudio emulator for \fBALSA\fR
5+
.SH SYNOPSIS
6+
.B apulse
7+
.RI <program-name>
8+
.RI [program-parameters]...
9+
10+
.SH DESCRIPTION
11+
12+
The program provides an alternative partial implementation of the PulseAudio
13+
API. It consists of a loader script and a number of shared libraries with the
14+
same names as from original PulseAudio, so applications could dynamically load
15+
them and think they are talking to PulseAudio. Internally, no separate sound
16+
mixing daemon is used. Instead, \fBapulse\fR relies on \fBALSA\fR's \fBdmix\fR,
17+
\fBdsnoop\fR, and \fBplug\fR plugins to handle multiple sound sources and
18+
capture streams running at the same time. \fBdmix\fR plugin muxes multiple
19+
playback streams; \fBdsnoop\fR plugin allow multiple applications to capture
20+
from a single microphone; and \fBplug\fR plugin transparently converts audio
21+
between various sample formats, sample rates and channel numbers. For more than
22+
a decade now, \fBALSA\fR comes with these plugins enabled and configured by
23+
default.
24+
25+
\fBapulse\fR wasn't designed to be a drop-in replacement of PulseAudio. It's
26+
pointless, since that will be just reimplementation of original PulseAudio,
27+
with the same client-daemon architecture, required by the complete feature set.
28+
Instead, only parts of the API that are crucial to specific applications are
29+
implemented. That's why there is a loader script, named \fBapulse\fR. It
30+
updates value of LD_LIBRARY_PATH environment variable to point also to the
31+
directory where \fBapulse\fR's libraries are installed, making them available
32+
to the application.
33+
34+
Name comes from names of both \fBALSA\fR and PulseAudio. As \fBaoss\fR was a
35+
compatibility layer between OSS programs and \fBALSA\fR, \fBapulse\fR was
36+
designed to be compatibility layer between PulseAudio applications and
37+
\fBALSA\fR.
38+
39+
.SH RETURN VALUE
40+
41+
\fBapulse\fR is a simple shell wrapper script that calls \fBexec\fR on the
42+
program given in parameters. Except for cases when the wrapper itself fails to
43+
load, return value is the return value of that program.
44+
45+
.SH EXAMPLE
46+
47+
Run a newer Firefox browser with fake PulseAudio:
48+
49+
.nf
50+
.sp
51+
apulse firefox
52+
.fi
53+
54+
.SH AUTHORS
55+
56+
\fBapulse\fR was written by Rinat Ibragimov in 2014-2017.

0 commit comments

Comments
 (0)