Open
Conversation
Contributor
I do think the overall idea has some merit --although it might increase encoding load for a lot of users as it means separating the recording and replay buffer encoders, and it needs to be thoroughly tested--, but if it is to be implemented, it should make use of the same output selector mechanism as the virtualcam, in a button in the controls docks. |
Author
|
Good point — I'll rework this to use a config button in the controls dock with the same output selector pattern as the virtual camera. Will push an updated version. |
Adds the ability to configure the replay buffer to capture from a specific scene instead of the program output. This is useful for users who want clean gameplay clips without overlays, webcams, or other sources that are part of their streaming scene. Mirrors the existing virtual camera output selection pattern: - Gear button in the controls dock next to the replay buffer - Configuration dialog to select Program or a specific scene - Separate obs_view and video encoder when a scene is selected - Falls back to the default recording encoder when set to Program The replay buffer view and encoder are created on start and torn down on stop to avoid unnecessary rendering when idle.
43fa6fb to
8a6902d
Compare
SimpleOutput and AdvancedOutput cannot access OBSBasic private members directly since only BasicOutputHandler is declared as a friend. Move the replay buffer scene override setup into a shared method on BasicOutputHandler to fix compilation on clang.
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
Adds an option to select a specific scene for the replay buffer output, independent of the current program scene. When configured, the replay buffer uses a dedicated
obs_view_tand video encoder to render and encode from the selected scene, while streaming continues from the program output as normal.A new Scene dropdown appears in the replay buffer section of Output settings (both Simple and Advanced modes). The default value, (Current Scene), preserves existing behavior.
Motivation and Context
Some users want their replay buffer clips to contain clean gameplay footage without overlays, face cams, or other sources that are part of their streaming scene. Currently the replay buffer always encodes the program output, so the only workaround is to manually switch scenes before saving a replay — which defeats the purpose of instant replay.
This feature lets users designate a scene (e.g. a game-capture-only scene) for replays while streaming with their full production layout.
How Has This Been Tested?
Types of changes
Checklist
masterbranch