Convert MOV to FLV — Free Online Tool
Convert MOV files to FLV using H.264 video and AAC audio encoded entirely in your browser — no upload required. FLV was the dominant web streaming format of the Flash era, and this tool produces H.264-based FLV files compatible with legacy Flash Player infrastructure and RTMP streaming servers.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your MOV file here
or click to browse
Free — no uploads, no signups. Your files never leave your browser.
Settings
Note: Browser-based encoding uses approximate quality targets. For precise CRF compression, copy the FFmpeg command above and run it on your desktop.
Estimated output:
Conversion Complete!
DownloadHow It Works
MOV is a flexible Apple container that can hold a wide variety of codecs, including ProRes, H.264, H.265, and others used in professional editing workflows. During conversion to FLV, the video stream is re-encoded to H.264 (libx264) and the audio is re-encoded to AAC — both of which FLV supports natively. This is a full transcode rather than a simple remux, because FLV has a much more restricted codec palette than MOV and uses a different container structure designed around Adobe Flash's streaming protocol. MOV features like multiple audio tracks, chapter markers, embedded subtitles, and transparency channels are all dropped in the output, as FLV supports none of these. The result is a single-stream video file optimized for delivery via Flash Player or RTMP-based streaming.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg binary. In the browser-based tool, this runs via FFmpeg.wasm compiled to WebAssembly, so no installation is needed and no files leave your machine. |
-i input.mov
|
Specifies the input file as a MOV container. FFmpeg will detect the contained codec automatically — whether it's H.264, ProRes, HEVC, or another format — and decode it for re-encoding into the FLV-compatible output. |
-c:v libx264
|
Encodes the video stream using the libx264 H.264 encoder, which is one of only two video codecs FLV supports. This is always a full re-encode regardless of the source codec in the MOV file, because FLV's container structure requires it. |
-c:a aac
|
Re-encodes the audio stream to AAC, one of FLV's two supported audio formats (the other being MP3). AAC at the default bitrate provides better quality than MP3 at equivalent bitrates and is the preferred choice for FLV files played via modern Flash Player versions. |
-crf 23
|
Sets the Constant Rate Factor for H.264 encoding to 23, which is the libx264 default and represents a good balance of quality and file size. Lower values produce better quality at larger file sizes; this value is appropriate for most web-delivery FLV use cases. |
-b:a 128k
|
Sets the AAC audio bitrate to 128 kilobits per second. For FLV files intended for web streaming or RTMP delivery, 128k AAC provides acceptable stereo audio quality without inflating the file size significantly. |
output.flv
|
Specifies the output filename with the .flv extension, which tells FFmpeg to write the result in the Flash Video container format. The FLV container wraps the H.264 video and AAC audio streams in the binary format expected by Flash Player and RTMP servers. |
Common Use Cases
- Preparing video content for legacy RTMP streaming servers or CDNs that still ingest FLV as their expected input format
- Publishing video to older CMS platforms or video hosting systems built around Adobe Flash Player that require FLV input files
- Converting Apple ProRes or H.265 MOV footage from a camera or editing suite into an H.264 FLV file for compatibility with Flash-based video players embedded in older websites
- Archiving or re-encoding FLV-era web video projects where source footage exists only as MOV files from a Mac-based editing workflow
- Providing video files to broadcast or event systems that use Flash-based hardware encoders or media servers expecting FLV streams
- Converting QuickTime screen recordings or tutorial videos into FLV format for upload to legacy e-learning platforms built on Flash-based video infrastructure
Frequently Asked Questions
Yes — this is a lossy transcode in both directions. MOV files can contain lossless or high-bitrate codecs like Apple ProRes or FLAC audio, but FLV only supports lossy formats (H.264 video and AAC or MP3 audio). The default CRF value of 23 produces visually good quality for most content, but any re-encoding introduces some generation loss compared to the original. If your MOV source is already H.264, you're re-encoding H.264 to H.264, which compounds the loss slightly — there's no copy-stream shortcut here because the container structure differs.
They are discarded. FLV supports only a single video stream and a single audio stream, with no provision for multiple audio tracks, chapter markers, or subtitle tracks. If your MOV file has a director's commentary track, stereo plus surround tracks, or embedded subtitles, only the first (default) audio stream will be carried into the FLV output. If you need to preserve alternate audio tracks, you should export them separately before converting.
No. FLV does not support transparency or alpha channels at all. The H.264 codec used in FLV has no alpha support in this context, so any transparent areas in your MOV (for example, from ProRes 4444 or PNG-codec QuickTime files) will be composited against a black background during conversion. If transparency is essential, FLV is not a suitable target format — consider WebM with VP9 instead.
File size depends heavily on the codec your MOV was using originally. If it contained a high-bitrate professional codec like Apple ProRes, the FLV will be significantly smaller because H.264 at CRF 23 is far more efficient. Conversely, if your MOV was already a highly compressed H.264 file, the FLV may be similar in size or even slightly larger, because re-encoding resets the compression from scratch and CRF 23 may target a higher bitrate than the original. The audio transcode to AAC at 128k is generally small in impact.
To change video quality, modify the -crf value: lower numbers like 18 give higher quality at larger file sizes, while higher numbers like 28 reduce file size with more visible compression. The valid range for H.264 in FLV is 0 (lossless, not recommended for FLV) to 51 (very low quality). To change audio bitrate, replace 128k in the -b:a flag with values like 96k for smaller files or 192k for better audio fidelity. For example: ffmpeg -i input.mov -c:v libx264 -c:a aac -crf 18 -b:a 192k output.flv
Yes, on desktop you can wrap the command in a shell loop. On Linux or macOS: for f in *.mov; do ffmpeg -i "$f" -c:v libx264 -c:a aac -crf 23 -b:a 128k "${f%.mov}.flv"; done. On Windows Command Prompt: for %f in (*.mov) do ffmpeg -i "%f" -c:v libx264 -c:a aac -crf 23 -b:a 128k "%~nf.flv". The browser-based tool processes one file at a time, so the desktop FFmpeg command is especially useful for bulk conversions of large libraries.
Technical Notes
FLV is a container format with a deliberately narrow codec scope — it was designed for low-latency delivery via Adobe Flash Player and RTMP, not for archival or editing use. The H.264 profile written into FLV by FFmpeg defaults to the High profile, which is broadly compatible with Flash Player 9 and later. If you need compatibility with very old Flash Player versions (pre-9), you may need to add -profile:v baseline to the command. Audio is limited to AAC or MP3 (libmp3lame); the default AAC at 128k is suitable for most spoken-word and general video content. Notably, the -movflags +faststart optimization that benefits MOV/MP4 streaming has no equivalent in FLV — Flash Player handled progressive download differently via its own metadata atom (onMetaData), which FFmpeg writes automatically. Metadata fields like title, artist, and creation date present in the MOV's QuickTime atoms are not carried into the FLV container. FLV files also lack the random-access seeking granularity of MP4, which can make scrubbing less precise in some players. For modern web deployment, FLV is largely obsolete — browsers dropped Flash support in 2020 — but FLV remains relevant for RTMP ingest pipelines, legacy hardware, and certain live streaming infrastructure.