NaMoGenMo 2022 report

This November, I worked on a project to create code to generate a movie. I got the idea from NaNoGenMo, which itself is based on NaNoWriMo.

My idea was to create a Memento-ized version of an existing movie. If you haven't seen Memento, it's structured where the order of scenes is interleaved, so the beginning of the movie is the last thing to happen to the characters chronologically.

If the order of events happening to the characters is A, B, C... Y, Z, then what you watch is Z, A, Y, B, X, C, etc etc. The end of the movie you watch is when the backwards and forwards scenes meet in the middle. The first-half scenes are in black and white to help the audience a little.

To accomplish this in a generative fashion, I wrote a library to assist me. It's called mementoizer, and it's available on PyPI.

I wanted to use it on a color film to take advantage of the alternating color/black and white structure. Unfortunately, there are not a lot of color feature films in the public domain/permissively licensed. (I do see a few places that indicate the 1952 version of The Snows of Kilimanjaro is in the public domain in the US, but I am not sure of the validity of those claims. If any copyright lawyers out there can clarify things, please get in touch as I think that would be an interesting movie to memento-ize.)

Given that constraint, and my desire to have something at least 40 minutes, I chose Memphis Belle: A Story of a Flying Fortress, a 1944 film produced by the US government.

I created the mementoized version with a minimum scene length of 3 minutes. If you install mementoizer, here is the command I used if you want to replicate the results:

mementoize memphis_belle.mp4 --min-scene-length 180

It's not human-perfect edited, but I am very pleased with how well it worked out! It obviously can't tell the difference between a shot cut, and a scene ending, but for a first cut, min-scene-length works pretty well. I think the result is effective and surprising in a good way. The final product: