First and foremost:
This program contains flashing colors and rapidly changing patterns. Use at your own risk.
Snowstorm is a data extraction program. It loads an arbitrary file, converts the bytes of that file into QR codes, then flashes those QR codes to be filmed by (for instance) a cellphone video camera.
Later, you can split that file into individual frames, discard duplicates, and read with a QR reader to recover the UUEncoded bytes of the original file. I have not written a tool to automate this process (yet) this is very much just a proof of concept.
Press the "choose file" button, navigate to the file you want to encode. Adjust the "Bytes Per Frame" and "ms per frame" options as desired. Aim your video camera at the screen. Press the Play button. Film until the program stops flashing QR codes.
The "Bytes Per Frame" option controls how many bytes will be encoded into each QR code. Smaller renders faster (and bigger) but takes more total frames. The "ms per frame" controls the delay between frame flashes. This should probably be sufficient to sync well with your camera's FPS without dropping any frames. In particular you don't want the application flashing faster than the camera can register.
There is a frame count number on the lower left, as well as a differing background color for each frame to aid in reassembly
Note: this application is _barely_ tested. I just liked the idea.
DownloadSnowstorm v0.1 zip
Snowstorm uses QRCoder.dll, which is available under the MIT license. Text of license included.