You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
It is nearly impossible to set up a video mask without significant re-rendering at a large enough scale to fit flexibly on the source being masked.
Describe the solution you'd like
When attempting to create a video mask for a source, it would be lovely to have control of the mask's position, scale, and more, similar to how the shape mask has "Scene View Transform" options.
Describe alternatives you've considered
An alternative option, may be to allow the user to "pin" the transforms of the source mask to the mask effect. So that when transforming the mask itself, from within the viewport of OBS, it would automatically affect the source being masked.
As an even more powerful option, being able to read / parse the transform of the mask, and live-applying its entire transform to the source being masked, would be very very useful.
Thank you for the feature request. I've been contemplating something very similar to this issue for a while, and I am planning on coming up with a solution for the next release. I'll use this issue to track progress, and will post some notes here as it gets done (along with links to builds if you're interested in testing it out).
Hi @VoltaicGRiD- I'm finally able to start working on this.
A few things to note:
Unfortunately, a filter has no access to transformation data of a source, as transformation data is tied between a source and the scene that it is in. I'd love to be able to scale/move things in the mask based on the source's transformation, but as of now, this is impossible in OBS.
One way to do what you want to do- put your source in a scene, and use that scene as the source mask. That way any changes you make to the size/position of the source within the scene will be reflected.
The other option, is as you said, to implement something similar to Scene View Transform, and this is what I'm planning on doing. However, all of the scaling parameters for the masking source would be based on the native size of that source.
I am planning on implementing the following:
Add a dropdown that lets the user select from Stretch to Fit (this is how it currently works), Manual Placement
If the user selects Manual Placement, it would add some additional fields:
Scale (by percent, width or height)
Position
Boundary dropdown with options for: Transparent, Solid, Last Pixel, Tile, or Mirror. This is how to handle pixels that are outside of the scaled mask.
I think this will accomplish everything you are looking to do, and then some.
Is your feature request related to a problem? Please describe.
It is nearly impossible to set up a video mask without significant re-rendering at a large enough scale to fit flexibly on the source being masked.
Describe the solution you'd like
When attempting to create a video mask for a source, it would be lovely to have control of the mask's position, scale, and more, similar to how the shape mask has "Scene View Transform" options.
Describe alternatives you've considered
An alternative option, may be to allow the user to "pin" the transforms of the source mask to the mask effect. So that when transforming the mask itself, from within the viewport of OBS, it would automatically affect the source being masked.
As an even more powerful option, being able to read / parse the transform of the mask, and live-applying its entire transform to the source being masked, would be very very useful.
Additional context
None that I can think of, I've linked the file I'm attempting to use as a source mask for a webcam; where I discovered I am having this issue.
https://drive.google.com/file/d/1mR8atbqleow0Trf6nUQ20Y3WvKhTN71b/view?usp=sharing
The text was updated successfully, but these errors were encountered: