Skip to content

Animated GIFs in VJ sets

Animated GIFs has been the preferred formats by hipsters the last year or so. I thought it would be fun to use these GIFs in VJ sets but unfortunately the format is not supported by the major VJ apps on OSX. So I thought it was about time to investigate how to make it work.

To created GIF Animations I’m using Loopcam, a free app for the iPhone. What’s great about Loopcam is that it has a community and an API which let’s you pull images matching a certain tag. I thought it would be a nice idea if people at a party could contribute to the mix with their own animations. If you have an internet connection and everybody tag their loops with the same tag, let’s say “awesomeparty”, it would be possible to download these GIF files a few moments after they have been created and uploaded.

My first attempt was to make a Python module for Modul8. With the help of a couple command line tools I managed to make it work. The downside is that Modul8 freezes while downloading and converting so I need to find a way to do that in the background (let me know if you have any ideas).

The next thing would be a way to make a Quartz Composer plugin that could do something similar. In that way it might be possible to make Animated GIFs work in VDMX, CoGe, Resolume, etc. But this seems to be a bit harder as QC doesn’t support Animated GIFs either. And it’s not that easy to make the comman line tools work in a QC plugin and you would need a at least one extra QC patch installed to make it happen. And even if I manage to pull this off, these VJ programs doesn’t seem to have an automated way of importing media (please correct me if I’m wrong).

I might end up making a separate app for downloading and converting the GIF animations to Quicktime movies. Preferably controllable by MIDI and / or OSC. I’ll keep you posted on any progress.

I must take the opportunity to plug for my Instructions college, Synthetics, how made the track I’m using in the video. Check out his demo and mixes on Soundcloud.


  1. Andreas Andreas

    My python experience is somewhat limited, and have no previous experience doing modules for Modul8 – but if it’s possible you could always try to establish a thread that downloads the gif in the background which would probably not ending up freezing the program. That is, if Modul8 supports threaded modules.

  2. Yeah I wonder. I tried starting a new thread and it failed. Modul8 uses Python 2.3 which usually makes things a bit more difficult but I’m not sure it even matters in this case. My Python skills are unfortunately very limited to Modul8 modules. I will dig deeper in to this and ask the developers.

  3. So it seems to I need to do a post about how to use animated gifs in Quartz Composer and also in CoGe 😉

  4. Ohh, just missed the “auto” part. Not yet. You should drag’n’drop them.

  5. Maybe someone will come up with a Gif-player that have Syphon output…


    • Actually with the Quartz Composer tips .lov shared it would be piece of cake to send it over Syphon. But it’s not that useful. The more direct control you can get over the gifs playback the better, and in that situation Syphon is not the best way to go.

      • Why not playback gifs with CoGe, then send the output to other software if you need via Syphon?

  6. At the moment I’m having to manually convert pre set from GIF to MOV, I’ve tried quite a few batch converters but at the moment the only thing that works well is using Adobe Flash to convert manually.

    1. Just drag the GIF to Flash and it’ll open it on a new stage fully imported. Although it won’t make the stage the correct height/width as the GIF.

    2. Select stage properties and click ‘fit to content’.

    3. Export as a MOV without sound.

    Now the file works great in Modul8 and keeps most of it’s bittyness (I use mostly pixel art and 8bit/glitch stuff).

    Using a GIF native in Module8 would be ideal, wonder If they’ll cotton on to the GIF revival and add a plugin or the ability at somepoint. Tumblr (one of the other main sources of endless GIFs) doesn’t seem to be slowing down.

    • We can add Animated GIFs as a feature request for Modul8 but don’t think it will be something they will prioritize. The smoothest way to download & convert Animated GIFs to Quicktime is to use the OSX Automator app in combination with the Image Magick & FFMpeg command line tools. My next post will be on how to set up that workflow. I’m also working on a more general watch folder/folder importer module (not sure what to call it yet) for Modul8 that will go great with this workflow.

  7. Olly Johnston Olly Johnston

    Hey 🙂

    I would love a quartz app for GoGe that allows me to auto import them from loopcam.

    • The auto import is something CoGe would have to fix. I really like how you could connect a media bin in VDMX to a folder. I’m not sure if that approach applies to CoGe but that would be a good way to solve it.
      I will present a simple way to download (and convert for other apps than CoGe) as soon as I have a night to spare.

  8. You can use a folder as a media source in CoGe 😉

    • New feature or old? This is great, I need to figure out how it works. I’m publishing a workflow video very soon and this feature will be mentioned if it fits into the flow.

      • It exists from the beginning. You can drop anything to a media slot, what you need is a Player module which can handle it. The Folder Runner Player module in the Misc category shows an example of how to handle a folder in QC.

        Basically the rule: You can playback everything in CoGe, since you have a Player module for that.

  9. Hey, man! Just mine 50cents. You can create a patch in quartz with movie importer patched to the billboard (Basicly what .lov said) but publish the path input. Then when you drop the patch in media bin duplicate it as many times as you need. Click on each of the patches, and you would see the box for entering the path. Just drag the animated gifs on the path line, and vualyha, you have animated gifs!

    • And you would do this in CoGe or in what software would this approach work? I will see if this helps.

      I said I was going to have my workflow post ready by the end of June. It’s already July and I’ve not been able to finish up and no my vacation kicks in and I plan not to spend it in front of the screen (but possibly in front of smaller screens). So unfortunately it looks like this post won’t be published until August but I will be sure to investigate the method you mentioned.

  10. Jim Jim

    A few years later now, and modul8 still isn’t supporting animated gifs. Where are we at to get them playing in there now?

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.