reforger-eq/README.md

136 lines
3.6 KiB
Markdown
Raw Normal View History

2026-05-02 14:21:02 +01:00
# reforger-surround
2026-05-02 13:16:20 +00:00
2026-05-02 16:15:05 +01:00
PipeWire/PulseAudio helper for exposing Arma Reforger's 5.1 output on Linux.
2026-05-02 13:16:20 +00:00
This project has two parts to running:
2026-05-02 16:15:05 +01:00
- Create a temporary 5.1 sink so Reforger negotiates surround channels.
- Manually open the Carla EQ project and wire it to your real stereo output.
Watching the graph in `qpwgraph` is recommended while testing.
2026-05-02 13:16:20 +00:00
2026-05-02 14:21:02 +01:00
## Requirements
2026-05-02 13:16:20 +00:00
2026-05-02 14:21:02 +01:00
- PipeWire with PulseAudio compatibility
2026-05-02 16:15:05 +01:00
- Arma Reforger through Steam/Proton
- Carla
- LSP VST Plugins
2026-05-02 13:16:20 +00:00
2026-05-02 16:15:05 +01:00
For the Carla EQ stage on Arch:
2026-05-02 13:16:20 +00:00
2026-05-02 14:21:02 +01:00
```bash
2026-05-02 16:15:05 +01:00
sudo pacman -S carla lsp-plugins-vst
2026-05-02 13:16:20 +00:00
```
## Normal Use (after first time install)
2026-05-02 13:16:20 +00:00
---
2026-05-02 16:15:05 +01:00
>### Optional - Install script as a callable service
>
> ```bash
>install -Dm755 reforger-surround ~/.local/bin/reforger-surround
>```
>If you choose not to install it, you can refer to it by running like a standard bash script ie. `cd` to the project directory and use `./reforger-surround` to run.
2026-05-02 13:16:20 +00:00
---
2026-05-02 16:06:15 +01:00
# Installation
Due to program restrictions on both Arma and Carla, there is a three part process to installing first time.
## Part 1. Expose Reforger 5.1 Channel
2026-05-02 16:06:15 +01:00
### First time install
2026-05-02 16:06:15 +01:00
2026-05-02 14:21:02 +01:00
```bash
reforger-surround up
# launch Arma Reforger manually
reforger-surround expose
reforger-surround restore
2026-05-02 16:15:05 +01:00
reforger-surround check
```
This creates the 5.1 sink, makes it default, launches Reforger, waits for the game audio stream, restores your previous default device, then exposes Reforger back to the 5.1 sink.
2026-05-02 13:16:20 +00:00
### After installing
2026-05-02 13:16:20 +00:00
2026-05-02 14:21:02 +01:00
```bash
reforger-surround launch
2026-05-02 14:21:02 +01:00
```
2026-05-02 13:16:20 +00:00
If `launch` errors or times out, use the manual flow from first time install.
>If Reforger negotiates only `2ch`, restart the game and investigate manually with `qpwgraph`, `reforger-surround status`, and `pactl list sink-inputs`.
2026-05-02 16:15:05 +01:00
2026-05-02 16:22:15 +01:00
Expected final QPWGraph wiring:
![Expected QPWGraph wiring](assets/qpwgraph%20wiring.png)
---
2026-05-02 16:15:05 +01:00
## Part 2. Open ReforgerEQ Carla
2026-05-02 13:16:20 +00:00
Open `reforger-audio.carxp` through Carla:
2026-05-02 13:16:20 +00:00
- Launch Carla
- Click on Open
- Open `reforger-audio.carxp`
2026-05-02 16:15:05 +01:00
>Recommended (optional) KDE one-click launcher for start menu:
>
>- Right click the start menu or open `Menu Editor`
>- Choose `Edit Applications`.
>- Create a new item.
>- Name: `Reforger EQ Carla`
2026-05-02 20:29:51 +01:00
>- Program: `carla`
>- Command line arguments: `/path/to/reforger-audio.carxp`
2026-05-02 16:15:05 +01:00
---
2026-05-02 16:15:05 +01:00
## Part 3. Carla Output Wiring
2026-05-02 16:22:15 +01:00
>If you want to use `qpwgraph` to do this step, feel free. Be aware that it (sometimes) won't auto-wire when ReforgerEQ Carla gets reset. Using Carla's patchbay means it will *always* link itself to what is saved in the .carxp file.
2026-05-02 16:22:15 +01:00
Enter `carla`, click on the small tab `patchbay` and wire Carla outputs to your real output device's playback ports:
2026-05-02 16:15:05 +01:00
```text
Output 1 -> playback_FL
Output 2 -> playback_FR
Output 3 -> playback_FL and playback_FR
Output 4 -> playback_FL
Output 5 -> playback_FR
```
Carla patchbay example:
>'Speakers' is a generic device, your device name may vary.
![Carla wiring](assets/Carla%20Wiring.png)
2026-05-02 16:15:05 +01:00
## Useful Commands
2026-05-02 13:16:20 +00:00
2026-05-02 14:21:02 +01:00
```bash
2026-05-02 14:49:32 +01:00
reforger-surround up # create sink, save default, make 5.1 default
2026-05-02 16:06:15 +01:00
reforger-surround launch # up, launch Steam app, wait for stream, restore
2026-05-02 14:49:32 +01:00
reforger-surround restore # restore previous default, then expose Reforger
2026-05-02 16:15:05 +01:00
reforger-surround expose # move running Reforger stream to the 5.1 sink
2026-05-02 14:49:32 +01:00
reforger-surround check # report whether Reforger is 2ch or 6ch
2026-05-02 16:15:05 +01:00
reforger-surround down # restore default and unload the 5.1 sink
2026-05-02 14:21:02 +01:00
```
## Configuration
2026-05-02 13:16:20 +00:00
2026-05-02 14:21:02 +01:00
```bash
REFORGER_SURROUND_SINK_NAME=reforger_surround_51
REFORGER_SURROUND_DESCRIPTION="Reforger Surround 5.1"
REFORGER_SURROUND_APP_NAME="Arma Reforger"
2026-05-02 16:06:15 +01:00
REFORGER_SURROUND_STEAM_URI=steam://rungameid/1874880
REFORGER_SURROUND_WAIT_SECONDS=90
2026-05-02 14:21:02 +01:00
```
2026-05-02 13:16:20 +00:00
LFE is silent even when Reforger is outputting 6ch.