Your files stay on your Mac.
FLV is the container Adobe built for Flash Player — gone from browsers since 2021 and unopenable in QuickTime today. Convertessa hands each file to FFmpeg, which reads the tag stream, including files that were truncated mid-download, and writes the video and audio into an MP4 that macOS, iOS and every editor will accept. Set quality before running a batch, and the whole job stays on your Mac.
Open an FLV in a hex viewer and you find a tag stream: a short header, then a chain of audio, video and script tags, each stamped with a millisecond timestamp. It was built for RTMP, Adobe's streaming protocol, where a player received tags one at a time and never needed a complete file at all. That heritage is why an FLV from 2006 and an FLV from 2014 look identical from the outside and behave nothing alike on the way out.
Early FLVs carry Sorenson Spark — an H.263 variant — or On2 VP6 video, with MP3, Nellymoser or Speex audio. None of those has a sample entry defined in the MP4 specification, meaning MP4 has no vocabulary to describe them, so a genuine transcode has to happen and the picture takes a second generation of lossy encoding. Later files, from roughly 2008 onward, carry H.264 and AAC, which are precisely what MP4 was designed to hold.
Either way the ceiling is the source. A 320×240 Sorenson clip squeezed hard for a dial-up audience holds a fixed amount of detail, and no destination format adds any back.
onMetaData script tag could carry navigation and advertising markers that a Flash movie read at runtime. MP4 has no slot for them.One thing works in your favour. Because FLV is a chain of self-contained tags, a download truncated mid-file stays largely readable: FFmpeg walks the tags it can parse and writes what it finds, so a half-finished 2009 download usually converts into a playable MP4 that simply ends early rather than refusing to open at all.
Drag a single FLV or the entire folder you rescued from an old drive. Convertessa reads each file's tag stream to establish which video and audio codecs that particular clip actually contains.
MP4 is a lossy target, so a quality value applies. For Sorenson and VP6 sources, which cannot enter MP4 untouched, keep it high: the original is already soft, and fresh artefacts stack on top of old ones.
FFmpeg writes the MP4 locally. Play the first few seconds of a converted clip — Nellymoser and Speex voice tracks change codec on the way through, and a weak source announces itself there first.
Images, audio, video, documents, archives, eBooks and fonts — all converted natively, right on your Mac.
Pick a format you have — see everything Convertessa can turn it into.
Convert hundreds of files at once with per-type group defaults and individual overrides.
First-class support for HEIC, AVIF and WebP — encode and decode, both ways. Read JPEG XL and a dozen more modern formats too.
Drop files anywhere on the window. Native, instant, and exactly what you’d expect on a Mac.
Dial in compression, resolution and bitrate. Keep originals pristine or shrink for sharing.
Never overwrite a file by accident. Convertessa appends safe suffixes automatically.
Every job is logged locally. Re-run a previous conversion or revisit recent outputs in a click.
Bundle your converted files straight into a single ZIP, TAR or 7z — packaged and ready to share the moment a job finishes.
Right-click any file in Finder and choose Convert. A Quick Action handles it on the spot — no need to open the app first.
Shrink Convertessa to a tidy mini window that tucks into a corner — just a drop zone and a format picker for quick, one-off conversions.
No cloud. No account. No upload. Every conversion happens entirely on-device, using the power already in your Mac. What you convert is nobody’s business but yours.
Script conversions, wire them into your build, or batch a folder from the terminal. The same engine, no GUI required.
Read the full CLI documentation →Shrink Convertessa down to a small, focused window — drop, convert, done, with your recent conversions one click away.
macOS 14+ · Apple Silicon & Intel
New formats, new features, and fixes — every release, on the record.
Because of what is inside them. An FLV holding H.264 and AAC contains streams MP4 was built to carry, so most of the work is restructuring. An FLV holding Sorenson Spark or VP6 has no representation in MP4 at all, so every frame has to be decoded and encoded again — real computation on every frame, and slower by an order of magnitude. Two files of identical length and size can differ that much. Run the CLI with --debug to see the route a given file takes.
Usually yes. FLV stores media as a chain of independent tags, each carrying its own timestamp, rather than as one stream that depends on an index written at the end. A file cut off mid-download still has valid tags up to the cut, and FFmpeg converts what it can read. Expect a playable MP4 that ends abruptly where the download stopped, and occasionally one broken final frame.
Flattened, unavoidably. Transparent Flash video used VP6-A, a variant that carried an alpha channel alongside the picture, which is how animated characters sat over web page backgrounds. H.264 in an MP4 stores no alpha, so the transparent region becomes a solid colour — normally black. If you need the transparency today, the source has to be re-rendered from whatever produced it, into a format designed to carry alpha.
Point the CLI at them and give it a destination:
convertessa ~/Archive/flash/*.flv --to mp4 --quality high -o ~/Movies/Converted
Or drop the folder onto the window and let the queue work through it. Expect wildly uneven timings across an old archive — the H.264-era files fly past while the VP6 ones grind — so a batch that looks stuck is very often just chewing through a 2007 clip.
No, and it is worth checking which you have. F4V was Adobe's later format, built on the same ISO base media structure as MP4 rather than on the FLV tag stream, and it usually carries H.264 and AAC already. FLV is the older, genuinely different container. If a file is large, dates from around 2010 or later and ends in .f4v, its internals sit much closer to your destination than a 2006 .flv ever did.
It can make it playable, not better. Those dimensions and that softness are what the encoder recorded when bandwidth was scarce, and the missing detail is not hiding anywhere in the file. What you gain is a video that opens in QuickTime, imports into an editor, syncs to a phone and will still play in ten years. Keep the quality value high so you are not adding a fresh layer of artefacts to an already soft picture.
Rarely, and when it does the fault is usually in the source. FLV timestamps each audio and video tag individually, so timing is carried per tag rather than inferred from a frame rate — which is fortunate, because the frame rate written into an FLV's onMetaData header is frequently wrong. Files captured live from a stream can have gaps where tags were dropped, and that drift is baked in long before conversion begins.