Ingest stream slots: let standard streaming tools (WHIP) publish into encrypted Matrix calls #145
Labels
No labels
bug
duplicate
enhancement
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
nether/nether-voicebridge#145
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Follow-up to ADR 0002 (external stream publishers), Matrix side only.
Stream slots as designed in ADR 0002 hand a publisher a scoped Matrix login, so the publisher must run a MatrixRTC client such as Element Call. Standard streaming tools (e.g. OBS) speak WHIP instead, and an SFU-side ingress cannot apply Element Call's end-to-end media encryption, so they cannot reach encrypted calls that way.
Idea: an ingest kind of slot on the same publisher keys, identities, rate limits and audit trail, where the bridge terminates WHIP and publishes the stream itself as the slot's identity with the room's E2EE.
Needs video handling in the bridge's Matrix/LiveKit side (receive WHIP, republish with frame encryption). Nothing Discord-side: Discord stays audio-only.