-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add RFC: Sophisticated Multiviewer Configuration #59
base: master
Are you sure you want to change the base?
Add RFC: Sophisticated Multiviewer Configuration #59
Conversation
Why should it be part of OBS itself and not be an OBS plugin like Durchblick and Source Dock can provide you customizable multiviews? |
Multiview is a feature of OBS, I don't see any issues with striving to improve it. |
Noting down a few thoughts I have while I'm here There have been efforts to move non-global things out of the main Settings window. I think Multiviews make sense as their own dedicated window, which is an approach we're looking to take with both Scene Collections and Profiles in the future. Matching multiviews to the canvas resolution as noted in the RFC makes the most sense. Mixing ratios within a multiview will overcomplicate both implementation and UI. However, one potential concern is that canvas resolution is currently associated with Profiles. Following from the above, we'd need to determine where this data lives. The current multiview simply grabs the first While building custom layouts is nice, we should retain presets as options. Selecting a preset would automate a layout definition the same way building it manually would. As far as placement goes, we should mimic the existing multiview system of simply using the order of entries to place them into spots left to right, top to bottom. This would allow easily switching between different layouts. If a user edits their layout or selects a preset with a lower slot total, we should retain the additional entries in case they increase the number of slots again, to avoid data loss. I am not clear about what the merge/break boxes idea solves As Exeldro linked above, there is a plugin called Durchblick that offers a customizable multiview utilizing a grid system. While that approach works, it is a bit restrictive in terms of possible layouts compared to some hardware switchers. I've built a configurable multiview system as an interactable browser source, I'll leave some of my notes on suggestions/ideas here based off my experience creating that. obs64_dSdXzVXHLF.mp4Spec Thoughts UI visualization is going to be difficult, as Qt does not have any systems for maintaining aspect ratio of widgets specifically. We'd probably have to just calculate widget geometry sizes so we'd want to ensure it's done in a way that can rerun on window resize (Or we restrict the Multiview management window to a fixed size) Each For example, given a multiview with dimensions of 1920x1080 a slot with a ratio factor of 1 would be 1920 x 1080 and full frame.
A secondary scaling factor
|
Multiviewers already exist, and a lot of people use it. If the feature exists already natively I'd love to see improvements to it. Especially for the "population at large" plugins like those are a bit... out of their depth to get up & running.
Moving it out into its own settings window is perfectly fine! So long as the configuration exists somewhere with more detail then it does currently.
I agree with both tying the data to scene collections, as well as moving canvas resolution to the scene collection data.
Some presets sound good, but I think by having customizable layouts you can lower the amount of presets required (i.e horizontal + vertical 2+8 and not much else preset wise off the top of my head but I will do more thinking on this). The Dyvi has no presets and is confusing to learn from the onset, so I understand that bit. However being locked to only presets like Blackmagic (or old OBS) is incredibly frustrating and from my understanding Grass Valley and Ross switchers tend to have 2-3 presets available for selection as you go into the multiviewer configuration under a "reset to defaults" option.
This is along the lines of what I meant by having some level of sane defaults, no real qualms but the ability to put things "out of order" will be very important for anyone using it at a more robust level.
The intention here was to create a (potentially) more simplified method of what you had created in your browser source multiviewer, essentially operating like a spreadsheet. This is also where my add row idea comes from. The AR calculation was a bit confusing for some users at a glance, and this method actually comes also from the new Multiviewer configuration that Blackmagic has implemented for the Constellation series. In Constellations you can break up and re-merge some blocks to either add more or less slots. This would allow for vertical boxes to be created more easily, as well as being able to do weird stuff like the ones where you have 2 half-width boxes on top, 1 half-width box on the bottom left and then 4 1/4-width boxes in the bottom right quadrant. Having done a lot of pre-prod in spreadsheets for my multiviewers so I know what I need to do when I get on-site, its way faster to do it like this than the way you had it in your browser source or in pretty much anyway I've ever had to build a multiviewer in any switcher, which is why I think there's a lot to learn from that paradigm. For all the rough-edges and complaints I've had about Blackmagic products and ATEM's, building some multiviewers on Constellations last week at PAX was incredibly simple with this merge/break paradigm. |
I missed this in my earlier comment but restricting the multiview configuration window to a fixed size is standard across all other hardware switchers (likely for the reasons you stated Warchamp) as far as I remember. |
Hi! A lot of switchers, already supporting this kind of feature like BM Atem Studio series. |
Hi! |
This is an RFC, which means it's still an open discussion and the design is not even finalized yet. There is no expected timeframe to these changes being accepted, if they are even accepted at all. Please ensure comments are kept on-topic in the future, we strongly discourage comments asking "when will this be added" or anything that isn't direct discussion of the RFC itself. |
Description
This RFC is a proposal for an overhauled UI around managing multiviewers and their configuration in an effort to modernize and streamline the flow that a user would take to create a multiview, but also allowing multiple multiviewers like one would expect from other products.
Motivation and Context
The current multiviewer configuration is relatively lacking compared to other switcher solutions in the broadcast space.
Link to RFC