-
-
Save arush/268f74e22928f064770c to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Convert an animated video to gif | |
# Works best for videos with low color palettes like Dribbble shots | |
# | |
# @param $1 - video file name like `animation.mov` | |
# @param @optional $2 - resize parameter as widthxheight like `400x300` | |
# | |
# Example: vidtogif animation.mov 400x300 | |
# Requirements: ffmpeg and gifsicle. Can be downloaded via homebrew | |
# | |
# http://chrismessina.me/b/13913393/mov-to-gif | |
function vidtogif() { | |
if [ -n "$1" ] | |
then | |
mkdir pngs gifs | |
ffmpeg -i "$1" -r 10 pngs/frame_%04d.png | |
sips -s format gif pngs/*.png --out gifs/ | |
cd gifs | |
if [ -z "$2" ] | |
then | |
gifsicle *.gif --optimize=3 --delay=3 --loopcount > ../animation.gif | |
else | |
gifsicle *.gif --optimize=3 --delay=3 --loopcount --resize "$2" > ../animation.gif | |
fi | |
cd .. | |
rm -rf pngs gifs | |
else | |
echo "Use video file as first parameter" | |
fi | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment