I’m trying to figure out GIFfing in GIMP and specifically how to manipulate layers to isolate movement and perhaps make color adjustments. I had these processes more or less down in Photoshop, but Adobe says I can’t use the Creative Suite I paid so much for many years ago anymore. GIMP appears to be just as powerful, but many functions are different, so I have to relearn everything.
My first step was to isolate the video clip I wanted to GIF. I did this with iMovie. MPEG Streamclip was the go-to tool, but it no longer works. VLC may also do the trick – I haven’t looked into it.
GIMP won’t import mp4 video to layers, so I used VLC to convert the video frames to still images. I used the tutorial Convert video to images with VLC Media Player. There is absolutely nothing intuitive about the process but the directions are clear. When I played the video clip it was supposed to extract stills as it played, but nothing happened. So I quit VLC and reopened it, and dragged my mp4 to the playlist window, and then it worked. Now I had a folder full of frames.
In GIMP, I used the Open as Layers function to bring all the isolated frames into one image file. From there I could go to File => Export As and specify the filetype GIF to make the animation.
But I wanted to isolate the bass player in the animation and leave everyone else static. The PS way to do this would be to add a new layer with a cut-out area for the animated layers to play through. I couldn’t find any tutorials to help me with this, although I did find that it had been done by Jim, Alan and Scott. I did find a Youtube tutorial on how to Quickly Overlay GIF On Still Image | GIMP Tutorial which is kind of the opposite of what I wanted to do. I tried to extrapolate from there a way to make a masking layer work, but failed. It then occurred to me that I could use the process as-is if I cropped to the bass player, saved that as a GIF and dropped it on a background layer.
I opened one frame as a background layer, then opened the GIF as layers. This put the GIF out of position by dropping it in the center. I linked the GIF layers and moved them to the left until it looked like they were in place. There really should be a more accurate way of placing the selection. According to the tutorial I had to use the Layer to Image Size function, but it didn’t work quite as shown. It made the layer the size of the image by filling the extra space with white. I couldn’t find a way to keep it transparent. I went ahead anyway and deleted the white frames after running the Filter => Animate => Blend function. It still wasn’t animating right, but then I deleted the even-numbered layers, according to the tutorial directions. It came out okay, but there is still a problem at the edge of the animated area where part of the bass moves and part doesn’t. If I could do a static mask layer like in PS, I could theoretically leave an irregular-shaped hole for the bass and player. Alternatively, I might be able figure out how to do it with a transparent background GIF.