How does a video to ASCII converter work?
asciify.art demuxes your video container with mp4box.js, decodes individual frames using the browser's WebCodecs VideoDecoder, downsamples each frame on a canvas, and replaces every cell with a character whose density matches the pixel's brightness. The result is a sequence of ASCII frames that plays back at your chosen frame rate.
What video formats are supported?
MP4 (H.264 and HEVC), WebM (VP8/VP9), and MOV/QuickTime from iPhone or macOS. MOV is decoded via WebCodecs because Chrome's <video> element does not natively play QuickTime — asciify.art handles the gap so you do not need to convert to MP4 first.
Is my video uploaded anywhere?
No. The video file is read with the File API and processed entirely in your browser tab. There is no upload, no transcoding server, no storage. The page works offline once loaded.
Are there video size or length limits?
No artificial caps. The whole pipeline runs locally so the only ceiling is your device's RAM and CPU. For long clips (multi-minute, 4K) you may run out of memory; for typical phone videos under a minute it just works.
Can I export the ASCII animation?
Yes. The current frame can be exported as TXT, PNG or HTML+CSS. Animated GIF export of the full ASCII video is on the roadmap; for now you can capture the playback with any screen recorder.
Which browsers support video to ASCII?
Chrome, Edge, Opera and other Chromium-based browsers fully support the MOV WebCodecs path. Firefox and Safari work for MP4 and WebM via the <video> element fallback. For MOV in Safari, asciify.art will tell you to use Chrome/Edge or convert to MP4.