Skip to content

OBS Video Stream & Latency Improvements#482

Merged
x46085 merged 7 commits intomainfrom
feat/obs-video-stream
Feb 15, 2026
Merged

OBS Video Stream & Latency Improvements#482
x46085 merged 7 commits intomainfrom
feat/obs-video-stream

Conversation

@x46085
Copy link
Contributor

@x46085 x46085 commented Feb 13, 2026

Added an example of streaming from OBS -> Elodin-DB -> Editor

Screencast.from.2026-02-12.23-35-03.webm

Latency is not zero, but this was a good first attempt at some optimizations.

Other fixes:

  1. Editor performance -- Removed CPU rescaling, reuse GPU textures, non-blocking image channel (try_send), increased channel buffers
  2. Latency -- sync=false on the SRT receiver pipeline only, reduced FRAMES_BEFORE_CONNECT from 30 to 5
  3. Sequential delivery -- Added MsgLog::get_next_after() and modified handle_fixed_rate_msg_stream to deliver frames in order rather than sampling
  4. Timestamp monotonicity -- Added last_written_ts guard in elodinsink to prevent backward timestamps after reconnects
  5. Duplicate handler prevention -- Removed the Connecting state timeout to prevent creating multiple DB handlers
  6. LoS overlay -- Changed from simulation-timestamp-based to wall-clock-based detection so brief decode failures don't trigger the overlay

Note

Medium Risk
Moderate risk due to a large refactor of the editor’s video playback/decoding and new caching/seek logic that can impact memory use and playback correctness under live/reconnect conditions.

Overview
Adds end-to-end OBS Studio video streaming support via a new examples/video-stream flow (SRT receiver + test-pattern source) and documents the new video_stream schematic panel plus OBS setup guidance.

Reworks the editor’s video_stream implementation to be cache-driven (raw H.264 backfill via GetMsgs + live tail via FixedRateMsgStream), adds keyframe indexing + seek batches, reduces initial connect delay, and improves performance by reusing GPU textures and using non-blocking/buffered decoder channels.

Hardens elodinsink against reconnect edge cases by refreshing the DB base timestamp on first buffer and enforcing monotonic timestamps to prevent out-of-order frame writes.

Written by Cursor Bugbot for commit c547ba2. This will update automatically on new commits. Configure here.

@github-actions
Copy link
Contributor

📚 Documentation Preview Ready!

Your documentation changes have been deployed to:
🔗 https://docs.elodin.systems/preview/pr-482/

This preview will be automatically updated when you push new commits.
The preview will be removed when this PR is closed or merged.


Preview deployment started at Fri, 13 Feb 2026 07:40:58 GMT

github-actions bot added a commit that referenced this pull request Feb 13, 2026
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 245b170fe8

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@shanecelis shanecelis self-assigned this Feb 13, 2026
@x46085 x46085 force-pushed the feat/obs-video-stream branch from bbc49f8 to 5758556 Compare February 14, 2026 00:22
@github-actions
Copy link
Contributor

📚 Documentation Preview Ready!

Your documentation changes have been deployed to:
🔗 https://docs.elodin.systems/preview/pr-482/

This preview will be automatically updated when you push new commits.
The preview will be removed when this PR is closed or merged.


Preview deployment started at Sat, 14 Feb 2026 00:23:28 GMT

github-actions bot added a commit that referenced this pull request Feb 14, 2026
@github-actions
Copy link
Contributor

📚 Documentation Preview Ready!

Your documentation changes have been deployed to:
🔗 https://docs.elodin.systems/preview/pr-482/

This preview will be automatically updated when you push new commits.
The preview will be removed when this PR is closed or merged.


Preview deployment started at Sat, 14 Feb 2026 05:25:37 GMT

@github-actions
Copy link
Contributor

📚 Documentation Preview Ready!

Your documentation changes have been deployed to:
🔗 https://docs.elodin.systems/preview/pr-482/

This preview will be automatically updated when you push new commits.
The preview will be removed when this PR is closed or merged.


Preview deployment started at Sun, 15 Feb 2026 00:04:06 GMT

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 3 potential issues.

Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.

@github-actions
Copy link
Contributor

📚 Documentation Preview Ready!

Your documentation changes have been deployed to:
🔗 https://docs.elodin.systems/preview/pr-482/

This preview will be automatically updated when you push new commits.
The preview will be removed when this PR is closed or merged.


Preview deployment started at Sun, 15 Feb 2026 00:38:26 GMT

@x46085 x46085 merged commit c005ca5 into main Feb 15, 2026
14 checks passed
@x46085 x46085 deleted the feat/obs-video-stream branch February 15, 2026 00:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

Comments