Skip to content

PAR Anamorphic

jmalmsten edited this page May 8, 2026 · 2 revisions

Anamorphic / Non-square Pixel Aspect Ratio (PAR)

v0.7.1 Added the ability to use non-square pixel aspect ratio. This is to maximize the resolution for aspect ratios that are not the same as the HDMI monitor.

How to use:

In the added section under hardware constants. The user can input two floats, x:y. These are then used to squeeze or squash the image that gets rendered on the hdmi screen. In post you can then unsqueeze the image to restore proper proportions of the contents at the desired aspect ratio and resolution.

Example, 2.37:1 Cinemascope:

Assuming the screen is using 1920x1080 square pixels. That's normally an aspect ratio of 16:9 or 1.78:1. If you use a PAR of 4:3, or 1.33:1. The image will be squished horizontally 1.33x. A perfect circle ends up being a slightly slimmer oval. After exposure. In post, you then unsqueeze the image by the same amount and the ellipse goes back to being a perfect circle and the whole monitor stretches to accommodate an exposed image of roughly 21:9 or 2.37:1 cinemascope. The upshot here is that you get to use all the pixels of the monitor for this. Just like you get to use the full height of a 4 perf negative when using anamorphic glass.

Example, 1.43:1 IMAX:

The squeeze can be done the other way as well. Squeezing more height into the 16:9 screen. The perfect circle would then be seen as a squat oval. For example. If you use a PAR of 1:1.25. After unsqueezing the result. The monitor area would be closer to 1.43:1 aka 15 perf IMAX ratio.

Of course. You still have to crop out what's outside the monitors image.

Monitoring the squeeze/unsqueeze

To make things simpler during setup and planning. I have added a button that applies the PAR to the preview window. This is however only applied during preview. The TIFF's themselves are kept at the cameras resolution set elsewhere, with square pixels.

ProRes Exports

To make the non-square PAR easier to handle in post, I have also added the PAR to the ProRes metadata during its render. The file rendered will still use the image's resolution set in the hardware constants. But if the media player or video editing suite can read the PAR metadata, it will be unsqueezed at playback.

Comparison to real world anamorphic glass:

In terms of real world optics. The whole physical VOP contraption ends up being the taking lens. And the anamorphic adapter is in the 3D rendering.

Concerning Bokeh:

As this is done in the 3D world without glass. If you keep the monitor in focus with the Pi Camera's lens and no extra optical filters. You wouldn't get any "fun" artefacts from this method. If you deliberately defocus the lens. You get the regular circular bokeh during shooting and when unsqeezed. The bokeh goes fat for wider aspect ratios and tall for taller aspect ratios. This is essentially the opposite of how real world anamorphic optics reacts. But I don't have a good way to make it fit with more realism.

Concerning flares:

As this squeeze and unsqueeze is not done optically. We also don't get the flares that an anamorphic lens are known to produce. Is this good or bad? Up to the user to decide. But if you really want flares. There are ways to bend light to produce them. Look up lens mods people do with fishing lines and scratched glass.

Can we blend PARs?

Well, The image can only be desqueezed for one PAR. But there's technically nothing stopping you from doing multiple exposures with different PAR's for each exposure. Why would you want to do that? That's entirely up to you.

Clone this wiki locally