Skip to content

feat(dgw): stream reconnecting WebM sessions - #1942

Draft
irvingouj@Devolutions (irvingoujAtDevolution) wants to merge 1 commit into
refactor/video-streamer-tag-decoderfrom
feat/video-streamer-session-reconnect
Draft

feat(dgw): stream reconnecting WebM sessions#1942
irvingouj@Devolutions (irvingoujAtDevolution) wants to merge 1 commit into
refactor/video-streamer-tag-decoderfrom
feat/video-streamer-session-reconnect

Conversation

@irvingoujAtDevolution

@irvingoujAtDevolution irvingouj@Devolutions (irvingoujAtDevolution) commented Aug 21, 2026

Copy link
Copy Markdown
Contributor

Gateway WebM shadowing now consumes a recording event stream so clips can reconnect and change size.
The Start/Pull codes stay valid for existing clients.
Push disconnect marks the session ended so viewers receive StreamEnded.

Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com


Stack created with GitHub Stacks CLIGive Feedback 💬

@irvingoujAtDevolution

Copy link
Copy Markdown
Contributor Author

Implementation notes:

  • New stream_session path: recording events -> normalizer -> protocol.
  • Gateway stream_recording always uses that path for WebM. webm_stream remains for tests/examples.
  • Reconnect keeps the same watch stream state and appends a new clip.
  • handle_disconnect sets ended = true so viewers get StreamEnded instead of waiting for TTL remove.
  • Pipelined Pulls are queued. Extra Start while waiting is still rejected.
  • Legacy clients still speak Start=0 / Pull=1. New server messages are Segment started (1) and Stream ended (3).

Note

LLM-assisted content (no human feedback).

Gateway WebM shadowing now consumes a recording event stream so
clips can reconnect and change size. The Start/Pull codes stay
valid for existing clients. Push disconnect marks the session
ended so viewers receive StreamEnded.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant