Convert MPG to 3GPP — Free Online Tool

Convert MPG files — the legacy MPEG-1/2 video format used for VCDs and DVDs — into 3GPP (.3gp), the mobile-optimized container designed for 3G-era phones and low-bandwidth streaming. The conversion re-encodes the MPEG-2 video stream using H.264 (libx264) and transcodes MP2 audio to AAC, producing a file dramatically smaller than the original and compatible with mobile devices.

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

MPG files typically carry MPEG-2 video and MP2 audio, both of which are incompatible with the 3GPP container — so this conversion requires full re-encoding of both streams. The MPEG-2 video is decoded frame-by-frame and re-encoded using the H.264 codec (libx264) with a CRF of 23, a perceptually-tuned quality target that typically reduces file size by 60–80% compared to MPEG-2 at equivalent visual quality. The MP2 audio is decoded and re-encoded as AAC at 64k, which is efficient enough for voice and acceptable for music at mobile playback volumes. The -movflags +faststart flag reorganizes the 3GP file's metadata to the front of the file, enabling progressive streaming before the full download completes — an important feature given 3GPP's mobile streaming heritage.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg tool. In this browser-based tool, the same FFmpeg logic runs locally via WebAssembly (FFmpeg.wasm) — no files leave your device. The displayed command is identical to what you would run in a terminal on your desktop.
-i input.mpg Specifies the input file — an MPG container, which typically holds an MPEG-2 video stream and MP2 audio. FFmpeg reads the program stream or transport stream structure to demux these tracks before re-encoding.
-c:v libx264 Tells FFmpeg to re-encode the video using the libx264 H.264 encoder. Since MPEG-2 (the native MPG video codec) cannot be placed into a 3GP container, a full decode-and-reencode is required here — there is no stream copy shortcut for this format pair.
-c:a aac Re-encodes the audio using the AAC codec, replacing the MP2 audio from the source MPG. AAC is the standard audio codec for 3GPP files and is far more efficient than MP2, allowing clear audio reproduction at the low bitrates typical of mobile 3GP content.
-crf 23 Sets the Constant Rate Factor for the H.264 encoder to 23, which is the libx264 default and a good balance between visual quality and file size. Lower values (e.g., 18) yield higher quality and larger files; higher values (e.g., 28) compress more aggressively, which may be appropriate for content destined for slow 3G connections.
-b:a 64k Sets the AAC audio bitrate to 64 kilobits per second, reflecting 3GPP's mobile-first design philosophy of minimizing bandwidth. This is appropriate for speech and general content; increase to 96k or 128k if the source MPG contains music or high-quality stereo audio that warrants preservation.
-movflags +faststart Relocates the 3GP file's metadata (moov atom) to the beginning of the file after encoding completes. This is critical for mobile streaming use cases — it allows a media player to begin playback over a network connection before the entire 3GP file has finished downloading, which aligns with 3GPP's original design intent.
output.3gp The output filename with the .3gp extension, which signals FFmpeg to use the 3GPP container format. The .3gp extension is recognized by Android, feature phones, and most modern mobile media players as a 3GPP-compliant video file.

Common Use Cases

  • Archiving old VCD or DVD-ripped MPG home videos into a compact format that can be stored on or played back from an Android phone's local storage
  • Preparing legacy broadcast or surveillance MPG footage for review on a mobile device or field tablet where storage and bandwidth are constrained
  • Uploading historical MPG video content to older MMS-based systems or platforms that still accept 3GP as a submission format
  • Reducing the file size of large MPEG-2 recordings from set-top boxes or DVRs to share via messaging apps that impose strict file size limits
  • Converting MPG instructional or training videos into 3GP for distribution in regions where 3G mobile networks are the primary internet access point
  • Creating mobile-compatible previews of MPG source files for review workflows where editors need a lightweight proxy on their phone

Frequently Asked Questions

Yes, some quality loss is expected because both formats are lossy and this conversion requires full re-encoding — the original MPEG-2 stream cannot be copied into a 3GP container without transcoding. However, H.264 at CRF 23 is significantly more efficient than MPEG-2, meaning the output can look visually similar or even cleaner at a much smaller file size. The most visible quality difference tends to appear in fast motion or fine detail, particularly if the source MPG was already heavily compressed from a VCD rip.
64k AAC is the default for 3GPP output because 3GP was designed for 3G mobile networks with limited bandwidth, and AAC at 64k is noticeably more efficient than MP2 (the source format). For speech, voiceovers, or mono content, 64k AAC is generally adequate. For stereo music with high-frequency content, you may notice some compression artifacts. If audio quality matters, you can increase the -b:a value to 96k or 128k in the FFmpeg command without affecting video quality.
MPEG-2 (used in MPG) is an older codec with relatively low compression efficiency compared to H.264. H.264 can achieve equivalent visual quality at roughly half the bitrate of MPEG-2, and sometimes better. Additionally, 3GPP files are typically encoded at lower target bitrates suited for mobile playback rather than broadcast or DVD quality. The combination of a more efficient codec and a lower target bitrate means 3GP output is commonly 70–85% smaller than the source MPG.
By default, FFmpeg preserves the source frame rate and resolution during this conversion unless you explicitly add scaling or frame rate flags. However, many original MPG files from VCDs are 352×240 (NTSC) or 352×288 (PAL), which are already low resolutions well-suited for 3GP mobile playback. If your MPG is DVD-quality (720×480 or 720×576), the 3GP output will retain that resolution unless you add a -vf scale flag to downscale it.
Neither MPG nor 3GPP support embedded subtitle tracks or chapter markers in the way that MKV or MP4 do, so nothing is lost in that regard — MPG files rarely carry this metadata. Any closed-caption data embedded in the MPEG-2 video stream (common in broadcast recordings) will not be extracted or preserved in the 3GP output, as 3GPP has no standardized support for it.
To change video quality, modify the -crf value: 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. To resize the output — for example, to scale down to 320×240 for older mobile devices — add -vf scale=320:240 before the output filename. To increase audio quality, raise -b:a to 96k or 128k. A command for a high-quality, downscaled output would look like: ffmpeg -i input.mpg -c:v libx264 -crf 18 -c:a aac -b:a 96k -vf scale=320:240 -movflags +faststart output.3gp

Technical Notes

MPG is a transport or program stream container carrying MPEG-1 or MPEG-2 video, neither of which can be placed directly into a 3GP container — making full transcoding unavoidable for this conversion. The 3GP format is a restricted profile of the MP4/ISOBMFF container family, and the libx264 encoder used here produces Baseline or Main Profile H.264, which maximizes compatibility with older 3G-era handsets. Note that 3GP's AAC audio support assumes standard stereo or mono AAC-LC; HE-AAC or multi-channel configurations may not play on all devices. The -movflags +faststart flag is technically a post-processing step that moves the moov atom (metadata) to the beginning of the file, which is essential for web-based or network streaming scenarios where playback should begin before the file fully loads. One known limitation: if your source MPG contains telecined content (common in NTSC DVDs encoded at 29.97fps from 24fps film), the output may exhibit slight motion judder unless you add an inverse telecine filter (-vf fieldmatch,decimate) before encoding. File size is highly dependent on the source MPG's original bitrate — a high-bitrate MPEG-2 broadcast capture will compress dramatically, while a low-bitrate VCD rip may see more modest size reduction.

Related Tools