Nodes/DJZ-Nodes/Anamorphic Lens Effect
ComfyUI Node

Anamorphic Lens Effect

Renting a $50k lens from a dropdown

By MushroomFleet·Created 2 years ago·Updated 5 months ago· 78
Anamorphic Lens Effect
  • images
  • IMAGE
squeeze_ratio1.33
flare_intensity0.30
flare_length0.50
flare_color0.70
bokeh_amount0.00
bokeh_elliptical0.50
chromatic_aberration0.00

Anamorphic is the "why does this movie look like a movie" look: the oval bokeh, the horizontal lens flares streaking across the frame, the subtle barrel distortion at the edges. Real anamorphic lenses cost a small fortune and a camera department to rig; this node fakes the whole package in software, frame by frame, so your AI video can have the aesthetic without the rental bill.

It's part of the DJZ cinematic-effects family (same corner of the pack as PanavisionLens and Technicolor3Strip - this author is very into "make generated video look shot-on-film"). Everything happens in one pass on your images batch, and you get a single IMAGE back. Seven knobs, but you'll touch maybe three.

The one that does the heavy lifting is squeeze_ratio (1.0–2.0, default 1.33). Real anamorphic lenses squeeze the image horizontally onto the film and the projector unsqueezes it - this node simulates that horizontal squeeze, which is what produces the wider, more cinematic aspect and the characteristically stretched in-frame detail. Classic values: 1.33x for 2:1, 2.0x for 2.39:1 widescreen. If you change nothing else, change this.

Then the fun stuff: flare_intensity, flare_length, and flare_color (0–1) build the horizontal streak flares - the signature anamorphic artifact. flare_color runs cool-to-warm, so 0.2 gives you that blue-green streak and 0.8 goes golden. The bokeh controls (bokeh_amount for strength, bokeh_elliptical for how stretched the blur is) fake the oval background blur, and chromatic_aberration adds the blue/red fringing on high-contrast edges. There's a sensible preset stack: for a classic look, squeeze 1.33–2.0, flare intensity ~0.3, and a whisper of CA (0.1–0.2). Keep bokeh_elliptical roughly matched to your squeeze_ratio or the fake starts to look like a glitch rather than a lens.

The honest critique: it's an overlay effect, not a physics simulation. The flare is procedural (it doesn't know where your bright lights are the way a real optical streak would), and the bokeh is a fixed radial blur rather than depth-aware, so it blurs everything roughly equally. That's fine - it's a look, and for short AI video clips the "vibe is right" bar is much lower than the "optically correct" bar. Where it genuinely shines is doing 300 frames of consistent cinematic flavor that would take forever to keyframe manually.

No model files, no downloads, no GPU guilt - it's pure tensor math, so it'll run on integrated graphics while your VRAM is busy elsewhere. Install is the usual DJZ story: ComfyUI Manager → "DJZ-Nodes", or clone the repo and pip install -r requirements.txt (heavy requirements file because the pack covers audio, video, 3D, and more - you're getting 75+ nodes whether you wanted them or not).

One thing to remember: this runs on whatever resolution your frames are, so feed it before final encode but after upscaling if you want the effect to sample at full quality. And if you want the real anamorphic aspect with black bars baked in, pair it with BlackBarsV1 (letterbox) after, or do the crop in your video encoder.

Categoryimage/effects

Inputs (8)

NameTypeDefaultDescription
imagesIMAGE
squeeze_ratioFLOAT1.331–2
flare_intensityFLOAT0.300–1
flare_lengthFLOAT0.500.1–1
flare_colorFLOAT0.700–1
bokeh_amountFLOAT0.000–1
bokeh_ellipticalFLOAT0.500–1
chromatic_aberrationFLOAT0.000–1

Outputs (1)

NameTypeDescription
IMAGEIMAGE