How to duplicate instead of referencing sources when duplicating a scene

rihonobs

New Member
Hi,

If we copy and paste an item (a source) within a scene, we can paste as reference or paste a duplicate.

However, when duplicating an entire scene, such an option is not possible. Every source creates a reference in the new scene. This means if we change something in the new scene, the old scene will also be affected.

Is there a way to fix this?

I'm using version 32.0.1 x64 bit Win11. Thanks!
 

koala

Active Member
For many source types, it makes no sense to duplicate. It's increased resource demand, and for some it's even bad if you do it and it has unintended side effects. For example, you cannot point 2 duplicated sources to the same video capture device. Windows will allow access to only one of them, the other is black.

This is true for some other sources but not to this extend. What you should not duplicate is for example display capture, game capture, browser source, media source. So OBS prevents this in the first place. It could have a function to create duplicates for eligible sources and references for the others, but it seems there was no work put into such logic.

In case you want to add a filter to some source in one scene and a different filter to the same source in a different scene, the proper approach is not to create a duplicate of the source and attach different filters because of increased resource demand. Instead, you're supposed to put that source into a group and attach any filter to the group. In a different scene, add a new (duplicated) group and put a reference to the source into that new group. Then attach the different filters to the new group. This way the source itself isn't duplicated (no increased resource demand) and doesn't have any filter. But the different groups have different filters in your different scenes, so the same source is filtered differently.
 

rihonobs

New Member
Tks for replying. So how do I store my settings so that I can easily switch between them? I have to store them as separate SCENE COLLECTIONS? I have something like 25-30 of such scenarios. Up until now I've stored them like this:
1. Scene Collection >> where I group Scenes that are kind of similar but have some small tweaks
2. Scene: Those small variations
 

Suslik V

Active Member
So how do I store my settings so that I can easily switch between them?
If you need seamless switch during the streaming event - all should be stored in the same Scene Collection.
But take in mind, current set of the scenes (Scene Collection) is loaded into the memory and all sources from it are running in the background no matter what is displayed on the screen right now (or in terms of OBS goes to "output").

Internally the Scene is a dummy Source that is a "container" for other real Sources.
Details of how the sources and duplication works are in this post (more detailed description of what @koala said):
 

rihonobs

New Member
Thanks for the reply & the advice.

i want to have multiple scenes, each scene use the same sources (videos, photos), but they move a little compared to the original scene, and may have some filters or changed blending mode.

I don't need to switch between scenes during streaming event. Once a scene is loaded, it usually stay until the end of my recording session. However, I have something like 20-30 scenes. And i often duplicate an existing scene to make a new one, moving the sources just a few pixels in the new scene.

So you are suggesting that instead of storing different scenes, which cannot duplicate sources, I should store them as scene collections, right?

This means that when I duplicate a scene collection, all items in it will be duplicated, not referenced?
If so then this is just simply what I want. (Although it's annoying to have 20-30 scene collections).
 

Suslik V

Active Member
...when I duplicate a scene collection, all items in it will be duplicated, not referenced?
Yes. Full copy.
New .json file will be created (this file contains data related to sources; can be accessed from main menu File > Show Settings Folder , then navigate to the folders "basic\scenes"). Don't forget to make backup copies of the scene collections (at least time to time use main menu Scene Collection > Export ).

Some OBS settings are stored in Profiles (not in Scene Collections). But some settings, that many moons ago stored exclusively in a Profile only storage (the Canvas size, for example) nowadays can be stored in the Scene Collections too. So, general recommendation is to have pairs of the profile and scene collection and change both the profile and scene collection. Details: https://github.com/obsproject/obs-studio/pull/9910
 
Top