← vibhum aggarwal

reelvault

store any file inside a video, and get it back byte-for-byte

a video is just a lot of pixels, and pixels are just bytes. reelvault paints your file into the frames of a video, and reads it back out. the useful part is robust mode: the data survives being re-encoded, so the video can go through a chat app, an upload, or a screen recording and still decode to exactly the file you started with.

it runs entirely in this tab. your file never leaves your machine — there is no server to send it to.

try it

pick any small file, make the video, then switch to decode and feed the video back in. you should get the identical file.

two modes

losslessrobust
container.avi (PNG) or .mkv (FFV1).mp4 (H.264) or .webm
size, random data1.0× the file~3.6× the file
survives re-encodingnoyes
decodes in the browsernoyes

use lossless to package a file as video with no size penalty. use robust when the video will pass through something that recompresses it.

what you get back

every video carries the filename, the size and a CRC-32 checksum. a decode either hands you exactly what went in, or tells you what went wrong — wrong password, missing frames, or a damaged video. it does not quietly give you a corrupted file.

on the command line

reelvault encode thesis.pdf --robust -p     # -> thesis.pdf.mp4, encrypted
reelvault decode thesis.pdf.mp4             # -> thesis.pdf, checksum verified

← back