All PulseAudio source files are licensed under the GNU Lesser General Public
License. (see file LGPL for details)
However, the server side has optional GPL dependencies. These include the
libsamplerate and gdbm (core libraries), LIRC (lirc module) and FFTW (equalizer
module), although others may also be included in the future. If PulseAudio is
compiled with these optional components, this effectively downgrades the
license of the server part to GPL (see the file GPL for details), exercising
section 3 of the LGPL. In such circumstances, you should treat the client
library (libpulse) of PulseAudio as being LGPL licensed and the server part
(libpulsecore) as being GPL licensed. Since the PulseAudio daemon, tests,
various utilities/helpers and the modules link to libpulsecore and/or the afore
mentioned optional GPL dependencies they are of course also GPL licensed also
in this scenario.
In addition to this, if D-Bus support is enabled, the PulseAudio client library
(libpulse) MAY need to be licensed under the GPL, depending on the license
adopted for libdbus. libdbus is licensed under either of the Academic Free
License 2.1 or GPL 2.0 or above. Which of these applies is your choice, and the
result affects the licensing of libpulse and thus, potentially, all programs
that link to libpulse.
Andre Adrian's echo cancellation implementation is licensed under a less
restrictive license - see src/modules/echo-cancel/adrian-license.txt for
Some other files pulled into PA source (i.e. reference implementations that are
considered too small and stable to be considered as an external library) use the
more permissive MIT license. This include the device reservation DBus protocol
and realtime kit implementations.
Additionally, a more permissive Sun license is used for code that performs
u-law, A-law and linear PCM conversions.
While we attempt to provide a summary here, it is the ultimate responsibility of
the packager to ensure the components they use in their build of PulseAudio
meets their license requirements.