#!/usr/bin/env bash # gif.sh in.mp4 out.gif [width] [fps] — a palette-optimised GIF of a recording. in=$1; out=$2; w=${3:-960}; fps=${4:-10} ffmpeg -hide_banner -loglevel error -y -i "$in" \ -vf "fps=$fps,scale=$w:-1:flags=lanczos,split[s0][s1];[s0]palettegen=max_colors=192:stats_mode=diff[p];[s1][p]paletteuse=dither=bayer:bayer_scale=4:diff_mode=rectangle" \ "$out" ls -la "$out"