/TOOL · VIDEO TO ASCII

ASCII Animation Maker: Run a Clip Through a Live Character Filter

Load an MP4, MOV, WebM or GIF and it plays back as ASCII art, live, in this page. Change the output width, the character ramp and the contrast while it runs, pause on the frame you want, and export that frame as a PNG. The file is read on your machine and never uploaded.

Built-in demo loop Drop a video or a GIF anywhere on this panel
Loading the demo loop
0 x 0 characters 0 per frame 0 fps 0 x 0 source pixels

Nothing is uploaded. The clip is decoded by a hidden video element inside this page and every frame is sampled by a canvas, so the file never leaves your device. There is no server step and no account. To render a whole clip out as a moving file, open the full ASCII Magic studio, which exports MP4 and GIF.

/HOW IT WORKS

Four steps, all of them local

  1. Load a clip

    Drop an MP4, MOV, WebM or GIF onto the player, or click Choose file. It starts playing as characters straight away, muted, on a loop.

  2. Set the grid

    Output width is the number of characters across. Rows are derived from your clip's aspect ratio, so you only ever set one number.

  3. Pick a ramp

    The ramp is the ordered list of characters from heaviest to lightest. It sets the contrast curve of every frame at once.

  4. Grab a frame

    Pause where you want it and export that frame as a PNG. For the whole clip as a moving file, use the studio instead.

/THE CONTROLS

What each control is actually doing

Output width

Columns across, from 40 to 220. Everything else follows: the row count comes from the clip's aspect ratio, and the character size shrinks so the grid still fits the panel. Wide grids read as footage. Narrow grids read as texture, and they run a lot faster on a modest machine.

Character ramp

An ordered string, heaviest glyph first, lightest last. Each cell's brightness picks one character out of it. Ten levels is the safe default for video. Seventy levels gives smoother gradients but many of its glyphs look alike in motion, so it can shimmer between frames.

Contrast

Video tends to sit flatter than a photograph, so the middle of the ramp does all the work and the picture turns to mush. Raising contrast spreads the brightness values back towards both ends of the ramp, which is what puts the highlights and the shadows back into the frame.

Play and pause

Pause stops the frame loop, not just the video, so the ASCII freezes exactly where it is. That is how you line up the frame you want before exporting it. A GIF pauses the same way, even though the underlying image keeps cycling in the background.

/SCOPE

Where this page stops

This is a player and a frame grabber. It converts and shows, in real time, and it hands you single frames as PNG. It does not encode video, because writing an MP4 means running every frame through the engine and then muxing the result, which is a different job with a different progress bar.

That job belongs to the ASCII Magic studio, which takes the same footage, runs it through fifteen style engines including characters, dither, halftone dots, pixel art, mosaic and voxel, and writes an MP4 or a GIF at the end. If you want the background on the technique rather than the tool, the video to ASCII style guide covers frame rates, ramps and what survives compression.

/FAQ

Questions people actually ask

Can I turn a video into ASCII art without uploading it anywhere?
Yes, and nothing on this page leaves your machine. The clip is decoded by a hidden video element inside the page and each frame is sampled by a canvas, so the file is read locally and never sent to a server. Load the page, disconnect from the network, and the player still works.
How do I turn a GIF into ASCII art?
Drop the GIF onto the player exactly like a video. The animation is sampled from the image as it cycles, so the ASCII moves with it. A GIF with very few frames or long frame delays will look choppy in ASCII for the same reason it looks choppy as a GIF, and no setting here can add frames that were never in the file.
Why does my ASCII video look stretched or squashed?
Because a monospaced character cell is about twice as tall as it is wide, and something in the chain is not accounting for it. This player does account for it, sampling roughly two pixels vertically for every one horizontally. If you export a frame and paste the characters somewhere with different line spacing, the proportions shift again, and the fix is the line height of that container.
Why is the ASCII playback stuttering or dropping frames?
Almost always the output width. Every frame samples one pixel per character cell and redraws every row, so doubling the columns roughly quadruples the work per frame. Drop the width to 100 or below and it usually smooths out. Very large source files are the other cause, because the browser decodes full-resolution frames before anything is sampled.
How do I save a whole clip as an ASCII MP4?
Not from this page, which exports single frames as PNG. The ASCII Magic studio takes the same video, renders every frame through the character engine and writes an MP4 or a GIF at the end. That is the route for anything you need back as a moving file.
My phone video will not load, what is wrong?
It is the codec, not the size. iPhone .mov files are often HEVC, which Safari plays and most other browsers do not. Chrome and Firefox handle H.264 MP4 and WebM reliably. Re-export the clip as an H.264 MP4 and it will open anywhere.
Which character ramp looks best for moving footage?
The ten level standard ramp for most clips. Motion hides fine gradient detail anyway, so the seventy level ramp mostly adds flicker as neighbouring frames swap between glyphs that look nearly identical. Block characters are the steadiest choice for high-contrast footage like silhouettes and titles.

/DO MORE WITH ASCII MAGIC

Watching it is one thing. Keeping it is another.

The studio behind this page keeps the colour, adds dither, halftone, pixel art, mosaic, LEGO and voxel on top of the characters, and writes the finished clip out as an MP4 or a GIF. Still entirely in the browser.

Open the editor →

/RELATED

More ways to make things out of characters

This page plays moving footage. For a single photo, use the image to ASCII converter. For a word as a banner, use the text to ASCII generator, or browse all the tools.