This script configures WirePlumber to route all audio output streams (media.class = "Stream/Output/Audio") through the EasyEffects sink. This allows global audio processing without setting EasyEffects as the system default sink.
If you find this project useful and would like to support its development, consider donating via PayPal or Venmo:
© 2025 Maulik Mistry
This project is licensed under the Apache License 2.0. See the LICENSE.txt file for full license text.
EasyEffects recommends not being set as the default audio sink. However, this can make routing audio from every app manually tedious. This script ensures all output audio automatically flows through EasyEffects.
-
Copy
99-route-to-easyeffects.luato the WirePlumber configuration directory:sudo mkdir -p /etc/wireplumber/main.lua.d/ sudo cp 99-route-to-easyeffects.lua /etc/wireplumber/main.lua.d/
-
Restart WirePlumber since it runs at the user level through systemd:
systemctl --user restart wireplumber -
Make sure EasyEffects is running and has created its virtual sink such as with KDE's volume controls.
- This affects all output audio streams, including Flatpak and Snap apps.
- Microphone and input streams are not affected.
- If EasyEffects is not running, audio may fail to route.