datarhei-dragonfork-core/app/webrtc
Zac Gaetano 49677fbd3d
Some checks failed
tests / build (push) Failing after 2s
tests / build (pull_request) Failing after 1s
fix(webrtc): make WebRTC FFmpeg stream maps configurable (closes #2)
BuildArgs hardcoded -map 0✌️0 / -map 0🅰️0 for the two RTP legs.
Correct for production RTMP/SRT publishers (single combined input),
but breaks any process whose audio lives on a different input index
— multi-input lavfi test scaffolds, multi-camera pipelines, SDI +
file-audio mixes, etc.

Adds VideoMap and AudioMap fields to ConfigWebRTC (and the API DTO),
defaulting to the prior literals so existing deployments are
unaffected. BuildArgs reads them.

Tests:
- TestBuildArgs_DefaultMaps locks the empty-string default behavior
- TestBuildArgs_CustomMaps drives the multi-input override path
- TestProcessConfigWebRTCMapsRoundtrip extends the DTO roundtrip

Closes #2.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-03 12:10:51 +00:00
..
ffmpeg_args.go fix(webrtc): make WebRTC FFmpeg stream maps configurable (closes #2) 2026-05-03 12:10:51 +00:00
ffmpeg_args_test.go fix(webrtc): make WebRTC FFmpeg stream maps configurable (closes #2) 2026-05-03 12:10:51 +00:00
handler.go feat(webrtc): add Echo WHEP handler for app/webrtc subsystem 2026-04-17 10:03:24 -04:00
handler_test.go feat(webrtc): add Echo WHEP handler for app/webrtc subsystem 2026-04-17 10:03:24 -04:00
integration_test.go test(webrtc): add M2 integration smoke test 2026-04-17 10:11:34 -04:00
lifecycle.go feat(webrtc): add app/webrtc subsystem + lifecycle hooks 2026-04-17 10:02:00 -04:00
lifecycle_test.go feat(webrtc): add app/webrtc subsystem + lifecycle hooks 2026-04-17 10:02:00 -04:00
portalloc.go feat(app/webrtc): port allocator + FFmpeg arg builder 2026-04-17 09:52:09 -04:00
portalloc_test.go feat(app/webrtc): port allocator + FFmpeg arg builder 2026-04-17 09:52:09 -04:00
subsystem.go feat(webrtc): add app/webrtc subsystem + lifecycle hooks 2026-04-17 10:02:00 -04:00