Transform a movie file to a gif. Specialised for demo's of Mobile app screen recordings.
#!/bin/bash | |
FFMPEG=$(command -v ffmpeg) | |
INFILE=$1 | |
OUTFILE="${INFILE}.gif" | |
TMPFILE="${INFILE}_gifify_palette.png" | |
if ! $FFMPEG -L > /dev/null 2>&1; then | |
echo "Run: brew install ffmpeg" | |
exit 1 | |
fi | |
if [ -e "$TMPFILE" ]; then | |
echo "Error: tmpfile $TMPFILE already exists" | |
exit 1 | |
fi | |
FILTER="fps=10,scale=320:-1:flags=lanczos" | |
$FFMPEG -i "$INFILE" -vf "$FILTER,palettegen" -y "$TMPFILE" | |
$FFMPEG -i "$INFILE" -i "$TMPFILE" -lavfi "$FILTER [x]; [x][1:v] paletteuse" -y "$OUTFILE" | |
if [ -e "$TMPFILE" ]; then | |
rm "$TMPFILE" | |
fi |
This comment has been minimized.
This comment has been minimized.
Adding some quotes to support spaces in filenames
|
This comment has been minimized.
This comment has been minimized.
Thanks Robin! Updated |
This comment has been minimized.
This comment has been minimized.
Fixed several issues with help of the amazing https://www.shellcheck.net |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This comment has been minimized.
Install instructions:
Run in terminal: gifify SomeVideo.mov
Result will be SomeVideo.mov.gif