I needed a quick way of converting videos to gifs on Linux -ffmpeg and this post on stackexchange to the rescue!
The result is this neat little bash script:
#!/bin/bash if [[ $# -eq 0 ]] ; then echo "Usage: videoToGif inputFile [outputFile] [FPS] [WIDTH]" echo "Example: videoToGif inputFile.ext outputFile.gif 60 360" exit 0 fi inputFile=$1 outputFile=${2:-output.gif} FPS=${3:-30} WIDTH=${4:-360} #Generate palette for better quality ffmpeg -i $inputFile -vf fps=$FPS,scale=$WIDTH:-1:flags=lanczos,palettegen tmp_palette.png #Generate gif using palette ffmpeg -i $inputFile -i tmp_palette.png -loop 0 -filter_complex "fps=$FPS,scale=$WIDTH:-1:flags=lanczos[x];[x][1:v]paletteuse" $outputFile rm tmp_palette.png
I used it to convert a Screencast created with "recordMyDesktop" (from OGV format) to a GIF.