FrameNinja has functions to animate OBS sources. It is useful to make streams look nicer and smoother
Animate things using FrameNinja
Imagine that this is our webcam
And we want to maximize it with scale animation.
We'll create a chain that will do it. You can learn how to use chains in this post.
Better set positional alignment to "Center". It is easier to move sources because in most of cases you don't need to calculate coords you need. You can set it with right-click on source and select Transform → Edit Transform
So we need to move our source to center and increase its size. There are two functions for that - "Move Source" and "Resize Source" We'll create a chain that will scale webcam.
"Move Source" function
Scene Items - select scene in the first select and sources you want to move in the second one. Here you can select two or more sources (for example, webcam and its border) Behavior - there are two options
- Move to the point - with this option, "Coords" mean point that source will be moved to
- Move by amount of pixels - with this option selected, you can move source from its current point. For example, (+300, -100) will move by 300 pixels to right and by 100 pixels to top. Zero or empty value means no move for this axis.
Coords - point or amount of pixels source needs to reach its destination Animation - animation type and its duration. Animations types are described below.
"Resize Source" function
Scene Item - select scene and source to resize Size - target width and height
Animation - animation type and its duration
How to get coords?
The best way is to move and resize source to needed size and position in OBS and then copy-paste coords and size into functions. To get it, right-click on the source and select Transform → Edit Transform
You will see this window
- Position - coords for "Move Source" function
- Size - size for "Resize Source" function
Animation speed remains the same for the entire animation.
Faster at the start and the end, slightly slower at the middle.
Crosses the destination and then returns back.
Bounces from the endpoint.
Fast at the start, slower at the end.