Fix the Linux audio mess once and for all

Registered by m

Currently audio on Linux is a mess. Sound servers like Esound, Arts, Jack, PulseAudio constantly fight for exclusive access to the sound device. Applications usually support only a small subset of the available sound server/device APIs, and need to be configured for their use. Sound APIs are generally incompatible. Audio applications usually come with a messy plugin systems to support every API available. Several abstraction APIs exist, however, none is good for all use cases. Professional audio usually requires shutting down all non-professional sound porgrams. On the other hand Apple managed to define a common sound system (CoreAudio) which makes nearly everyone happy - desktop users as much as professional audio people. We should be able to provide the same for our users. This will be a long process, however a few components already exist which can be the first steps towards a common sound system that makes everyone happy, and brings world peace in the end.

Blueprint information

Scott James Remnant (Canonical)
Martin Pitt
Needs approval
Ted Gould
Series goal:
Accepted for hardy
Milestone target:
Started by
Martin Pitt
Completed by
Ted Gould


pitti: wrote design/implementation bits; moved approver to mdz so that I don't approve my own spec; mdz, please delegate appropriately
review: what about the GUI necessary for enabling all these use cases? -- smurf
pitti: described GUI apps, addressed comments

review: OK -- smurf

pitti: no assignee so far, nominate myself

2006-11-24: proposed quick&dirty hack to release sound card on inactivity does not work due to pulse design; setting back to discussion

2007-11-02: In Fedora 8 PulseAudio will be enabled by default
It will be a good idea to replace ESD with PulseAudio in Hardy.

pitti, 2007-11-22: spec updated to current reality; pulseaudio is installed by default now in current Hardy; missing things are the changing of non-Gnome apps to use pulse/esd output by default, and proper installation of the PA volume control tools, but I'd like to get this done by someone else than me.

DaveAbrahams, 2008-12-22: Please see Coming up with a GUI whose effect is comprehensible should be one of the goals of this blueprint


Work Items

Dependency tree

* Blueprints in grey have been implemented.