Get this effect
Switch to Code in your Claude Desktop App
Install the skill (once)
Show the prompt
Install the Recharm video effects skill: download https://recharm-growth-staging.s3.us-east-2.amazonaws.com/website/downloads/recharm-video-effects.zip and unzip it into ~/.claude/skillsAsk for the effect
Join clipA.mp4 and clipB.mp4 with a crossfade transition Length of the crossfade in seconds: 0.6
Several videos, several effects, one ask
Put your clips in the folder, mention them with @, and ask for everything at once. Claude runs one tested script after another on each clip, then joins them.
Put a sale badge on @clip1.mp4, give @clip2.mp4 a VHS look, then join them with a crossfade transition.
Settings you can change
Ask Claude to change any of these, or edit them at the top of the command.
| Setting | Default | What it does |
|---|---|---|
D | 0.6 | Length of the crossfade in seconds. |
In other editors
From each editor’s own help pages, in our words. We haven’t run these ourselves.
Built in: Dissolve transition · desktop
- Import the clips and drag them onto the timeline.
- Open the Transition tab and search for dissolve.
- Insert your chosen dissolve between the clips with the plus icon.
- Adjust the transition duration.
Source: Everything You Need to Know About Film Dissolve (CapCut), checked October 22, 2026.
Built in: Dissolve · desktop and mobile
- In the timeline, select a clip in the main track, then click the more icon.
- Choose Add transition, then pick a dissolve in the Transitions panel.
- Adjust the length in the Duration section.
Needs Canva's new timeline editor, still rolling out; transitions aren't available in page mode for video designs.
Source: Free Video Transitions: Add motion in between clips (Canva), checked October 22, 2026.
Without the skill
Don’t want to install the skill? Paste this prompt into Claude Code and Claude writes the command itself.
Show the prompt
Join clipA.mp4 and clipB.mp4 with a 0.6 second crossfade: the picture should dissolve from A to B and the audio should crossfade at the same time. Match B's size and frame rate to A. Use ffmpeg and save it as output.mp4.Run it without Claude
This is the exact command we tested. Save it as crossfade-transition.sh and run:
sh crossfade-transition.sh clipA.mp4 clipB.mp4 output.mp4Show the command
#!/bin/sh
# Crossfade: clip A fades into clip B over 0.6s, picture and sound together.
# Usage: sh crossfade-transition.sh clipA.mp4 clipB.mp4 output.mp4 (both clips need an audio track)
set -e
A="$1"; B="$2"; OUT="$3"
D=0.6 # transition length in seconds
LEN=$(ffprobe -v error -show_entries format=duration -of csv=p=0 "$A")
OFFSET=$(echo "$LEN - $D" | bc)
SIZE=$(ffprobe -v error -select_streams v:0 -show_entries stream=width,height -of csv=s=x:p=0 "$A")
FPS=$(ffprobe -v error -select_streams v:0 -show_entries stream=r_frame_rate -of csv=p=0 "$A")
W=${SIZE%x*}; H=${SIZE#*x}
# xfade needs both clips at the same size and frame rate, so B is fitted to A first
ffmpeg -y -i "$A" -i "$B" -filter_complex "\
[0:v]fps=$FPS,format=yuv420p,setsar=1[a];\
[1:v]scale=$W:$H:force_original_aspect_ratio=increase,crop=$W:$H,fps=$FPS,format=yuv420p,setsar=1[b];\
[a][b]xfade=transition=fade:duration=$D:offset=$OFFSET[v];\
[0:a][1:a]acrossfade=d=$D[au]" \
-map "[v]" -map "[au]" -c:v libx264 -crf 18 -pix_fmt yuv420p -c:a aac "$OUT"





