Pan/zoom on images possible?

I’m trying to figure out a way to work with a jpeg that would be the opposite of what the PIP layer does with ‘shrink’ etc. I’d like to be able to make an image go live, then activate a variant that goes from one x/y and/or % setting to another, so that it looks like we’re zooming in on a part of the photo. Is this possible in a way I haven’t figured out?

I use a lot of movie stills on my live-stream show and this would be a great effect to be able to use.



Minus-Values at the PIP–window-layer. With crop you can crop the image to an area inside of the PGM.

1 Like

Just tried this. Super! Thanks.

You’re welcome. PIP-Window is full of power. I want to invite you to also play around with it. Suddenly I decided to create a document just made of PIP-Window layers and it changed my way of creating documents forever!

I’m experimenting with the PIP Window Layer, to punch-in on a large jpg. Is there a way to smoothly move from one position/variant to another? I’m getting straight cuts.

Could you please post a screenshot from the PIP-Window settings? (variant 1, variant 2)

JoPhi is right, PIP window is very powerful but for what you want to accomplish the best way is using a Follow layer applied to a source bigger than the document size.

See the sample here:

Open the remote control and you’ll be able to zoom/move your view to 9 different zones of the map using HTTP calls inside the Automation layer.

The 100% command will zoom out to the entire map.
The Animation ON/OFF button will set an automatic zoom out/zoom in animation when you move from one zone to the other. This is set to 3 seconds delay when active but you can change it by changing the sleep time in the Animation Delay automation layer.

The placers on the bottom of the Layer Stack tells you which variant is active.

Note: the follow layer here need to be set to Manual Tracking mode. Usually this layer is expected to work on active sources like cameras. If it doesn’t start working automatically I’ve added a command to activate the still picture source via HTTP API under the “Automation layer/Force Source On” and set this layer variant to go Live at the Show start…

This also works on video sources bigger than the .tvshow size.


P.S.: if you want to move the zoom manually, once you have zoomed in, you can just mouse-click into the Follow layer preview window and the focus will smoothly move the view to the new coordinates.
Changing the Max Zoom parameter of the Follow layer will set the magnifying factor.

Wow, Matteo; this is really cool. I’m not clear on what the automation is doing, but the result is brilliant. In my own testing with the Follow Layer, every variant starts from showing the full image, then zooms into the specified region. I can’t get it move directly from one position to another, unless I do it manually by clicking on the preview window.

Hi Jason, have you tried using the remote control embedded into the project?

OK, just tried that out and it’s very nice. I’m trying to visualize how to integrate this into an already complex project. I need to have a single remote button that cycles through all the positions. The other unknown is if the M1 Mac Mini can handle chroma keying a 4K image. I tried it last year without success, but it’s worth another shot.

Basically the automation uses HTTP API calls to the Follow layer moving the focus to the desired coordinates and also specifiying the zoom factor, so instead of changing from one variant to another (which makes the Follow to start from 100% and then zoom in) it will just make the same variant to move the focus like you manually do when you click into the preview window, thus making the “moving” effect…

Never tried a chroma key on a 4k project with MacMini… I have one, will try.

About having a single button cycling, I guess you can make a single automation script containing the desired sequence of HTTP API calls to the follow layer and add a “sleep(X)” function between one call and the other…

I thought Sleep would just wait the specified time. Can it wait until the button is pushed again to proceed to the next command?

Oh no sorry… I thought you wanted to go from one position to another automatically after you’ve pushed the button…

If you need to go from one position to another in a sequence by always pressing the same button then you could do it by reading the status of the follow using the ifLayerData function…

I’ll send you an example tomorrow morning (evening time in Italy now)…

1 Like

Here you go Jason: Dropbox - Pan Zoom Cycling.tvshow - Simplify your life

Open the remote control surface and you’ll see 2 main buttons: one cycling the pan/zoom horizontally and the other one vertically. The other 2 buttons will swap you from 100% to zoom to center.
Of course the 2 cycling buttons will work only when you are in “zoomed” mode…

I love the way you see mimoLive. :clap::clap::clap::clap::clap:

By the way, you could implement some kind of bit switching logic, to avoid all the sleeps. The combination of the bit-logic is then the “go to”.

Hi Johannes, I’d love to! Do you have some samples to share?

A pity, no example which is out of the box compatible with a “new” document in mimoLive (because of unique layer and variant ids).

Basically you use x layers which represent the bits (true/false). Then, an automation layer which represents the status 0 to X variants.

The logic is switching the status layer, so when a button is active or not, it’s status is true or false. The combination leads to the final script.

3 bits. Each of the lines are represented by one script variant:
0: 000
1: 001
2: 010
3: 011
and so on…

The logic script checks, which layer-variant of the status-layer should be taken. Finally this script is then in use.

Because of the crazy if statements and the static id’s I use mimoURLscripter instead, which delivers the results automatically. There is also automatic naming, so no mess around with id’s and API endpoints.

I’ll give it a try thanks!