-
-
Notifications
You must be signed in to change notification settings - Fork 132
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 virtual video.canvas for positioning video elements independently of the frame size. #3656
Conversation
@toots: Some quick remarks (unprioritized, just what comes to mind):
For the rest, we’ll have to experiment ;-) |
Thanks for these this is really helpful! I agree that following the web practices will make it familiar to most people. However, it's important to remember, in web, the viewport increases with the screen but the pixels are not scaled up and down. Typically, In our case, we are in fact scaling pixels down from a
I'm not sure I've seen anything like this. OBS has a notion of virtual vs. actual frame size, which is where I got the idea from originally but it's a visual applicaiton.
Definitely.
Yes. The default value I have put is my guess as to what a base size should be from this advanced video example I'm working at cleaning up.
I've done:
I'm happy with it.
I've added the most common one:
This is out of the scope of this PR, this tool is for downsampling only.
Same here.
Yeah! |
4625ac0
to
b6b8d19
Compare
This PR adds a notion of virtual vs. actual video canvas that makes it possible to add video elements independently of the frame size.
Since there is no way of knowing how many pixel videos will have in the future, the general idea is to create a conversion from a higher number of virtual pixels to a smaller number of actual pixels. This is done via
video.canvas.make
.We also add a suggested syntactic sugar:
x@y = y(x)
to make it more readable!Then, we define standard canvas based on a
10k
virtual canvas for720p
,1080p
and4k
resolutions. Those can be used as follows:You can then change the actual resolution by using a different canvas on the top of the script!