Convert M2TS to 3GPP — Free Online Tool
Convert M2TS Blu-ray and AVCHD video files to 3GP format optimized for mobile playback. This tool re-encodes the video using H.264 and compresses audio to AAC at mobile-friendly bitrates, shrinking large high-definition transport stream files down to compact sizes compatible with 3G-era and modern mobile devices.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your M2TS 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
M2TS files are MPEG-2 Transport Stream containers typically carrying H.264 or MPEG-2 video alongside multi-channel audio (AC-3, DTS, or TrueHD) at high bitrates suited for Blu-ray or AVCHD. Converting to 3GP requires full re-encoding: the video is transcoded to H.264 using libx264 at a controlled quality level (CRF 23), and the audio — which is almost certainly a codec the 3GP container cannot carry — is transcoded to AAC at 64k, a bitrate designed for mono or low-bandwidth stereo on mobile networks. The 3GP container itself is a restricted profile of MP4, so the output is finalized with the +faststart flag, which moves the moov atom to the beginning of the file to enable progressive streaming before the full file is downloaded. Subtitles, extra audio tracks, and chapter markers present in the M2TS are dropped, as 3GP does not support them.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg binary. In this browser-based tool, this runs via FFmpeg.wasm compiled to WebAssembly, executing entirely in your browser with no server upload. The same command works identically in a local terminal if FFmpeg is installed on your system. |
-i input.m2ts
|
Specifies the input M2TS file — a Blu-ray BDAV or AVCHD transport stream container. FFmpeg automatically detects the M2TS packet structure (including the 4-byte timestamp prefix) and demuxes all video, audio, and subtitle streams for processing. |
-c:v libx264
|
Re-encodes the video stream using the libx264 H.264 encoder. This is necessary because the M2TS transport stream wrapper must be removed and the video repackaged for the 3GP container, even if the source video is already H.264. |
-c:a aac
|
Transcodes the audio to AAC-LC using FFmpeg's built-in AAC encoder. This replaces whatever audio codec was in the M2TS source — commonly AC-3 (Dolby Digital), DTS, or TrueHD — since 3GP does not support those codecs. The result is a single stereo AAC track. |
-crf 23
|
Sets the H.264 Constant Rate Factor to 23, the default quality level for libx264. For 3GP output, this balances visual quality against file size well; the resulting bitrate will vary depending on the complexity of the source footage, but will be far lower than the original M2TS stream. |
-b:a 64k
|
Sets the AAC audio bitrate to 64 kilobits per second, the standard default for 3GP mobile audio. This is adequate for stereo speech and music at mobile quality levels, and matches the low-bandwidth constraints 3GP was designed for on 3G networks. |
-movflags +faststart
|
Moves the MP4/3GP moov atom (the metadata index) to the beginning of the output file after encoding completes. This is critical for 3GP files used in mobile streaming, as it allows playback to begin before the entire file is received over a slow 3G connection. |
output.3gp
|
Specifies the output filename with the .3gp extension, which tells FFmpeg to use the 3GPP container format. The 3GP muxer applies the restricted codec profile and container structure required by the Third Generation Partnership Project specification. |
Common Use Cases
- Transferring a Blu-ray rip or AVCHD camcorder recording to an older mobile phone that only supports 3GP playback
- Compressing a high-definition M2TS home video into a small 3GP file to send via MMS or upload to a low-bandwidth platform
- Archiving a video clip from a Blu-ray disc in a legacy mobile format for compatibility with 3G network media servers or older multimedia kiosks
- Creating a lightweight preview or proxy version of a large M2TS broadcast or AVCHD recording for quick review on a mobile device
- Converting AVCHD footage from a Sony or Panasonic camcorder to 3GP for embedding in presentations or apps targeting feature-phone environments
- Reducing multi-gigabyte Blu-ray video files to small 3GP clips for distribution on storage-constrained embedded or IoT devices
Frequently Asked Questions
Yes — this conversion involves meaningful quality reduction by design. M2TS files on Blu-ray carry video at 20–40 Mbps with lossless or high-quality multi-channel audio, while 3GP targets mobile devices and uses much lower bitrates. The default CRF 23 for H.264 video is a reasonable quality setting, but the 64k AAC audio is quite compressed and will noticeably reduce fidelity compared to the original AC-3 or DTS track. If your source is 1080p HD, the spatial detail will be preserved by the codec but the file will be dramatically smaller, which is the entire purpose of the format.
The 3GP format does not support multi-channel audio in the way Blu-ray M2TS files do. During conversion, FFmpeg will take the first audio track from the M2TS — typically a 5.1 or 7.1 AC-3 or DTS stream — and downmix it to stereo AAC at 64k. The surround channels are mixed down automatically by FFmpeg's default channel mapping. If your source has multiple language audio tracks, only the first track will be included in the output, as 3GP does not support multiple audio tracks.
No. While M2TS supports PGS (Blu-ray bitmap subtitles) and other subtitle streams, the 3GP container format does not support subtitle tracks at all. Any subtitles present in the source file will be silently dropped during conversion. If you need subtitles, you would need to hard-burn them into the video stream using a different tool or FFmpeg filter pipeline before converting, which is not part of this default command.
To adjust video quality, change the CRF value — lower numbers mean higher quality and larger files, higher numbers mean more compression. For 3GP, values between 18 (near-visually lossless) and 28 (more compressed) are practical. For example, use '-crf 28' for a smaller file. To adjust audio quality, change the '-b:a' value: '96k' will sound noticeably better than the default '64k', while '32k' will produce a very small but lower-fidelity audio stream suitable for voice-only content.
The 3GP container is a restricted variant of the MP4/ISOBMFF format, which stores playback metadata in a structure called the moov atom. By default, FFmpeg writes this atom at the end of the file after encoding is complete. The '+faststart' flag triggers a post-processing step that moves the moov atom to the beginning of the file, allowing media players and mobile browsers to begin playing the video before the entire file has been downloaded. This is especially important for 3GP files intended for streaming over 3G mobile networks.
Yes. On Linux or macOS, you can loop over all M2TS files in a directory with: for f in *.m2ts; do ffmpeg -i "$f" -c:v libx264 -c:a aac -crf 23 -b:a 64k -movflags +faststart "${f%.m2ts}.3gp"; done. On Windows Command Prompt, use: for %f in (*.m2ts) do ffmpeg -i "%f" -c:v libx264 -c:a aac -crf 23 -b:a 64k -movflags +faststart "%~nf.3gp". Each file is processed sequentially, which is practical given the intensive re-encoding required for large M2TS sources.
Technical Notes
M2TS uses the MPEG-2 Transport Stream multiplexing layer, which includes a 4-byte timestamp prefix per packet (the 'M2TS' variant versus plain MPEG-TS). FFmpeg handles this demuxing transparently. The source video in M2TS is frequently already H.264 (AVC), but because the 3GP container demands a specific H.264 profile and the transport stream wrapping must be removed entirely, the video cannot simply be stream-copied — it must be re-encoded. The output 3GP file uses the MP4 base format with a restricted codec set: libx264 for video and AAC-LC for audio, which are the most compatible options for 3GP. The 3GP specification technically allows MPEG-4 Part 2 video (libxvid) and AMR audio for ultra-low bitrate scenarios, but H.264 + AAC provides far better quality-to-size ratios on modern devices. Note that very high resolution M2TS sources (1080p or 4K) will be encoded at their native resolution unless you add a scale filter (e.g., '-vf scale=640:-2'), which may be desirable since 3GP was originally designed for QCIF (176x144) and CIF (352x288) resolutions on 3G handsets.