Convert FLV to 3G2 — Free Online Tool

Convert FLV (Flash Video) files to 3G2, the CDMA-optimized mobile container format, re-encoding video with H.264 and audio with AAC directly in your browser. This conversion is especially useful for repurposing legacy Flash video content for mobile playback on older CDMA-based devices and networks.

FFmpeg Command

Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg

Free — no uploads, no signups. Your files never leave your browser.

Estimated output:

Conversion Complete!

Download

How It Works

FLV files typically contain H.264 or Sorenson Spark video alongside MP3 or AAC audio, wrapped in Adobe's Flash container. During this conversion, the video stream is re-encoded using the libx264 H.264 encoder (with CRF 23 for balanced quality) and audio is encoded as AAC at 128k bitrate — both are then wrapped in the 3G2 container, which is built on the MPEG-4 Part 12 base format. The -movflags +faststart flag relocates the 3G2 metadata (moov atom) to the beginning of the file, enabling progressive playback over slow CDMA mobile networks before the entire file has downloaded. Because the codec pairing (H.264 + AAC) is shared between FLV and 3G2, quality loss is primarily a function of the CRF setting rather than any fundamental codec mismatch.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg binary — the open-source multimedia processing engine that handles the actual decoding of the FLV input and encoding of the 3G2 output. In the browser version, this runs as FFmpeg.wasm compiled to WebAssembly, with no server involvement.
-i input.flv Specifies the input file as an FLV (Flash Video) container. FFmpeg will automatically detect whether the video stream inside is H.264, Sorenson Spark, or VP6, and select the appropriate decoder before re-encoding to H.264 for the 3G2 output.
-c:v libx264 Re-encodes the video stream using the libx264 encoder, producing H.264/AVC video compatible with the 3G2 container and the CDMA mobile devices 3G2 was designed for. This applies regardless of whether the source FLV already contains H.264 video.
-c:a aac Encodes the audio stream as AAC (Advanced Audio Coding), which is the standard audio codec for 3G2 files and widely supported on CDMA mobile hardware. If the FLV source contained MP3 audio, this flag ensures it is transcoded to the more mobile-compatible AAC format.
-crf 23 Sets the Constant Rate Factor for the H.264 encoder to 23, the FFmpeg default, which targets a balanced quality-to-filesize ratio suitable for most FLV source material. Lower values (e.g., 18) increase quality and file size; higher values (e.g., 28) reduce both, which may be desirable given 3G2's low-bitrate CDMA network context.
-b:a 128k Sets the AAC audio output bitrate to 128 kilobits per second, a practical ceiling for 3G2 audio that balances acceptable audio quality against the bandwidth constraints of CDMA mobile networks the format was designed to serve.
-movflags +faststart Moves the moov atom (the 3G2 file's structural index) to the beginning of the output file. This is critical for 3G2 files delivered over CDMA networks, as it allows mobile devices to begin playback progressively as the file downloads, rather than waiting for the entire file to arrive.
output.3g2 Specifies the output filename with the .3g2 extension, which tells FFmpeg to mux the encoded H.264 video and AAC audio into the 3G2 container format defined by the 3GPP2 mobile standard.

Common Use Cases

  • Converting archived Flash-era video content (downloaded before Adobe Flash EOL) into a format playable on older CDMA smartphones and feature phones that support 3G2 but not FLV.
  • Preparing low-bitrate versions of FLV video lectures or training clips for distribution over 3GPP2 mobile networks where bandwidth is constrained.
  • Repurposing FLV recordings from legacy screen capture or webinar software into 3G2 files compatible with older CDMA carrier video messaging services.
  • Testing mobile video compatibility by converting FLV prototype content to 3G2 to verify playback behavior on CDMA device emulators or test handsets.
  • Archiving Flash video game cutscenes or promotional clips from the mid-2000s into a more structurally modern MP4-family container (3G2) while preserving H.264 video quality.
  • Batch-preparing FLV files from a legacy CMS export into 3G2 format for a mobile carrier portal that specifically requires the 3G2 container.

Frequently Asked Questions

Because both formats support H.264 video, the conversion is not a worst-case transcode between incompatible codecs. However, a full re-encode does occur (the video is not simply remuxed), so some generation loss is introduced. At the default CRF 23 setting, the quality difference is generally imperceptible for typical web video content. If your original FLV was already heavily compressed, lowering the CRF value (e.g., to 18) will preserve more detail at the cost of a larger 3G2 file.
3G2 was designed for low-bitrate CDMA networks, so the format inherently targets efficient delivery. If your FLV source used a higher bitrate or a less efficient codec like Sorenson Spark (FLV1), re-encoding to H.264 in 3G2 at CRF 23 will typically produce a meaningfully smaller file. Additionally, the audio is capped at 128k AAC, which may be lower than the source FLV's audio bitrate. If the output is unexpectedly larger, your FLV source was likely already a very efficiently compressed H.264 file.
FLV supports limited metadata (such as onMetaData cue points used for ad markers or chapter navigation) and does not natively support subtitle tracks. 3G2 also lacks support for subtitles and chapters. As a result, this conversion does not lose subtitle or chapter data — neither container supports those features. Basic stream metadata (duration, bitrate) is preserved in the 3G2 output by the FFmpeg muxer.
The +faststart flag moves the moov atom — the index that describes the file's structure — to the very beginning of the 3G2 file. Without it, the moov atom sits at the end, meaning a mobile device or streaming server must download the entire file before playback can begin. For 3G2 files intended for CDMA network delivery, faststart is essential to enable progressive download and near-instant playback start on mobile connections.
To change video quality, adjust the -crf value in the command: lower numbers (e.g., -crf 18) produce higher quality and larger files, while higher numbers (e.g., -crf 28) produce smaller files with more compression artifacts. To change audio quality, replace the -b:a 128k value with another bitrate such as 96k for smaller files or 192k for better audio fidelity. Note that 3G2's design intent for low-bitrate mobile networks makes values above 128k audio and CRF below 18 somewhat at odds with the format's typical use case.
Yes. On Linux or macOS, you can loop over all FLV files in a directory with: for f in *.flv; do ffmpeg -i "$f" -c:v libx264 -c:a aac -crf 23 -b:a 128k -movflags +faststart "${f%.flv}.3g2"; done. On Windows Command Prompt, use: for %f in (*.flv) do ffmpeg -i "%f" -c:v libx264 -c:a aac -crf 23 -b:a 128k -movflags +faststart "%~nf.3g2". The browser-based tool processes one file at a time, so the FFmpeg command is the recommended approach for bulk conversions.

Technical Notes

FLV is a legacy Adobe container that may contain video encoded as H.264 (AVC), Sorenson Spark (FLV1), or VP6, alongside MP3 or AAC audio. This tool always re-encodes the video to H.264 via libx264 and audio to AAC, regardless of the source codecs — there is no stream copy path. This is necessary because 3G2 requires codecs sanctioned by the 3GPP2 specification. The 3G2 container is a strict profile of the MPEG-4 Part 12 ISO base media file format, closely related to MP4 and MOV, which is why -movflags +faststart (an MP4-family muxer option) applies here. One known limitation is that 3G2 caps practical audio bitrate support on older CDMA devices well below 192k, so the 128k AAC default is deliberately conservative and appropriate. Neither FLV nor 3G2 supports transparency, embedded subtitle tracks, multiple audio streams, or chapter navigation, so none of these features are at risk of silent data loss during conversion. If your FLV source contains VP6 video (common in older Flash content), expect a more noticeable quality improvement in the 3G2 output, as H.264 is significantly more efficient than VP6 at equivalent bitrates.

Related Tools