SDL 3.0 Will Now Prefer PipeWire Over PulseAudio

Written by Michael Larabel in Linux Gaming on 12 April 2024 at 06:31 AM EDT. 51 Comments
For the widely-used SDL hardware/software abstraction layer that is commonly used by cross-platform games, the upcoming SDL 3.0 release now has the logic to be able to prefer using PipeWire directly rather than PulseAudio when successfully detecting the presence of PipeWire.

Back in 2021 for SDL2 native PipeWire support was added. The change merged on Thursday for SDL 3.0 is the logic to be able to prefer using the native PipeWire support in place of PulseAudio, assuming your SDL is built with both PipeWire and PulseAudio support enabled.

The SDL library is now able to prefer using PipeWire if it detects the "pipewire-pulse" service running on the system. SDL will use DBus to query systemd to check for pipewire-pulse and then if so proceed to use the native PipeWire code path rather than PulseAudio. If Dbus support or systemd are not available, the standard audio driver order will be used.

PipeWire logo

PipeWire has been a resounding success for the modern Linux desktop to fulfill the needs of PulseAudio/JACK and much more with modern audio/video stream management and other expanding capabilities.

This improved audio driver selection logic for the Simple DirectMedia Layer was merged via this commit to the SDL3 Git code.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via

Popular News This Week