Fix interactive sender launcher paths

This commit is contained in:
Meta Vens 2026-05-18 12:43:15 +01:00
commit 0bd1621b47
5 changed files with 24 additions and 7 deletions

View file

@ -14,7 +14,8 @@
- Voicemeeter loopback installed on the sender.
- Receiver OBS scene has `Neighbor PC - System Audio` on SRT port `5102`.
- Sender script uses `-nostdin` and repo-root logs so desktop launchers stay alive and diagnostics land in `C:\Meta\LocalCastBridge\logs`.
- Sender video config currently matches the live `1024x768` desktop.
- Sender video config is `1920x1080` for the interactive desktop. The `1024x768` SSH session size is not the streaming target.
- Desktop launchers use absolute paths for winget-installed tools because interactive `cmd.exe` did not resolve `SoundVolumeView`.
## Temporary

View file

@ -37,10 +37,9 @@ focusrite srt://192.168.1.66:5101?mode=caller&latency=120000
system srt://192.168.1.66:5102?mode=caller&latency=120000
```
Current video capture size is `1024x768`, matching the live `WinDisc` display
reported by the sender. Do not force `1920x1080` unless Windows reports a real
desktop of that size; `gdigrab` exits when the requested capture rectangle is
larger than the current desktop.
Current video capture size is `1920x1080` for the interactive desktop. Do not
trust the `1024x768` size reported from SSH; that is the remote session display,
and using it captures only a slice of the actual desktop.
OBS on the receiver should add listener-mode Media Sources:
@ -78,6 +77,8 @@ Start launcher:
- uses `config\localcast.json`
- passes the winget FFmpeg alias path explicitly
- starts Voicemeeter
- calls `SoundVolumeView.exe` by absolute path because the winget alias is not
reliably available in interactive `cmd.exe`
- sets Windows default render to `Voicemeeter VAIO3 Input`
- sets Windows default capture to `Voicemeeter Out B3`
- writes FFmpeg logs under `C:\Meta\LocalCastBridge\logs`

View file

@ -27,7 +27,8 @@ Get-Content .\state\evidence.jsonl -Tail 8
- Madman's desktop has `Start LocalCast Sender.cmd` and `Stop LocalCast Sender.cmd`.
- Receiver OBS scene collection has `Neighbor PC - Video`, `Neighbor PC - Focusrite`, and `Neighbor PC - System Audio` Media Sources added.
- Sender has Voicemeeter plus SoundVolumeView installed for system-output loopback.
- Sender script was patched after failed transmission: live FFmpeg commands now include `-nostdin`, logs go under `C:\Meta\LocalCastBridge\logs`, and video capture size is `1024x768`.
- Sender script was patched after failed transmission: live FFmpeg commands now include `-nostdin`, logs go under `C:\Meta\LocalCastBridge\logs`, and interactive video capture size is `1920x1080`.
- Madman's desktop launchers call `SoundVolumeView.exe` and `ffmpeg.exe` by absolute winget-link path.
- SSH-launched video capture fails with `gdigrab` error 5; test video from Madman's interactive desktop launcher.
## Current Pressure

View file

@ -5,3 +5,5 @@
{"ts": "2026-05-18T10:27:41+00:00", "type": "deployment", "status": "ok", "note": "Receiver OBS Untitled scene now has Neighbor PC - Video and Neighbor PC - Focusrite ffmpeg_source Media Sources listening on SRT ports 5100 and 5101; original scene JSON was backed up before edit."}
{"ts": "2026-05-18T10:52:05+00:00", "type": "deployment", "status": "ok", "note": "Installed Voicemeeter and SoundVolumeView on sender, added system-loopback using DirectShow device Voicemeeter Out B3 on SRT port 5102, and added matching OBS source Neighbor PC - System Audio."}
{"ts": "2026-05-18T11:38:25+00:00", "type": "fix", "status": "ok", "note": "Transmission failure traced to three issues: stale OBS SRT source state, sender live launcher splitting/closing FFmpeg due Start-Process/stdin handling, and SSH-launched gdigrab seeing a 1024x768 remote desktop with capture error 5. Patched sender-start with quoted argument string, -nostdin, repo-root logs, and set sender video config to 1024x768; OBS restarted and listening on UDP 5100-5102."}
{"ts": "2026-05-18T11:39:19+00:00", "type": "decision", "status": "ok", "note": "Ambisonic AquaSynth path should use one clocked multichannel capture feeding a declared ambisonic bus; four heterogeneous mics must not be treated as raw first-order A-format without geometry and calibration."}
{"ts": "2026-05-18T11:43:08+00:00", "type": "fix", "status": "ok", "note": "Madman's interactive launcher could not resolve winget aliases for SoundVolumeView, so desktop CMD files now use absolute winget-link paths. Sender video config restored to 1920x1080 because 1024x768 was only the SSH session display and captured a slice."}

View file

@ -43,6 +43,17 @@ active_subgoals:
- Smoke-test the video endpoint in OBS.
- Smoke-test each audio endpoint in OBS and tune latency.
- Decide whether an OBS source generator or plugin investigation is justified.
- Evaluate the Ambisonic AquaSynth path as a separate synchronized multichannel audio pipeline; do not treat heterogeneous mic feeds as raw first-order ambisonic A-format without geometry, calibration, and a shared clock.
research:
ambisonic_aquasynth:
summary: research/ambisonic-aquasynth/summary.md
bibliography: research/ambisonic-aquasynth/bibliography.md
key_decision: >
A spatial field must be built from one clocked multichannel capture path
feeding a declared ambisonic bus. The existing one-audio-source-per-SRT
endpoint design remains valid for plain OBS mixing, but it is not the
authority for synchronized ambisonic DSP.
current_status:
summary: >
@ -50,7 +61,8 @@ current_status:
C:\Meta\LocalCastBridge. FFmpeg 8.1.1 with SRT and h264_nvenc is installed
there, Voicemeeter supplies system-output loopback, Madman's desktop has
start/stop launchers, the sender script has launcher-safe FFmpeg arguments
and repo-root logs, and the receiver OBS scene has matching Media Sources.
and repo-root logs, desktop launchers use absolute tool paths, and the
receiver OBS scene has matching Media Sources.
next_action: >
With OBS open on the receiver, start the sender launcher from Madman's
interactive desktop and smoke-test video, Focusrite audio, and system audio.