Light Leak — effect skill for transitions

For AI agents: find the right skill in one call — curl -s "https://skills.varg.ai/api/search?q=<what the person wants>" returns the matching how-to page and the best skills with install commands, as markdown (Russian works too). Full index: https://skills.varg.ai/llms.txt. Every page has a markdown twin: add .md to its path. Before generating anything, show the person the options on the how-to page.

A warm wash of orange/red light drifts across and blows out the frame at the cut, then fades on B.

What it does

Built on Light Leak by HeyGen (HyperFrames), Apache-2.0. The write-up and recipes below are varg's.

Soft, organic colour flares (like film exposed to light) cover the cut and recede.

When: Memories, travel, weddings, retro or film-look edits, warm brand stories.

Watch out: Cold, clinical or tech content; leaks that are visibly shaped blobs.

Timing: 0.7–1.2 s (CapCut Light Leaks 1.0 s)

Also called: Light Leaks, Camera Glow, Light Beam, light leak transition, analog leak

In FFmpeg

Overlay a light-leak clip (stock or generated) in screen mode over a short crossfade:

ffmpeg -i a.mp4 -i b.mp4 -i leak.mp4 -filter_complex \
"[0:v]fps=30,settb=AVTB,format=yuv420p[a];[1:v]fps=30,settb=AVTB,format=yuv420p[b];\
 [a][b]xfade=transition=fade:duration=0.4:offset=4.6[x];\
 [2:v]fps=30,settb=AVTB,format=yuv420p,scale=1280:720,setpts=PTS-STARTPTS+4.2/TB[l];\
 [x][l]blend=all_mode=screen:shortest=0:eof_action=pass[v]" -map "[v]" out.mp4

(blend needs equal sizes and formats; a 1 s leak clip on black starts at 4.2 s.)

In HyperFrames

Shader light-leak from @hyperframes/shader-transitions placed at the cut (t = 4 s):

<div id="s1" class="scene" style="background:#0a0a0a"><video src="a.mp4" muted playsinline></video></div>
<div id="s2" class="scene" style="background:#0a0a0a"><video src="b.mp4" muted playsinline></video></div>
<script src="https://cdn.jsdelivr.net/npm/@hyperframes/shader-transitions/dist/index.global.js"></script>
<script>
  const tl = HyperShader.init({ bgColor: "#0a0a0a", scenes: ["s1", "s2"],
    transitions: [{ time: 4, shader: "light-leak", duration: 0.7 }] });
  window.__timelines = window.__timelines || {}; window.__timelines["main"] = tl;
</script>

Each .scene needs an explicit background-color equal to bgColor. Or install the ready block: npx hyperframes add light-leak. CSS overlay: organic-light-leak-overlay.

In Remotion

Light leak on the cut without shortening the timeline:

import {lightLeak} from '@remotion/effects/light-leak';
<TransitionSeries.Overlay durationInFrames={30}>
  <Solid width={1920} height={1080} effects={[lightLeak({seed: 3, hueShift: 0, progress: interpolate(useCurrentFrame(), [0, 30], [0, 1])})]} />
</TransitionSeries.Overlay>

(<LightLeak> from @remotion/light-leaks is deprecated in favour of this effect; it reveals in the first half of progress and retracts in the second.)

In CapCut

Transitions tab → Light Effect → Light Leaks, Camera Glow, Light Beam. Desktop: drag the tile onto the cut between two clips and set Duration in the right panel ("Apply to all" reuses it on every cut). Mobile: tap the small white square between clips, pick the transition, drag the duration slider, tap ✓. Tab labels and placement change between versions and regions.

Ready-made components

Where this comes from

Use when

Not for

Install

Example output

https://s3.varg.ai/how-to/previews/ac46538b4fe9/take-light-leak.mp4 — light-leak between two shots, with the timeline strip of the edit. Footage: Cosmos Laundromat (2015), (CC) Blender Foundation | gooseberry.blender.org, CC BY 4.0; Spring (2019), Andy Goralczyk / Blender Foundation (Blender Studio) | studio.blender.org, CC BY 4.0. (credit: Rendered by varg · Cosmos Laundromat (2015) + Spring (2019))

More transitions skills

Run the generation on varg

varg is one API key for the models these skills drive — Seedance 2.5, Kling 4, Veo 3.1, Wan 3, Nano Banana 2.1, GPT Image 2.5, ElevenLabs v4 and 200+ more — billed in credits, with a cost estimate before anything runs.