Enable virtual 7.1 surround sound for your headphones on Linux with just one click.
- Enable or disable virtual surround sound seemlessly, without changing your default device
- Drop in your own HRIR WAV files as virtualization presets, same as HeSuVi on Windows
- Can be run in the background with a system tray icon
- Compatible with EasyEffects (and most similar apps)
- Written entirely using the PipeWire C API, so no config files or service restarts are required
- Modern user interface, built with KDE's Kirigami 6 framework
- Available languages: English, German, Russian
- This project is not using vibe coding, AI agents or similar tools for generating unmaintainable slop
Compatible with any distribution. Just Download and run. Use the "x86_64" file if you're unsure.
For Arch Linux and derivatives. Install with your AUR manager, like: yay -S virtual-surround-manager
FlatHub is planned.
These packages are maintained and provided by community members.
- Fedora (by AndnoVember)
- Ubuntu/Debian (by AndnoVember)
- OpenSUSE (by AndnoVember)
- Arch Linux (by AndnoVember)
Just enable the virtual surround sound and enjoy your favorite games and movies in very realistic simulated surround sound.
Please don't forget to open the settings of your game or media player and select real 7.1 or 5.1 audio (do not use any "headphone" profile or in-game 3D audio)!
To check if everything is working correctly, this is how audio routing should look like in coppwr:

Arch Linux: sudo pacman -S git ninja libpipewire base-devel extra-cmake-modules cmake kirigami ki18n kcoreaddons breeze kiconthemes qt6-base qt6-declarative qqc2-desktop-style
For other distributions, just look up how the packages are called in your distro: https://pkgs.org
- Clone repository:
git clone https://github.com/Berny23/virtual-surround-manager.git - Change directory:
cd virtual-surround-manager - Prepare Build directory:
cmake -B build -G Ninja - Build the project:
cmake --build build --config Release - Install the project:
sudo cmake --install build --config Release
- Clone repository:
git clone https://github.com/Berny23/virtual-surround-manager.git - Change directory:
cd virtual-surround-manager - Prepare Build directory and set local install path:
cmake -B build -G Ninja --install-prefix ~/.local - Build the project:
cmake --build build --config Debug - Install the project:
cmake --install build --config Debug
- Clone repository:
git clone https://github.com/Berny23/virtual-surround-manager.git - Change directory:
cd virtual-surround-manager - Build the flatpak:
flatpak-builder --force-clean --user --install-deps-from=flathub --repo=repo --install flatpak_build ./dist/flatpak/de.berny23.virtual_surround_manager.Devel.json - Run the program:
flatpak run de.berny23.virtual_surround_manager
- Clone repository:
git clone https://github.com/Berny23/virtual-surround-manager.git - Change directory:
cd virtual-surround-manager - Build the AppImage:
./dist/appimage/build_virtual_surround_manager.sh - Make executable:
chmod +x ./build_appimage/virtual-surround-manager-unknown-x86_64.AppImage - Run the program:
./build_appimage/virtual-surround-manager-unknown-x86_64.AppImage
- The EasyEffects project for research on the API, because the PipeWire docs are quite lacking for beginners
- The HeSuVi project for their awesome collection of HRIR WAV files