Linked Canvases
One thing I feel is currently missing from Aitum Stream Suite is a way to
link canvases together.
With multiple canvases, for example a 16:9 main canvas and a 9:16 vertical canvas, I would like to be able to switch scenes on the main canvas and have the corresponding scene automatically switch on the linked canvas.
For example:
Main Canvas<br> ├── Starting Soon<br> ├── Gameplay<br> ├── Just Chatting<br> └── Ending<br><br>Vertical Canvas<br> ├── Starting Soon<br> ├── Gameplay<br> ├── Just Chatting<br> └── Ending<br>
If the Main Canvas switches to Gameplay, the linked Vertical Canvas would automatically switch to its own Gameplay scene.
The important part is that the scenes don't have to be identical. Each canvas can have a completely different layout, while scenes with the same name represent the same "state".
I think this would be especially useful for multistreaming between platforms like Twitch and TikTok. You could have completely independent layouts for each platform, while only having to control the main canvas.
I built a workaround for this
I actually ended up implementing this myself:
https://github.com/nicolas-meilan/aitum-obs-canvas-synq
My solution mirrors the scenes between the different canvases and uses the scene name to determine which scene should be activated on the other canvas.
This gives me a lot of freedom. I can completely redesign the vertical scenes without having to manually synchronize scene changes every time.
I also use it together with my Twitch bot:
https://github.com/nicolas-meilan/twitchBot
This allows my bot to trigger scene changes on the main canvas, while the other canvases automatically follow.
The downside is that my implementation has to rely on
OBS WebSocket to monitor the scene changes and synchronize them.
That's where I think this could fit really nicely into Stream Suite itself. Since Stream Suite already manages multiple canvases, implementing the synchronization natively could be much more robust and reliable than having users rely on an external Python script and OBS WebSocket.
Something as simple as being able to define:
Main Canvas<br> ↓ linked to<br>Vertical Canvas<br>
and synchronize scenes based on their names would already solve the problem.
I think this is one of those things that becomes increasingly important as you start using multiple canvases for different platforms. The ability to have independent layouts while treating them as a single stream from a scene-management perspective would make multistreaming considerably easier.
Just wanted to share the idea since I couldn't find a native way to do this currently, and I thought the workaround might also demonstrate why having this functionality directly in Stream Suite could be useful.