UPDATE 2020-05-23: I updated the post with instructions and screenshots for newer versions of macOS. The biggest thing to note is to remove the "Get selected Finder items" task.
Create animated GIFs from the OS X Finder in just seconds. It only takes a few minutes to set up and will give you a “native” feeling without the need to install any additional software. Plus, you never need to open an app to create the GIF, you can just highlight files > right-click > Make Animated GIF.
How To Set It Up
You will need a utility called
convert, which is part of
imagemagick. The easiest way to install it is via Homebrew. In short, you need to first have Homebrew installed via this command:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Then, install the utility with this command:
brew install imagemagick
Set Up The Automator Workflow
1. Open Automator
2. Choose Service (or Quick Action on newer versions of macOS)
3. Choose files or folders from the pull-down menu
4. Choose Finder.app from the other pull-down menu
5. Drag Run Shell Script from the Actions menu to the workflow section on the right side of the window
6. Choose as arguments from the pull-down menu in the Run Shell Script section of the workflow
7. Enter this command into the field:
/usr/local/bin/convert -delay 20 -loop 0 "$@" ~/Desktop/animated.gif
8. Choose File > Save
9. Enter Make Animated GIF as the name
Here is what the entire workflow should look like when you are done.
How To Use It
1. Highlight some picture files, such as screenshots
2. Right-click them
3. Choose Services > Make Animated GIF (or Quick Action > Make Animated GIF) from the context menu that appears
4. After executing, a file named
animated.gif will appear on your desktop
Customize Speed And Looping
There are plenty of options available, which can be seen by entering
convert -help in Terminal. But for the context of this post, I will just cover the two options I used:
-delay 20is the time in hundredths of a second between frames. Increase or decrease this as desired
-loop 0makes the GIF loop endlessly. Change the number to however many iterations you want.