Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 Support for Microsoft Windows  





2 Software architecture  



2.1  libcanberra  





2.2  libSydney  







3 Features  





4 Adoption  



4.1  Problems during adoption phase  







5 Related software  



5.1  Other sound servers  





5.2  General audio infrastructures  







6 See also  





7 References  





8 External links  














PulseAudio






Čeština
Deutsch
Español
Français

Italiano
Nederlands

Norsk bokmål
Norsk nynorsk
Polski
Português
Русский
Suomi
Türkçe
Українська

 

Edit links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 




In other projects  



Wikimedia Commons
 
















Appearance
   

 






From Wikipedia, the free encyclopedia
 


PulseAudio
Developer(s)
  • Pierre Ossman
  • Shahms E. King
  • Tanu Kaskinen
  • Colin Guthrie
  • Arun Raghavan
  • David Henningsson
  • Initial release17 July 2004; 19 years ago (2004-07-17)[1]
    Stable release

    17.0[2] / 12 January 2024; 5 months ago (2024-01-12)

    Repositorygitlab.freedesktop.org/pulseaudio/pulseaudio
    Written inC[3]
    Operating systemFreeBSD, NetBSD, OpenBSD, Linux, Illumos, Solaris, macOS, and Microsoft Windows (not maintained)
    PlatformARM, PowerPC, x86 / IA-32, x86-64, and MIPS
    TypeSound server
    LicenseLGPL-2.1-or-later[4]
    Websitepulseaudio.org

    PulseAudio is a network-capable sound server program distributed via the freedesktop.org project. It runs mainly on Linux, including Windows Subsystem for LinuxonMicrosoft Windows and TermuxonAndroid; various BSD distributions such as FreeBSD, OpenBSD, and macOS; as well as Illumos distributions and the Solaris operating system. It serves as a middleware in between applications and hardware and handles raw PCM audio streams.[5]

    PulseAudio is free and open-source software, and is licensed under the terms of the LGPL-2.1-or-later.[4]

    It was created in 2004 under the name Polypaudio but was renamed in 2006 to PulseAudio.[6]

    PulseAudio competes with newer PipeWire, which provides a compatible PulseAudio server (known as pipewire-pulse), and PipeWire is now used by default on many Linux distributions, including Fedora Linux, Ubuntu, and Debian.[7][8][9]

    Support for Microsoft Windows[edit]

    OnMicrosoft Windows, PulseAudio runs in Windows Subsystem for Linux.

    The NT kernel was previously supported via MinGW (an implementation of the GNU toolchain, which includes various tools such as GCC and binutils). The NT kernel port has not been updated since 2011, however.[10]

    Software architecture[edit]

    PulseAudio operational flow chart
    PulseAudio is a daemon that does mixing in software.

    In broad terms ALSA is a kernel subsystem that provides the sound hardware driver, and PulseAudio is the interface engine between applications and ALSA. However, its use is not mandatory and audio can still be played and mixed together without PulseAudio.

    PulseAudio acts as a sound server, where a background process accepting sound input from one or more sources (processes, capture devices, etc.) is created. The background process then redirects these sound sources to one or more sinks (sound cards, remote network PulseAudio servers, or other processes).[11]

    One of the goals of PulseAudio is to reroute all sound streams through it, including those from processes that attempt to directly access the hardware (like legacy OSS applications). PulseAudio achieves this by providing adapters to applications using other audio systems, like aRts and ESD.

    In a typical installation scenario under Linux, the user configures ALSA to use a virtual device provided by PulseAudio. Thus, applications using ALSA will output sound to PulseAudio, which then uses ALSA itself to access the real sound card. PulseAudio also provides its own native interface to applications that want to support PulseAudio directly, as well as a legacy interface for ESD applications, making it suitable as a drop-in replacement for ESD.

    For OSS applications, PulseAudio provides the padsp utility, which replaces device files such as /dev/dsp, tricking the applications into believing that they have exclusive control over the sound card. In reality, their output is rerouted through PulseAudio.

    libcanberra[edit]

    libcanberra is an abstract API for desktop event sounds and a total replacement for the "PulseAudio sample cache API":

    libSydney[edit]

    libSydney is a total replacement for the "PulseAudio streaming API", and plans have been made for libSydney to eventually become the only audio API used in PulseAudio.[15]

    Features[edit]

    The main PulseAudio features include:[11]

    Adoption[edit]

    PulseAudio first appeared for regular users in Fedora Linux, starting with version 8,[18] then was adopted by major Linux distributions such as Ubuntu, Debian,[19] Mandriva Linux, and openSUSE. There is support for PulseAudio in the GNOME project, and also in KDE, as it is integrated into Plasma Workspaces, adding support to Phonon (the KDE multimedia framework) and KMix (the integrated mixer application) as well as a "Speaker Setup" GUI to aid the configuration of multi-channel speakers. PulseAudio is also available in the Illumos distribution OpenIndiana, and enabled by default in its MATE desktop environment.

    Various Linux-based mobile devices, including Nokia N900, Nokia N9 and the Palm Pre[20] use PulseAudio.

    Tizen, an open-source mobile operating system, which is a project of the Linux Foundation and is governed by a Technical Steering Group (TSG) composed of Intel and Samsung, uses PulseAudio.

    Problems during adoption phase[edit]

    Related software[edit]

    Other sound servers[edit]

    JACK is a sound server that provides real-time, low-latency (i.e. 5 milliseconds or less) audio performance and, since JACK2, supports efficient load balancing by utilizing symmetric multiprocessing; that is, the load of all audio clients can be distributed among several processors. JACK is the preferred sound server for professional audio applications such as Ardour, ReZound, and LinuxSampler; multiple free audio-production distributions use it as the default audio server.

    It is possible for JACK and PulseAudio to coexist: while JACK is running, PulseAudio can automatically connect itself as a JACK client, allowing PulseAudio clients to make and record sound at the same time as JACK clients.[36]

    PipeWire is an audio and video server that "aims to support the use cases currently handled by both PulseAudio and Jack".[37][38]

    General audio infrastructures[edit]

    Before JACK and PulseAudio, sound on these systems was managed by multi-purpose integrated audio solutions. These solutions do not fully cover the mixing and sound streaming process, but they are still used by JACK and PulseAudio to send the final audio stream to the sound card.

    See also[edit]

    References[edit]

    1. ^ "OldNews". freedesktop.org.
  • ^ "PulseAudio 17.0 · PulseAudio / pulseaudio · GitLab". GitLab. Retrieved 13 January 2024.
  • ^ "PulseAudio", Analysis Summary, Open Hub
  • ^ a b "License", PulseAudio git, Free desktop, archived from the original on 4 March 2014, retrieved 16 June 2011
  • ^ "SupportedAudioFormats". www.freedesktop.org. Retrieved 13 May 2023.
  • ^ The Project Formerly Known as Polypaudio
  • ^ "Changes/DefaultPipeWire - Fedora Project Wiki". fedoraproject.org. Retrieved 13 February 2023.
  • ^ Sneddon, Joey (22 May 2022). "Ubuntu 22.10 Makes PipeWire Default for Audio". OMG! Ubuntu!. Retrieved 13 February 2023.
  • ^ "Debian 12 Switches To PipeWire & WirePlumber By Default With The GNOME Desktop". www.phoronix.com. Retrieved 13 February 2023.
  • ^ PulseAudio on Windows
  • ^ a b "About", PulseAudio, Free desktop, retrieved 11 March 2013
  • ^ "Debian -- Package Search Results -- libcanberra". packages.debian.org.
  • ^ "Debian -- Package Search Results -- libasound". packages.debian.org.
  • ^ "Debian -- Package Search Results -- libcanberra-pulse". packages.debian.org.
  • ^ Poettering, Lennart (8 February 2007). "FOMS/LCA Recap". 0pointer.de. Retrieved 13 March 2017.
  • ^ Poettering, Lennart, "Interviews", Fedora Project, Red Hat, retrieved 3 July 2009
  • ^ Pulse Audio wiki, PulseAudio, archived from the original on 31 August 2009, retrieved 19 July 2009
  • ^ "LPC: Linux audio: it's a mess [LWN.net]". 18 September 2008. Retrieved 11 July 2019.
  • ^ PulseAudio, Debian, archived from the original (wiki) on 9 November 2013, retrieved 9 November 2013
  • ^ "Open source identity: PulseAudio creator Lennart Poettering", TechWorld, 8 October 2009
  • ^ Poettering, Lennart (25 September 2004). "Writing a PortAudio driver". audio.portaudio.devel. git.net. Retrieved 28 February 2017.
  • ^ Poettering, Lennart. "PulseAudio is now enabled by default on new Fedora installs". Fedora Development ML. Red Hat. Retrieved 1 March 2017.
  • ^ "Features: Glitch-free Audio". Fedora Project Wiki. Retrieved 28 February 2017.
  • ^ Poettering, Lennart. "Alsa Issues". PulseAudio - Trac. Archived from the original on 16 October 2008. Retrieved 28 February 2017.
  • ^ LPC: Linux audio: it's a mess, LWN, 18 September 2008, archived from the original on 1 September 2009, retrieved 3 July 2009
  • ^ Lennart Poettering (18 July 2008), PulseAudio FUD, 0pointer.de, archived from the original on 2 September 2009, retrieved 30 December 2009
  • ^ How-to: PulseAudio Fixes & System-Wide Equalizer Support, Ubuntu Forums, 10 May 2008, archived from the original on 1 March 2010, retrieved 18 October 2009
  • ^ I'll Break Your Audio, Lennart Poettering Blog, 19 October 2009, retrieved 26 December 2009
  • ^ No sound after running Flash, YouTube, etc. (pulseaudio solution), Ubuntu Forums, archived from the original on 29 February 2012, retrieved 18 October 2009
  • ^ PulseAudio, Ubuntu Wiki, archived from the original on 25 February 2011, retrieved 18 October 2009
  • ^ "Over-optimistic buffering in PulseAudio causes underruns (audible stuttering, pops)". Launchpad. Retrieved 9 November 2013.
  • ^ "46466 - PulseAudio needs a way for the user to set inviolable maximum volume". Bugzilla. Retrieved 6 October 2021.
  • ^ "[SOLVED] disabling pulseaudio - Page 3". Linux Questions. Retrieved 6 October 2021.
  • ^ "Bug #410948 'Volume too loud' : Bugs : pulseaudio package". Ubuntu. Retrieved 6 October 2021.
  • ^ "#837637 - Audio settings often reset to 100% Volume". Debian Bug report logs. Retrieved 6 October 2021.
  • ^ See “Loadable Modules.” Modules, Freedesktop.org, https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Modules/#index9h2, retrieved August 28, 2019
  • ^ "PipeWire". pipewire.org.
  • ^ "On the Road to Fedora Workstation 31 — Christian F.K. Schaller".
  • ^ An introduction to Linux sound systems and APIs, Linux.com, 9 August 2004, archived from the original on 19 October 2014, retrieved 23 March 2013, OSS is available not only for Linux but also for BSD OSes and other Unixes. That may be its only advantage, because this system is not very powerful and was officially replaced by ALSA in 2.5 kernels...
  • ^ 4Front technologies releases the source code for open sound system, Linux PR, 14 June 2007, retrieved 8 January 2012.
  • External links[edit]


    Retrieved from "https://en.wikipedia.org/w/index.php?title=PulseAudio&oldid=1208299819"

    Categories: 
    2004 software
    Audio libraries
    Audio software for Linux
    Free audio software
    Free software programmed in C
    Linux APIs
    Collabora
    Software using the LGPL license
    Hidden categories: 
    Articles with short description
    Short description matches Wikidata
    Articles with self-published sources from March 2017
    All articles with self-published sources
    Articles lacking reliable references from March 2017
    All articles lacking reliable references
    Articles with multiple maintenance issues
    Commons category link from Wikidata
    Use dmy dates from March 2017
     



    This page was last edited on 17 February 2024, at 00:46 (UTC).

    Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Mobile view



    Wikimedia Foundation
    Powered by MediaWiki