Convert RMVB to FLV — Free Online Tool
Convert RMVB (RealMedia Variable Bitrate) files to FLV (Flash Video) by re-encoding the RealVideo/RealAudio streams into H.264 video and AAC audio inside an Adobe Flash-compatible container. This is particularly useful for integrating legacy RealMedia content into older Flash-based web players or video pipelines that expect FLV input.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your RMVB 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
RMVB files use RealNetworks' proprietary RealVideo and RealAudio codecs, which are incompatible with the FLV container. This conversion therefore requires full re-encoding: the video stream is decoded from RealVideo and re-encoded using the H.264 (libx264) codec, while the audio is decoded from RealAudio and re-encoded as AAC. The output FLV container wraps these streams in a format natively understood by Adobe Flash Player. Because both the video and audio must be fully transcoded — not just remuxed — this process is CPU-intensive and will take longer than a simple container swap. The variable bitrate nature of the RMVB source means that encoding complexity varies across the timeline, so expect some frames to take longer to process than others.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg binary. In this browser-based tool, this runs as a WebAssembly (FFmpeg.wasm) instance entirely within your browser — no data is sent to a server. On your desktop, this calls your locally installed FFmpeg executable. |
-i input.rmvb
|
Specifies the input file in RMVB format. FFmpeg will use its built-in RealVideo (rv30/rv40) and RealAudio (cook) decoders to demux and decode the proprietary RealMedia streams from this variable-bitrate container. |
-c:v libx264
|
Re-encodes the decoded RealVideo stream using the H.264 codec via the libx264 library. This is required because RealVideo is not a valid codec inside an FLV container; H.264 is the modern, high-quality replacement and is supported by Flash Player 9 and above. |
-c:a aac
|
Re-encodes the decoded RealAudio stream as AAC using FFmpeg's native AAC encoder. RealAudio (typically the 'cook' codec in RMVB files) cannot be placed into an FLV container, so full audio transcoding to AAC is necessary. |
-crf 23
|
Sets the H.264 Constant Rate Factor to 23, which is the libx264 default and provides a good balance between visual quality and file size for typical RMVB source content. Lower values (e.g., 18) improve quality at the cost of larger files; higher values (e.g., 28) reduce file size with more visible compression. |
-b:a 128k
|
Sets the AAC audio output bitrate to 128 kilobits per second. This is a reasonable quality level for stereo audio and is typically equal to or higher than the original RealAudio bitrate in most distributed RMVB files, meaning audio quality should be preserved or slightly improved. |
output.flv
|
Defines the output filename and tells FFmpeg to use the FLV (Flash Video) container format, inferred from the .flv extension. The resulting file wraps the H.264 video and AAC audio streams in an Adobe Flash-compatible FLV structure. |
Common Use Cases
- Republishing archived RealMedia video content (e.g., early 2000s web video) to a legacy Flash-based CMS or video portal that only accepts FLV uploads.
- Migrating a library of RMVB-encoded Asian drama or anime downloads into FLV for playback in older Flash-based media players like JW Player 5 or Flowplayer.
- Preparing RMVB source footage for integration into a Flash application or ActionScript video project that reads FLV streams.
- Converting RMVB video files downloaded from older Chinese video-sharing platforms into FLV for compatibility with Flash-era desktop players such as FLV Player or KMPlayer's FLV mode.
- Archiving RealMedia broadcast recordings into FLV as an intermediate format before final re-encoding to a modern codec like H.265 or VP9.
- Testing video encoding pipelines that ingest FLV files by generating synthetic FLV test content from existing RMVB source material.
Frequently Asked Questions
Yes, some quality loss is inevitable because this conversion requires fully decoding the proprietary RealVideo codec and re-encoding it as H.264. The default CRF value of 23 produces a visually good result for most content, but since RMVB files are already lossy compressed, you are performing a generation loss re-encode. If the source RMVB has a low original bitrate (common for older distributed files), the output FLV will reflect those source artifacts. Using a lower CRF value like 18 can minimize introduced artifacts but will increase file size.
RMVB uses a variable bitrate scheme specifically designed to allocate more bits to complex scenes and fewer to static ones, which makes it very efficient for its era. When re-encoded to H.264 at CRF 23, the output size depends on your source content's actual complexity rather than a fixed bitrate. Action-heavy RMVB videos may produce larger FLV files, while talking-head or static content may shrink. The FLV container itself adds negligible overhead compared to the codec difference.
No. Adobe Flash Player reached end-of-life in December 2020 and has been removed from all major browsers. FLV playback in a browser now requires a JavaScript-based FLV player library such as flv.js, which can decode H.264-in-FLV using the browser's native Media Source Extensions API. If your goal is modern browser playback, converting to MP4 instead of FLV would be a more practical choice.
No. Neither the RMVB source handling in this tool nor the FLV container supports subtitle streams or chapter markers in this conversion pipeline. Any embedded RealText subtitles or navigation markers present in the RMVB file will be silently dropped. The FLV format has no standardized subtitle track support, so this data cannot be carried over regardless of FFmpeg flags.
Adjust the -crf value in the command. CRF (Constant Rate Factor) controls H.264 quality on a scale from 0 (lossless) to 51 (worst quality), with 23 as the default. To get higher quality output from your RMVB source, lower the number — for example, replace '-crf 23' with '-crf 18'. Be aware that since the RMVB is already lossy, setting CRF below the effective quality of your source will increase file size without recovering detail that was discarded during the original RealVideo encoding.
The single-file command shown on this page can be adapted for batch processing in a shell script. On Linux or macOS, you can run: for f in *.rmvb; do ffmpeg -i "$f" -c:v libx264 -c:a aac -crf 23 -b:a 128k "${f%.rmvb}.flv"; done. On Windows Command Prompt, use: for %f in (*.rmvb) do ffmpeg -i "%f" -c:v libx264 -c:a aac -crf 23 -b:a 128k "%~nf.flv". The in-browser tool on this page processes one file at a time and is best suited for files under 1GB.
Technical Notes
RMVB relies on RealNetworks' proprietary RealVideo 8/9/10 and RealAudio codecs, none of which are natively supported by the FLV container. FFmpeg includes decoder support for these codecs (via its internal rv30/rv40 and cook/atrac decoders), but full re-encoding to H.264 and AAC is mandatory — there is no fast remux path for this format pair. The FLV container in this command uses the libx264 video codec rather than the legacy Sorenson Spark (FLV1) or VP6 codecs that were historically associated with Flash Video; this produces significantly better quality at equivalent bitrates and is compatible with Flash Player 9+ and flv.js-based players. One known limitation is that RMVB files sometimes contain multiple audio streams or embedded RealText subtitle tracks — this conversion silently drops all but the first audio stream and discards subtitles entirely, as FLV has no support for these features. Metadata such as title and author tags from the RealMedia file header is also not mapped to FLV metadata. If your RMVB source uses RealAudio 28.8 or earlier mono codecs (common in very old files), expect the AAC output to sound noticeably cleaner due to the higher default audio bitrate of 128k.