update readme
This commit is contained in:
parent
0551632794
commit
56c7445be0
1 changed files with 61 additions and 60 deletions
121
README.md
121
README.md
|
|
@ -1,68 +1,104 @@
|
||||||
# reforger-surround
|
# reforger-surround
|
||||||
|
|
||||||
Temporary PipeWire/PulseAudio 5.1 sink helper for testing Arma Reforger surround output on Linux.
|
PipeWire/PulseAudio helper for exposing Arma Reforger's 5.1 output on Linux.
|
||||||
|
|
||||||
It creates a virtual 5.1 output device, makes it the launch-time default, then exposes Reforger back to that device after normal system audio is restored.
|
This project has two parts:
|
||||||
|
|
||||||
|
- 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.
|
||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
|
|
||||||
- PipeWire with PulseAudio compatibility
|
- PipeWire with PulseAudio compatibility
|
||||||
- `pactl`
|
- `pactl`
|
||||||
- Arma Reforger running through Steam/Proton
|
- Arma Reforger through Steam/Proton
|
||||||
|
|
||||||
## Install
|
For the Carla EQ stage on Arch:
|
||||||
|
|
||||||
Run from the repo:
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
./reforger-surround --help
|
sudo pacman -S carla lsp-plugins-vst
|
||||||
```
|
```
|
||||||
|
|
||||||
Or install locally:
|
## Install
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
install -Dm755 reforger-surround ~/.local/bin/reforger-surround
|
install -Dm755 reforger-surround ~/.local/bin/reforger-surround
|
||||||
```
|
```
|
||||||
|
|
||||||
## Workflow
|
## 1. Expose Reforger 5.1
|
||||||
|
|
||||||
|
Preferred flow:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
reforger-surround launch
|
reforger-surround launch
|
||||||
```
|
```
|
||||||
|
|
||||||
This runs `up`, launches Arma Reforger through Steam, waits for the audio stream, then restores normal system audio while keeping Reforger exposed to the 5.1 sink.
|
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.
|
||||||
|
|
||||||
Manual workflow:
|
Check the result:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
reforger-surround check
|
||||||
|
```
|
||||||
|
|
||||||
|
Good:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Sample Specification: ... 6ch 48000Hz
|
||||||
|
Channel Map: front-left,front-right,front-center,lfe,rear-left,rear-right
|
||||||
|
```
|
||||||
|
|
||||||
|
If `launch` errors or times out, use the manual flow:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
reforger-surround up
|
reforger-surround up
|
||||||
```
|
# launch Arma Reforger manually
|
||||||
|
|
||||||
Launch Arma Reforger while `Reforger Surround 5.1` is the default output.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
reforger-surround restore
|
reforger-surround restore
|
||||||
reforger-surround check
|
reforger-surround check
|
||||||
```
|
```
|
||||||
|
|
||||||
If successful, clean up later with:
|
If Reforger negotiates only `2ch`, restart the game and investigate manually with `qpwgraph`, `reforger-surround status`, and `pactl list sink-inputs`.
|
||||||
|
|
||||||
|
## 2. Open ReforgerEQ Carla
|
||||||
|
|
||||||
|
Open `reforger-audio.carxp` through Carla:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
reforger-surround down
|
pw-jack /usr/bin/python3 /usr/share/carla/carla --with-appname=carla --with-libprefix=/usr /path/to/reforger-audio.carxp
|
||||||
```
|
```
|
||||||
|
|
||||||
## Commands
|
Optional KDE launcher:
|
||||||
|
|
||||||
|
- Open the start menu.
|
||||||
|
- Choose `Edit Applications`.
|
||||||
|
- Create a new item.
|
||||||
|
- Name: `Reforger EQ Carla`
|
||||||
|
- Program: `pw-jack`
|
||||||
|
- Command line arguments: `/usr/bin/python3 /usr/share/carla/carla --with-appname=carla --with-libprefix=/usr /path/to/reforger-audio.carxp`
|
||||||
|
|
||||||
|
## 3. Carla Output Wiring
|
||||||
|
|
||||||
|
Wire Carla outputs to your real output device's playback ports:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Output 1 -> playback_FL
|
||||||
|
Output 2 -> playback_FR
|
||||||
|
Output 3 -> playback_FL and playback_FR
|
||||||
|
Output 4 -> playback_FL
|
||||||
|
Output 5 -> playback_FR
|
||||||
|
```
|
||||||
|
|
||||||
|
## Useful Commands
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
reforger-surround create # create the 5.1 sink only
|
|
||||||
reforger-surround up # create sink, save default, make 5.1 default
|
reforger-surround up # create sink, save default, make 5.1 default
|
||||||
reforger-surround launch # up, launch Steam app, wait for stream, restore
|
reforger-surround launch # up, launch Steam app, wait for stream, restore
|
||||||
reforger-surround expose # move running Reforger stream to the 5.1 sink
|
|
||||||
reforger-surround pin # alias for expose
|
|
||||||
reforger-surround restore # restore previous default, then expose Reforger
|
reforger-surround restore # restore previous default, then expose Reforger
|
||||||
reforger-surround down # restore default and unload the 5.1 sink
|
reforger-surround expose # move running Reforger stream to the 5.1 sink
|
||||||
reforger-surround status # show current state
|
|
||||||
reforger-surround check # report whether Reforger is 2ch or 6ch
|
reforger-surround check # report whether Reforger is 2ch or 6ch
|
||||||
|
reforger-surround down # restore default and unload the 5.1 sink
|
||||||
```
|
```
|
||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
@ -75,39 +111,4 @@ REFORGER_SURROUND_STEAM_URI=steam://rungameid/1874880
|
||||||
REFORGER_SURROUND_WAIT_SECONDS=90
|
REFORGER_SURROUND_WAIT_SECONDS=90
|
||||||
```
|
```
|
||||||
|
|
||||||
Example override:
|
LFE may be silent even when Reforger is outputting 6ch.
|
||||||
|
|
||||||
```bash
|
|
||||||
REFORGER_SURROUND_APP_NAME="ArmaReforgerSteam.exe" reforger-surround check
|
|
||||||
```
|
|
||||||
|
|
||||||
Use a custom launch command:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
reforger-surround launch steam steam://rungameid/1874880
|
|
||||||
```
|
|
||||||
|
|
||||||
## Expected Result
|
|
||||||
|
|
||||||
Good:
|
|
||||||
|
|
||||||
```text
|
|
||||||
Sample Specification: ... 6ch 48000Hz
|
|
||||||
Channel Map: front-left,front-right,front-center,lfe,rear-left,rear-right
|
|
||||||
```
|
|
||||||
|
|
||||||
Bad:
|
|
||||||
|
|
||||||
```text
|
|
||||||
Sample Specification: ... 2ch 48000Hz
|
|
||||||
Channel Map: front-left,front-right
|
|
||||||
```
|
|
||||||
|
|
||||||
If Reforger negotiates stereo, restart the game with the 5.1 sink selected/default before launch.
|
|
||||||
|
|
||||||
## Notes
|
|
||||||
|
|
||||||
- Prefer `restore` over manually changing your default output device.
|
|
||||||
- If you change default output manually, run `reforger-surround expose` afterward.
|
|
||||||
- `restore` keeps the 5.1 sink alive; `down` unloads it.
|
|
||||||
- LFE may be silent even when Reforger is outputting 6ch.
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue