osn-replay-buffer: invoke output handler to save replays#1689
Merged
sandboxcoder merged 3 commits intostagingfrom May 6, 2026
Merged
osn-replay-buffer: invoke output handler to save replays#1689sandboxcoder merged 3 commits intostagingfrom
sandboxcoder merged 3 commits intostagingfrom
Conversation
* makes test more reliable resulting in much less replay buffer failures on the slower CI machines * follows similar pattern used by OBS - ReplayBufferSave
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates the replay-buffer save implementation to invoke the underlying OBS output proc handler directly (rather than routing through a hotkey callback), with the goal of making replay saves—and the corresponding unit test—more reliable on slower CI machines. It also enables the advanced replay-buffer tests on macOS by removing the Darwin skip.
Changes:
- Reworked
IReplayBuffer::Saveto locate the replay buffer output and call its proc handler"save". - Removed macOS skips for the two advanced replay-buffer start/save test cases.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| tests/osn-tests/src/test_osn_advanced_replayBuffer.ts | Enables advanced replay-buffer tests on macOS by removing Darwin skips. |
| obs-studio-server/source/osn-replay-buffer.cpp | Implements replay save via the OBS output proc handler ("save") on the replay buffer output instance. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
aleksandr-voitenko
approved these changes
May 6, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
The previous approach can silently do nothing if:
OBS_HOTKEY_REGISTERER_OUTPUT) doesn't matchMotivation and Context
Improve consistency of replay buffer save unit test
How Has This Been Tested?
Ran it on build machine a lot of times and did not observe this test fail. Also tested in Desktop and verified replays save properly.
Types of changes
Checklist: