---
title: "10 retro film looks for video ads, with a tested Claude prompt for each"
description: "Each of these makes a digital clip look like it came off real film stock, from fine 35mm grain to a scratched silent-era print."
url: https://www.recharm.com/effects/lists/retro-film-looks-for-video-ads
---

# 10 retro film looks for video ads

Each of these makes a digital clip look like it came off real film stock, from fine 35mm grain to a scratched silent-era print.

35mm film look: The cool blue-white holographic backdrop settles into a soft warm cream-gray, the brightest highlights ease down with a faint red-orange glow, the purple serum mutes a little and a fine grain shimmers over the orbit, like a 35mm print.

## [1. 35mm film look](https://www.recharm.com/effects/35mm-film-look)

The cool blue-white holographic backdrop settles into a soft warm cream-gray, the brightest highlights ease down with a faint red-orange glow, the purple serum mutes a little and a fine grain shimmers over the orbit, like a 35mm print.

```
Give all of input.mp4 a 35mm film look from the first frame to the last: lifted blacks, rolled-off warm highlights, slightly muted color, a soft red-orange glow around the brightest areas and fine moving grain. Use ffmpeg. 1) Grade with per-channel tone curves (input/output points, 0-1): red 0/0.05 0.25/0.22 0.5/0.50 0.75/0.76 1/0.88, green 0/0.05 0.25/0.21 0.5/0.48 0.75/0.73 1/0.85, blue 0/0.07 0.25/0.22 0.5/0.47 0.75/0.70 1/0.80, then eq=saturation=0.8. 2) Halation: from that graded picture (in gbrp), take a copy, keep only brightness 0.80-0.92 with colorlevels (rimin/gimin/bimin=0.80, rimax/gimax/bimax=0.92), blur it with gblur=sigma=14, tint it red-orange with colorchannelmixer (each output channel the average of R, G and B times 1.0 for red, 0.3 for green, 0.09 for blue), and screen it back over the graded picture at 0.5 opacity. 3) Grain: make a mid-gray (0x808080) layer at half the video's size (270x480) at 30fps, add fresh brightness noise every frame (noise=c0s=7:c0f=t after format=yuv420p), scale it back up with bicubic scaling and merge it with blend=all_mode=grainmerge:shortest=1 so the grain doesn't shift the colors. The cool blue-white backdrop (around RGB 188, 194, 206) should come out a warm cream-gray (around RGB 184, 182, 177), nothing should be brighter than about RGB 210, 210, 210 and the overall brightness should drop to about 94% of the original. Don't add any text (if you ever do, draw it with Pillow, not ffmpeg's drawtext). Keep the size (540x960), 30fps, the 6 second length and the audio. Encode H.264 yuv420p and save it as output.mp4.
```

[Full guide: settings and the tested ffmpeg command](https://www.recharm.com/effects/35mm-film-look)

Super 8 film: The silvery backdrop turns honey-gold and soft under heavy grain, the brightness pulses unevenly from frame to frame and the picture sits inside a black border with rounded corners, like a home movie on a projector.

## [2. Super 8 film](https://www.recharm.com/effects/super-8-film)

The silvery backdrop turns honey-gold and soft under heavy grain, the brightness pulses unevenly from frame to frame and the picture sits inside a black border with rounded corners, like a home movie on a projector.

```
Make input.mp4 look like Super 8 home-movie film from the first frame to the last. 1) With ffmpeg, grade it warm: per-channel tone curves (input/output points, 0-1) red 0/0.06 0.5/0.60 1/0.97, green 0/0.04 0.5/0.50 1/0.90, blue 0/0.03 0.5/0.36 1/0.72 (curves=r='0/0.06 0.5/0.60 1/0.97':g='0/0.04 0.5/0.50 1/0.90':b='0/0.03 0.5/0.36 1/0.72'), then eq=saturation=1.15, soften it by scaling down to half size and back up to 540x960 with bicubic, add vignette=angle=0.5 and moving grain noise=alls=14:allf=t+u. 2) Then, per frame with numpy (frame n, t = n/30 seconds): multiply the brightness by a flicker gain of 1 + 0.07 * (0.6*sin(2*pi*4.7*t) + 0.4*sin(2*pi*11.3*t + 1.0)), so frames are up to 7% brighter or darker; shift the picture by dx = round(2*sin(2*pi*1.3*t)) and dy = round(2*sin(2*pi*0.9*t + 2.0)) pixels for a gate wobble; and multiply it by a gate mask: a white rounded rectangle on black drawn with Pillow, inset 16 pixels from every edge (3% of the width), corner radius 49 pixels (9% of the width), blurred with a 4 pixel Gaussian blur, so the picture sits in a black border with rounded corners. The cool blue-white backdrop (around RGB 192, 203, 216) should come out honey-gold (around RGB 157, 148, 110), and the frame corners pure black. Don't add any text (if you ever do, draw it with Pillow, not ffmpeg's drawtext). Keep the size (540x960), 30fps, the 6 second length and the audio. Encode H.264 yuv420p and save it as output.mp4.
```

[Full guide: settings and the tested script](https://www.recharm.com/effects/super-8-film)

Film grain: A fine gray speckle that shifts every frame sits over the bottle and backdrop, while the purple and the holographic colors stay exactly as they were.

## [3. Film grain](https://www.recharm.com/effects/film-grain)

A fine gray speckle that shifts every frame sits over the bottle and backdrop, while the purple and the holographic colors stay exactly as they were.

```
Add moving film grain to all of input.mp4, from the first frame to the last, without changing its colors. Use ffmpeg: make a mid-gray layer (0x808080) at half the video's size (270x480 for a 540x960 clip) and 30fps, add fresh noise to its brightness channel only on every frame (noise=c0s=18:c0f=t, after format=yuv420p), scale it back up to the video's size with bicubic scaling so each speck is about 2 pixels, and add it to the footage with blend=all_mode=grainmerge:shortest=1 so mid-gray changes nothing. The grain must be gray, not colored, and the overall brightness must stay the same. Keep the size, 30fps, the 6-second length and the audio. Save it as output.mp4.
```

[Full guide: settings and the tested ffmpeg command](https://www.recharm.com/effects/film-grain)

70s film look: The cool silver backdrop turns a dusty amber-tan, the black dropper cap fades to warm brown, the white label dulls to cream and a fine grain crawls over the orbit, like a faded 1970s film print.

## [4. 70s film look](https://www.recharm.com/effects/70s-film-look)

The cool silver backdrop turns a dusty amber-tan, the black dropper cap fades to warm brown, the white label dulls to cream and a fine grain crawls over the orbit, like a faded 1970s film print.

```
Give all of input.mp4 a 1970s film look from the first frame to the last: warm brown-orange color, faded blacks, soft highlights and film grain. Using ffmpeg, apply per-channel tone curves (input/output points, 0-1): red 0/0.10 0.5/0.64 1/0.98, green 0/0.08 0.5/0.47 1/0.82, blue 0/0.05 0.5/0.30 1/0.58 (curves=r='0/0.10 0.5/0.64 1/0.98':g='0/0.08 0.5/0.47 1/0.82':b='0/0.05 0.5/0.30 1/0.58'). Then lower the saturation to 0.75 (eq=saturation=0.75), add moving grain (noise=alls=8:allf=t) and a light vignette (vignette=angle=0.4). The cool blue-white backdrop (around RGB 193, 201, 214) should come out a dusty amber-tan (around RGB 180, 150, 112), nothing should be darker than about RGB 25, 25, 25 or brighter than about 200, and the overall brightness should drop to roughly 80% of the original. Don't add any text (if you ever do, draw it with Pillow, not ffmpeg's drawtext). Keep the size (540x960), 30fps, the 6 second length and the audio. Encode H.264 yuv420p and save it as output.mp4.
```

[Full guide: settings and the tested ffmpeg command](https://www.recharm.com/effects/70s-film-look)

1950s color film look: The pale silver backdrop turns a soft cyan with its rainbow streaks glowing coral-red, the white label goes peachy cream and the purple bottle deepens to violet, like an early Technicolor feature.

## [5. 1950s color film look](https://www.recharm.com/effects/1950s-color-film-look)

The pale silver backdrop turns a soft cyan with its rainbow streaks glowing coral-red, the white label goes peachy cream and the purple bottle deepens to violet, like an early Technicolor feature.

```
Give all of input.mp4 a 1950s color film look from the first frame to the last: rich reds and cyans, creamy highlights and soft contrast. Using ffmpeg, first separate the colors with a channel mixer (colorchannelmixer=rr=1.5:rg=-0.3:rb=-0.2:gr=-0.35:gg=1.2:gb=0.15:br=-0.3:bg=-0.1:bb=1.4), then raise the saturation to 1.4 and lower the contrast to 0.88 (eq=saturation=1.4:contrast=0.88), then apply per-channel tone curves (input/output points, 0-1): red 0/0.07 0.5/0.54 1/0.96, green 0/0.07 0.5/0.5 1/0.93, blue 0/0.07 0.5/0.47 1/0.88. The pale blue-white backdrop (around RGB 196, 202, 214) should come out a soft cyan (around RGB 167, 188, 189), the cream label (around RGB 202, 197, 188) a peachy cream (around RGB 198, 176, 150), the purple bottle a deeper violet (around RGB 156, 99, 178), the black dropper cap lifted to a soft dark brown, and the overall brightness about 92% of the original. Don't add any text (if you ever do, draw it with Pillow, not ffmpeg's drawtext). Keep the size (540x960), 30fps, the 6 second length and the audio. Encode H.264 yuv420p and save it as output.mp4.
```

[Full guide: settings and the tested ffmpeg command](https://www.recharm.com/effects/1950s-color-film-look)

Halation: From half a second in, a red-orange glow bleeds off the bright backdrop and acrylic edges onto the dark dropper, the bottle's outline and the label lettering, the way light scatters through old film stock.

## [6. Halation](https://www.recharm.com/effects/halation)

From half a second in, a red-orange glow bleeds off the bright backdrop and acrylic edges onto the dark dropper, the bottle's outline and the label lettering, the way light scatters through old film stock.

```
Add a film halation effect to input.mp4 with ffmpeg. Work in RGB. Make a highlight mask: map brightness 0.7-0.9 on a 0-1 scale to 0-1 (darker goes black, brighter stays at full). Blur a copy of the mask with a Gaussian blur of sigma 14 pixels and subtract the sharp mask from it, so only light spilling past an edge into a darker area is left. Turn that into a red-orange glow: average its three channels and multiply by 2.0 for red, 0.6 for green and 0.2 for blue. Add the glow onto the original frame (additive blend). The glow is off for the first 0.5 seconds, then fades up linearly to full strength over 0.5 seconds and stays on to the end; the rest of the picture is not regraded. Keep the size, the 30fps frame rate, the 6-second length and the audio, encode H.264 yuv420p, and save it as output.mp4.
```

[Full guide: settings and the tested ffmpeg command](https://www.recharm.com/effects/halation)

Old film: The orbit turns into a faded sepia print whose exposure jitters every frame, with thin off-white scratches running the full height of the frame and black dust specks blinking in and out.

## [7. Old film](https://www.recharm.com/effects/old-film)

The orbit turns into a faded sepia print whose exposure jitters every frame, with thin off-white scratches running the full height of the frame and black dust specks blinking in and out.

```
Make input.mp4 look like a worn old film print from the first frame to the last. Use Python with numpy and ffmpeg (read raw frames from ffmpeg, process them in numpy, pipe them back). For each frame: turn it to gray (0.299 R + 0.587 G + 0.114 B), fade it to 40 + 0.8 x gray, multiply by a random exposure between 0.93 and 1.07 picked fresh every frame (flicker), darken the corners by up to 35% with a vignette, add Gaussian grain with a standard deviation of 7, then tint it sepia by multiplying red, green and blue by 1.0, 0.88 and 0.70, so the silver backdrop comes out around RGB 185, 163, 130. Scratches: keep 2 to 3 white vertical scratches on screen in every frame, each 2 px wide and running the full height of the frame, in off-white (250, 246, 235) at 90% opacity with a 1 px soft edge at 35% on each side; each one appears at a random x between 5% and 95% of the width, lasts 4 to 12 frames and drifts sideways up to 1.5 px a frame. Dust: in every frame draw 20 new solid near-black (20, 16, 12) oval specks at random places, each 3 to 8 px across, that last only that frame. Don't add any text (if you ever do, draw it with Pillow, not ffmpeg's drawtext). Keep the size (540x960), 30fps, the 6 second length and the audio. Encode H.264 yuv420p and save it as output.mp4.
```

[Full guide: settings and the tested script](https://www.recharm.com/effects/old-film)

Silent film: The orbit around the bottle hurries by at a jerky, hand-cranked pace in gray-scale that pulses brighter and darker every frame, while white scratches run down the picture and black specks and hairs pop in and out.

## [8. Silent film](https://www.recharm.com/effects/silent-film)

The orbit around the bottle hurries by at a jerky, hand-cranked pace in gray-scale that pulses brighter and darker every frame, while white scratches run down the picture and black specks and hairs pop in and out.

```
Turn input.mp4 (540x960, 30fps, 6 seconds) into a 1920s silent film. Speed it up 1.5x so it lasts exactly 4 seconds (120 frames at 30fps), and make the motion choppy like a hand-cranked camera: output frames 2k and 2k+1 both show input frame 3k (so input frames 0, 3, 6 ... 177, each held for 2 output frames). Make every frame black and white (no color at all, saturation 0), stretch the contrast by 1.35 around mid-gray ((v - 128) x 1.35 + 128), then on every output frame multiply the brightness by a random factor between 0.90 and 1.10 so it flickers, darken toward the corners with a vignette (multiply by 1 - 0.45 x d^2, where d is the distance from the center divided by the distance to a corner, so the corners end up about 30% darker than the center), add random gray film grain (standard deviation 9) and clip the picture so nothing is brighter than 200. Over that, with Pillow, draw 2 bright vertical scratches (gray level 250, 1-2 pixels wide) running the full height of the frame, starting at random positions between 10% and 90% across and drifting sideways by a few pixels each frame, plus 6 dark dust marks per frame (gray level 10-40) at random positions that change every frame: mostly round specks 3-10 pixels across, some short curled hairs. Speed the input's own audio up 1.5x too (ffmpeg atempo=1.5) so it lasts 4 seconds. Don't add any text (if you ever do, draw it with Pillow, not ffmpeg's drawtext). Keep the size (540x960) and 30fps, encode H.264 yuv420p with the audio and save it as output.mp4.
```

[Full guide: settings and the tested script](https://www.recharm.com/effects/silent-film)

Film strip border: The video plays inside one frame of a black film strip, with cream sprocket holes running down both edges and slivers of the next frames peeking in above and below.

## [9. Film strip border](https://www.recharm.com/effects/film-strip-border)

The video plays inside one frame of a black film strip, with cream sprocket holes running down both edges and slivers of the next frames peeking in above and below.

```
Put input.mp4 inside a film strip. Scale the video to 72% of the frame width (388x690 on a 540x960 clip, keeping its aspect) and center it, with corners rounded to 1.2% of the frame width. Fill everything around it with film base color (18, 16, 14). Repeat the same scaled video directly above and below it with a 3%-of-width (16 px) black frame line between them, so slivers of the neighboring film frames show at the top and bottom edges. Down each side, in a rail 12% of the frame width, draw a column of cream (250, 247, 240) sprocket holes 5% of the frame width wide and 7% tall with slightly rounded corners, one every 12% of the frame width, centered in the rail and spread evenly from top to bottom. Add small amber (235, 165, 40) edge print "RCH 400  12A" in a bold mono font at 2.6% of the frame width, rotated to read up the left side just inside the rail, beside the middle of the picture. Keep the strip on screen for the whole clip. Use Python with Pillow to draw the strip (draw any text with Pillow, not ffmpeg's drawtext) and ffmpeg to composite it, keep the audio and the original size, and save it as output.mp4.
```

[Full guide: settings and the tested script](https://www.recharm.com/effects/film-strip-border)

Film leader countdown: Before the clip, a grainy gray film leader counts 8 down to 2 in black numbers inside a white double ring, a dark wedge sweeping around like a clock hand each count, with a beep on the 2.

## [10. Film leader countdown](https://www.recharm.com/effects/film-leader-countdown)

Before the clip, a grainy gray film leader counts 8 down to 2 in black numbers inside a white double ring, a dark wedge sweeping around like a clock hand each count, with a beep on the 2.

```
Put a film leader countdown before input.mp4. For 3.5 seconds at 30 fps, show gray (150, 150, 150) film leader at the video's size with the numbers 8, 7, 6, 5, 4, 3, 2 for 0.5 seconds each: a black (20, 20, 20) bold number about 45% of the frame width tall (font size 62% of the width), centered in the frame. Behind it, a darker gray (95, 95, 95) wedge centered on the frame sweeps clockwise from 12 o'clock through a full turn over each number's 0.5 seconds and reaches past the frame edges, so the frame turns dark gray behind the hand. Over the wedge draw a light (235, 235, 235) crosshair through the center, lines 0.6% of the width thick, and two (245, 245, 245) rings centered on the frame, radius 40% and 34.4% of the frame width, 1.1% of the width thick. Make every frame look like worn film: random brightness flicker of up to 4%, gray film grain (normal noise, standard deviation 9), one to three thin light vertical scratches, a few small black or white dust specks and a 2-pixel up-and-down gate weave. The leader is silent apart from a 1000 Hz beep 0.05 seconds long at 3.0 seconds, as the 2 appears. Then play the whole of input.mp4 with its own audio, so the result is 3.5 seconds longer than the input. Use Python with Pillow and numpy to draw the leader frames and ffmpeg to join them to the video (don't rely on ffmpeg's drawtext filter), and save it as output.mp4.
```

[Full guide: settings and the tested script](https://www.recharm.com/effects/film-leader-countdown)

## More lists

- [**10 caption and text effects for video ads**](https://www.recharm.com/effects/lists/caption-and-text-effects-for-video-ads)
- [**10 video transitions for ads**](https://www.recharm.com/effects/lists/video-transitions-for-ads)
- [**10 hook effects for the first 3 seconds of an ad**](https://www.recharm.com/effects/lists/hook-effects-for-the-first-3-seconds)
- [**10 effects for product videos**](https://www.recharm.com/effects/lists/effects-for-product-videos)
- [**10 effects for talking-head ads**](https://www.recharm.com/effects/lists/effects-for-talking-head-ads)
- [**10 VHS and 80s retro effects for video ads**](https://www.recharm.com/effects/lists/vhs-and-80s-retro-effects-for-video-ads)
- [**10 color grades for product videos**](https://www.recharm.com/effects/lists/color-grades-for-product-videos)
- [**10 glitch effects for video ads**](https://www.recharm.com/effects/lists/glitch-effects-for-video-ads)
- [**10 distortion effects for video ads**](https://www.recharm.com/effects/lists/distortion-effects-for-video-ads)
- [**10 light overlays for product videos**](https://www.recharm.com/effects/lists/light-overlays-for-product-videos)
- [**10 text title styles for video ads**](https://www.recharm.com/effects/lists/text-title-styles-for-video-ads)
- [**10 3D text effects for video ads**](https://www.recharm.com/effects/lists/3d-text-effects-for-video-ads)
- [**10 beat-synced edits for Reels and TikTok**](https://www.recharm.com/effects/lists/beat-synced-edits-for-reels-and-tiktok)
- [**10 audio visualizers for music and podcast videos**](https://www.recharm.com/effects/lists/audio-visualizers-for-music-and-podcast-videos)
- [**10 UGC and social proof overlays for video ads**](https://www.recharm.com/effects/lists/ugc-and-social-proof-overlays-for-video-ads)
- [**10 effects for testimonial and review ads**](https://www.recharm.com/effects/lists/effects-for-testimonial-and-review-ads)
- [**10 motion and camera effects for product videos**](https://www.recharm.com/effects/lists/motion-and-camera-effects-for-product-videos)
- [**10 stylized art looks for video ads**](https://www.recharm.com/effects/lists/stylized-art-looks-for-video-ads)
- [**10 layout and reframing effects for social video**](https://www.recharm.com/effects/lists/layout-and-reframing-effects-for-social-video)
- [**10 transitions for product reveals**](https://www.recharm.com/effects/lists/transitions-for-product-reveals)
- [**10 effects for sale and Black Friday ads**](https://www.recharm.com/effects/lists/effects-for-sale-and-black-friday-ads)
- [**10 TikTok-style effects for video ads**](https://www.recharm.com/effects/lists/tiktok-style-effects-for-video-ads)
- [**10 effects for app and SaaS ads**](https://www.recharm.com/effects/lists/effects-for-app-and-saas-ads)
- [**10 effects for skincare and beauty ads**](https://www.recharm.com/effects/lists/effects-for-skincare-and-beauty-ads)
- [**10 effects that stop the scroll**](https://www.recharm.com/effects/lists/effects-that-stop-the-scroll)
- [**10 effects for holiday ads**](https://www.recharm.com/effects/lists/effects-for-holiday-ads)
- [**10 animated chart and stat effects for video ads**](https://www.recharm.com/effects/lists/animated-chart-and-stat-effects-for-video-ads)
- [**10 caption styles for social video**](https://www.recharm.com/effects/lists/caption-styles-for-social-video)

## Find 3x _winning ads_

Recharm cuts your ad footage into tagged, searchable clips: hooks, testimonials, product shots. Find the shots that win, add the effect with Claude, and ship 3x more ad edits.

[Start 14-day free trial](https://www.recharm.com/get-started)
