Create a PipeWire virtual surround sink that routes audio to multiple physical outputs: - FL/FR channels → AmazonBasics USB speaker - RL/RR channels → Fosi BT20A PRO Bluetooth speaker - LFE channel → AmazonBasics (duplicated to both channels) Uses loopback modules with systemd services to maintain correct routing, as PipeWire's target.object parameter doesn't auto-connect properly. A timer checks every 10 seconds and fixes incorrect connections. Configuration is machine-specific and isolated in virtual-surround.nix.
3.0 KiB
3.0 KiB