Convert MTS to RMVB — Free Online Tool
Convert AVCHD camcorder footage (.mts) to RMVB format by re-encoding the H.264 video stream and transcoding the AC-3 or AAC audio into an RMVB-compatible container. This is useful for sharing camcorder recordings on legacy platforms and media players that support RealMedia's variable bitrate format.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your MTS 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
MTS files from Sony or Panasonic camcorders use the MPEG-2 Transport Stream container, carrying H.264 video and either AC-3 or AAC audio. During this conversion, the H.264 video is re-encoded using libx264 with CRF 23 quality — a fresh encode rather than a simple remux — because RMVB uses its own container structure that requires a clean encode pass rather than a raw stream copy. The audio is transcoded to AAC at 128k bitrate. The output RMVB container is technically a RealNetworks variable bitrate format, but in practice FFmpeg writes it with standard H.264 and AAC streams inside, making it playable on media players that support RMVB files.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg tool, which handles reading the MPEG-2 Transport Stream MTS container, decoding the AVCHD H.264 and audio streams, and writing the output RMVB file. |
-i input.mts
|
Specifies the input AVCHD camcorder file in MTS format. FFmpeg will detect the MPEG-2 Transport Stream container and identify the H.264 video and AC-3 or AAC audio tracks inside. |
-c:v libx264
|
Re-encodes the video stream using the libx264 encoder, producing H.264 video compatible with the RMVB container. This is a full re-encode of the camcorder's original H.264 stream rather than a copy. |
-c:a aac
|
Transcodes the audio to AAC using FFmpeg's built-in AAC encoder. This is necessary because the source MTS may contain AC-3 audio which the RMVB container does not support, and AAC is the primary audio codec available for RMVB output. |
-crf 23
|
Sets the Constant Rate Factor for the libx264 video encode to 23, which is the default quality level. For camcorder footage this balances file size and visual fidelity; lower values like 18 will produce sharper output at the cost of a larger RMVB file. |
-b:a 128k
|
Sets the AAC audio bitrate to 128 kilobits per second, suitable for typical camcorder stereo audio. If the original MTS had high-quality surround audio, increasing this to 192k will better preserve audio detail in the RMVB output. |
output.rmvb
|
Specifies the output filename with the .rmvb extension, telling FFmpeg to write the encoded H.264 video and AAC audio into the RealMedia Variable Bitrate container format. |
Common Use Cases
- Sharing AVCHD camcorder footage with friends or family who use older media players like RealPlayer or hardware players that recognize the RMVB extension but cannot read raw MTS files
- Archiving vacation or event footage from a Sony or Panasonic camcorder into a format compatible with older Chinese media players and set-top boxes that were widely distributed with RMVB support
- Compressing large AVCHD clips from a camcorder into a smaller RMVB file for distribution over slower networks or storage on capacity-limited devices
- Converting camcorder recordings for use on legacy software editing pipelines or media management systems that index and catalog RMVB files but cannot handle MPEG-2 Transport Stream
- Re-packaging MTS footage captured during broadcast or event recording into RMVB for compatibility with specific media server software configured to serve RealMedia content
Frequently Asked Questions
Yes, this is a lossy conversion. The H.264 video from your AVCHD camcorder is fully re-encoded rather than copied, which means some quality is lost compared to the original MTS file. The default CRF 23 setting is a reasonable balance between file size and visual quality for most camcorder footage. If preserving maximum quality is critical, lower the CRF value (e.g., CRF 18) to reduce compression at the cost of a larger output file.
RMVB is historically associated with RealNetworks' proprietary RealVideo and RealAudio codecs, but the container format itself can technically hold other codec streams. FFmpeg writes H.264 video and AAC audio into the RMVB container because it does not support the original proprietary RealVideo encoder. The resulting file uses the .rmvb extension and container structure, so it will open in many RMVB-compatible players, but players that strictly require RealVideo streams may not play it correctly.
If your AVCHD camcorder recorded AC-3 (Dolby Digital) audio, it will be transcoded to AAC at 128k bitrate during this conversion, since RMVB as handled by FFmpeg supports AAC and MP3 but not AC-3. This means surround sound information encoded in AC-3 may be downmixed or lost depending on the channel layout. For stereo camcorder footage this typically has minimal audible impact.
Yes. The -crf 23 flag controls video quality, where lower numbers mean better quality and larger files, and higher numbers mean smaller files with more compression. For high-quality camcorder footage you might use -crf 18, while for smaller file sizes suitable for online sharing you could use -crf 28. You can also adjust audio bitrate by changing -b:a 128k to values like 96k for smaller files or 192k for better audio fidelity.
No. While MTS files can carry subtitle streams and FFmpeg can read them, the RMVB container as supported by FFmpeg does not include subtitle support. Any subtitle or closed caption data embedded in your MTS file will be dropped during the conversion. If you need subtitles, consider converting to a format like MKV or MP4 instead.
You can batch process multiple MTS files using a shell loop. On Linux or macOS, run: for f in *.mts; do ffmpeg -i "$f" -c:v libx264 -c:a aac -crf 23 -b:a 128k "${f%.mts}.rmvb"; done. On Windows Command Prompt, use: for %f in (*.mts) do ffmpeg -i "%f" -c:v libx264 -c:a aac -crf 23 -b:a 128k "%~nf.rmvb". Each file will be individually re-encoded, so processing time scales with the total duration of your footage.
Technical Notes
MTS is a strict broadcast-oriented MPEG-2 Transport Stream container designed for camcorder recording reliability, carrying H.264 (AVC) video typically at 1080i or 720p and either AC-3 or AAC audio, often with multiple audio tracks for different channels or languages. RMVB, by contrast, is a variable bitrate extension of RealNetworks' RealMedia container historically used for internet video distribution — primarily in East Asian markets — and supports only a single audio track with no subtitle streams. The conversion requires a full video re-encode because the container structures are incompatible for stream copying. Using libx264 with CRF encoding means the output bitrate will vary based on scene complexity in your camcorder footage rather than being fixed, which is appropriate for the variable bitrate nature of the RMVB format. Multiple audio tracks present in the MTS file will be reduced to a single merged or primary track in the RMVB output. Chapter markers, which MTS can store, are not preserved. For files larger than 1GB — common with extended AVCHD camcorder sessions — the displayed FFmpeg command is particularly valuable for running the conversion locally without browser memory constraints.