Skip to main content
Back to work Samuel
Mortenson

Photo Booth

The original GIF-strip generator
The photo booth at the wedding ceremony.

When I was helping to plan my wedding, I thought it would be a cool idea to have a photo booth. I looked up some local Portland options, and thought the ~$1,000 price tag for what is essentially a DSLR camera and a backdrop was pretty ridiculous. So, being an engineer, I started building a Python script that would take four photos, assemble them into a photo strip, then print them on a cheap photo printer I bought. This was already better than most photo booth rentals because it made an actual strip - something felt really wrong about calling something a "photo booth" that wasn't a booth and didn't print a strip.

After the initial build was done, I decided that the digital copy of the strip should be four animated GIFs. If you've ever watched or read Harry Potter, I wanted this to feel like the moving portraits from Hogwarts. To accomplish this, I took multiple pictures during the "pose" phase of the photo booth. This is normally when you see the flash go off or an indicator light turn on. I then placed each frame of the pose into the appropriate strip frame, then when all the poses were finished I took every strip frame and compiled them into a single GIF.

I also helped to build the physical photo booth with my best man, which was fun and unsurprisingly time consuming and expensive. Pro tip: don't build something out of solid wood if you're only going to use it for one night and only have two people to carry it.

Awhile after the wedding I ported the Python script to JavaScript, to make the code more accessible to the public. Eventually I ported that website to Glitch, which got some popularity and was eventually "remixed" and used during the Glitch happy hour.

Original codebase: https://github.com/mortenson/photobooth.py

Web photobooth: https://mortenson.coffee/gif-photobooth/

Web codebase: https://github.com/mortenson/gif-photobooth