Tutorial: Make Animated Gif Using VLC & Photoshop (Mac OS)

Updated on June 7, 2018

Gif Making 101

There's various online gif makers, but they don't satisfy me. I need to be able to make gifs quickly and easily as animated icons for Tumblr and other social media sites. So I finally got around to learning how.

This tutorial is specifically for MacOSX, VLC Player (which is free), and Photoshop (which costs your firstborn child and a home mortgage).

VLC is for making screencaps, Photoshop for turning them into a gif.

Okay, so let's find ourselves a movie. Naturally, buried in my iPhotos directory, I have movies of my cat.

Figure Out Where IPhoto Saved Your Vid

Part One: Capture Frames in VLC

  • Drag the movie file onto VLC's app icon on the Dock, or File > Open File from within VLC.
  • In the Playback menu, set the playback speed to slower than normal, giving you more frames to work with.
  • Now move the movie timeline forward until a little before the sequence you want to grab. (You can drop unneeded frames.)

In theory, you should be able to create and choose a folder in which VLC will save all your screencaps, like this:

VLC > Preferences... > Video pane > Folder > Browse...

In practice, my version of VLC dumped all the screencaps into my User > Pictures folder, and then I had to go there and drag them to the screencap folder I'd created for them.

dunno why this isn't working for me.
dunno why this isn't working for me.

At any rate, to capture frames in VLC, hit play (or Spacebar), then hold down Command-Option-S as VLC plays back the frames you want to grab.

This saves screencaps until you let go.

You'll see each screencap's file name appear in white as it's saved (don't worry, these letters are not saved).

Now it's time for Photoshop.

Part Two: Assemble Gif in Photoshop

Here's one of those weird parts of Photoshop we never knew existed.

File menu > Scripts > Load Files into Stack...

lets you load a bunch of individual graphics files into the same Photoshop document as layers.

Browse... to find and choose the screencaps you want to use for your animation. (You can delete frames you don't need in Photoshop, but it's easier just to select those you need).

OK to load in the ones you've chosen.

Open Layers under the Window menu (Or hit F7) if that pane isn't already visible:

Open Animation under the Window menu.

In the teeny pulldown menu on the top right side of the Animation pane, choose Make Frames From Layers.

Voila! You now have an animation of all the screencaps you loaded in.

Except they're in reverse order. ARGH. Sometimes, this doesn't matter, but if it does, then you've got two options.

  • In more recent versions of Photoshop, the pulldown menu of the Animation window (which may now be called Timeline), there's a Reverse Frames option. Select all frames in the animation window first, or the option will be grayed out.

Here's where the "Rerverse Frames" option is in my version of Photoshop, but it's been moved in more recent editions. See this tutorial for where to find "Reverse Frames" in other versions of Photoshop.

  • If you've got older versions of Photoshop, there may be no automatic way to reverse frames. In that case, you either have to drag the frames into the proper order by hand (EW!) or create an Automator app that magically saves all the files in an image folder in reverse order. And then, when you load them into Photoshop with Load Files Into Stack and Make Frames From Layers, they'll wind up in the correct order.

Okay, I'll assume you've now got the images in the correct order. Click the Play arrow to see how it looks.

You'll probably want to set a slight delay for playback.

Select ALL the frames in the Animation panel by clicking the first frame, then scrolling to the right and shift-clicking the final fram.

Click down-arrow beneath one of them and choose "Other" to set how long each frame is to be displayed before proceeding to the next cel of the animation.

I suggest a delay of about 0.1 seconds.

Now it's time for optional editing to fix your animation's lighting, coloring, vibrance, and so on.

We'll do these using Adjustment Layers which apply the same effect to every frame in the animation.

Click the tiny pulldown menu on the upper right part of the Animation window and make sure it has "New Layers Visible in All Frames" checked. That means that if you create any new layers— shapes, text, or the Adjustment layers we're about to make— they'll automatically be turned on for every frame of the animation. (Uncheck this option if you need to make Text captions or other effects which change from frame to frame.)

My favorite kind of Adjustment Layer is Exposure, which lets you fine-tune brightness/lighting. (So do Levels, Curves, and Brightness/Contrast, but Exposure is usually the easiest tool for getting the job done.)


In the Layers Menu, click the TOP layer, which is actually the last screencap of the batch.

Use the sliders in the Exposure adjustment layer to brighten, darken, or tweak the light/dark areas of the picture.

Other helpful adjustment layers you might want to try:

  • Curves: For fine-tuning light areas, dark areas, and mid tones.
  • Vibrance: Helps to "pop-out" different parts of the picture (or try adjusting saturation).
  • Photo Filter: Quick way to add a bit of sunlight or warmth to a scene.
  • Selective Color: This is my favorite way to tweak color.

E.G., Do people's skin tones look a bit sickly, thanks to green, blue, or yellow lighting? Then Add a Selective Color adjustment layer, choose the Yellow channel, and use the sliders to cut back on yellow and/or cyan.

Selective Colors tip: To figure out what parts of the photo you're affecting with each channel, move the Black slider back and forth to see what gets brighter or darker.

Let's show a few examples of how I use the Selective Color adjustment layers.

1) I want to bring out a little more detail in the overexposed white areas of my cat. So I created an Adjustment Layer > Selective Color, chose the White channel from the "Colors" menu and bumped up the black (as well as adding a dash of yellow to match the sunlight).

2) Playing around with overall coloring, I chose the Reds channel from the colors menu and bumped up Magenta and Yellow to make the bricks pop out a bit more strongly:

In the screencap below, the left side shows the picture with the Selective Colors adjustment layer I just made turned off, the right shows it turned on. Look closely at the bricks and the white areas of the cat, and you'll see the difference (I hope).

Before (left) and After (right) Selective Color adjusted...

Mind you, some of that detail's going to be lost when we compress this image down to a gif, so don't get too crazy with tweaking lighting and coloring. But you might as well start with the clearest images you can.

Hit the play button on the animation to see how it looks.

Once you're satisfied with the animation, before cropping, choose Save As... and save the whole thing as a Photoshop document. That way you've got all your layers and frames at full-size saved, in case you need to go back and edit later.

Now it's time to crop.

Often, I'm creating 100x100 animated icons for Tumblr.

First, grab the Crop Tool and hold down Shift to select a square area.

Play the animation to make sure you haven't chopped off anything you need. Hit undo if necessary and try again.

Once you've got a square crop,

Image > Image Size... > 100x100 or whatever size you're aiming for.

Play it again, Sam!

Everything look good? Time to save your animation!

File > Save For Web & Devices ....

  • Choose GIF.
  • I forgot to turn off Transparency here, but it's best to uncheck that just to make sure.
  • At lower right, use the forward and backward arrows to decide which frame you want as the start (it will load in first on sites like Tumblr before the animation plays.
  • Make sure Looping is set to Forever.
  • SAVE!

Making the File Size Smaller

For a single 100x100 pixel animated icon, the instructions above work great.

However, you may want a larger-sized crop. Which means more pixels, more memory, and a big filesize. Then you will have to start trimming to get the filesize down so it'll load faster and/or come in under the filesize limitations for your website.

Tips for reducing filesize:

  • Delete any frames you don't need. (Up to and including going back to VLC and upping the playback speed, if you're desperate).
  • Crop and reduce the image size as much as you can stand.
  • When Saving the gif, reduce the number of colors.
  • Or you can use a Posterize Adjustment Layer to simplify colors.
  • The more dark or uniform areas there are, the smaller the filesize.
  • Try the "Optimize Frames" option in the Animation window's teeny pulldown menu.
  • Here's more tips on reducing filesize.

This article is accurate and true to the best of the author’s knowledge. Content is for informational or entertainment purposes only and does not substitute for personal counsel or professional advice in business, financial, legal, or technical matters.

© 2015 Ellen


    0 of 8192 characters used
    Post Comment
    • profile image


      3 years ago

      Wonderful Content! I actually have a website dedicated to gif making in the time sort of format along with other resources if anyone is wanting to look up more information http://easygifmaking.netne.net cheers x

    • ChitrangadaSharan profile image

      Chitrangada Sharan 

      5 years ago from New Delhi, India

      This is very useful, interesting and informative hub!

      I would definitely like to try this as per your instructions. The pictures are going to be of great help.

      Thanks for sharing, voted up and tweeted!


    This website uses cookies

    As a user in the EEA, your approval is needed on a few things. To provide a better website experience, turbofuture.com uses cookies (and other similar technologies) and may collect, process, and share personal data. Please choose which areas of our service you consent to our doing so.

    For more information on managing or withdrawing consents and how we handle data, visit our Privacy Policy at: https://maven.io/company/pages/privacy

    Show Details
    HubPages Device IDThis is used to identify particular browsers or devices when the access the service, and is used for security reasons.
    LoginThis is necessary to sign in to the HubPages Service.
    Google RecaptchaThis is used to prevent bots and spam. (Privacy Policy)
    AkismetThis is used to detect comment spam. (Privacy Policy)
    HubPages Google AnalyticsThis is used to provide data on traffic to our website, all personally identifyable data is anonymized. (Privacy Policy)
    HubPages Traffic PixelThis is used to collect data on traffic to articles and other pages on our site. Unless you are signed in to a HubPages account, all personally identifiable information is anonymized.
    Amazon Web ServicesThis is a cloud services platform that we used to host our service. (Privacy Policy)
    CloudflareThis is a cloud CDN service that we use to efficiently deliver files required for our service to operate such as javascript, cascading style sheets, images, and videos. (Privacy Policy)
    Google Hosted LibrariesJavascript software libraries such as jQuery are loaded at endpoints on the googleapis.com or gstatic.com domains, for performance and efficiency reasons. (Privacy Policy)
    Google Custom SearchThis is feature allows you to search the site. (Privacy Policy)
    Google MapsSome articles have Google Maps embedded in them. (Privacy Policy)
    Google ChartsThis is used to display charts and graphs on articles and the author center. (Privacy Policy)
    Google AdSense Host APIThis service allows you to sign up for or associate a Google AdSense account with HubPages, so that you can earn money from ads on your articles. No data is shared unless you engage with this feature. (Privacy Policy)
    Google YouTubeSome articles have YouTube videos embedded in them. (Privacy Policy)
    VimeoSome articles have Vimeo videos embedded in them. (Privacy Policy)
    PaypalThis is used for a registered author who enrolls in the HubPages Earnings program and requests to be paid via PayPal. No data is shared with Paypal unless you engage with this feature. (Privacy Policy)
    Facebook LoginYou can use this to streamline signing up for, or signing in to your Hubpages account. No data is shared with Facebook unless you engage with this feature. (Privacy Policy)
    MavenThis supports the Maven widget and search functionality. (Privacy Policy)
    Google AdSenseThis is an ad network. (Privacy Policy)
    Google DoubleClickGoogle provides ad serving technology and runs an ad network. (Privacy Policy)
    Index ExchangeThis is an ad network. (Privacy Policy)
    SovrnThis is an ad network. (Privacy Policy)
    Facebook AdsThis is an ad network. (Privacy Policy)
    Amazon Unified Ad MarketplaceThis is an ad network. (Privacy Policy)
    AppNexusThis is an ad network. (Privacy Policy)
    OpenxThis is an ad network. (Privacy Policy)
    Rubicon ProjectThis is an ad network. (Privacy Policy)
    TripleLiftThis is an ad network. (Privacy Policy)
    Say MediaWe partner with Say Media to deliver ad campaigns on our sites. (Privacy Policy)
    Remarketing PixelsWe may use remarketing pixels from advertising networks such as Google AdWords, Bing Ads, and Facebook in order to advertise the HubPages Service to people that have visited our sites.
    Conversion Tracking PixelsWe may use conversion tracking pixels from advertising networks such as Google AdWords, Bing Ads, and Facebook in order to identify when an advertisement has successfully resulted in the desired action, such as signing up for the HubPages Service or publishing an article on the HubPages Service.
    Author Google AnalyticsThis is used to provide traffic data and reports to the authors of articles on the HubPages Service. (Privacy Policy)
    ComscoreComScore is a media measurement and analytics company providing marketing data and analytics to enterprises, media and advertising agencies, and publishers. Non-consent will result in ComScore only processing obfuscated personal data. (Privacy Policy)
    Amazon Tracking PixelSome articles display amazon products as part of the Amazon Affiliate program, this pixel provides traffic statistics for those products (Privacy Policy)
    ClickscoThis is a data management platform studying reader behavior (Privacy Policy)