If you wanted to create an automator workflow for this, you would want to use the "Run Shell Script" workflow item using the arguments as input. I had to modify it slightly as the resulting .app doesn't know where ffprobe, ffmpeg, or gifsicle are, so this solution is definitely not very portable and might require adjusting, but it's at least quick:
#!/bin/bash -e
# Converts a video to a gif
if [ "$#" -ne 1 ]; then
echo "usage: ${0##*/} [input video]"
exit 1
fi
TOOL_PATH=/usr/local/bin
VIDEO=$1
GIF=$VIDEO.gif
# finds width and height of $VIDEO expressed as 123x456
WIDTH_HEIGHT=$($TOOL_PATH/ffprobe -loglevel warning -show_streams $VIDEO | grep -e "width\|height" | sed -E 's/(width|height)=//g' | sed -e ':a' -e 'N' -e '$!ba' -e 's/\n/x/g')
# converts the video
$TOOL_PATH/ffmpeg -i $VIDEO -s $WIDTH_HEIGHT -r 10 -f gif - | $TOOL_PATH/gifsicle --optimize=3 --delay=3 > $GIF
You can then save the workflow as an app or service that works on files so that using it is as simple as dragging and dropping movies into it or right clicking on a video file:
I have no idea why it's apparently sped up though..