Convert MPEG to MP3 — Free Online Tool

Extract and convert the audio track from an MPEG file to MP3 by decoding the embedded MP2 or AAC audio stream and re-encoding it using the LAME encoder (libmp3lame). This is ideal for pulling audio from legacy MPEG-1 or MPEG-2 video files — such as VCD rips or broadcast recordings — into a universally compatible MP3 file.

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

MPEG files typically carry audio encoded in MP2 (MPEG Audio Layer II) format, which is closely related to but distinct from MP3 (MPEG Audio Layer III). During this conversion, FFmpeg discards the MPEG-1 or MPEG-2 video stream entirely and decodes the audio stream — whether MP2, MP3, or AAC — back to raw PCM audio in memory. That raw audio is then re-encoded from scratch using the LAME MP3 encoder at 128k bitrate, producing an output .mp3 file. Because the source audio is almost always MP2 rather than MP3, this is a full transcode between two different audio codecs, not a simple stream copy.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg tool. In this browser-based tool, it runs via FFmpeg.wasm (WebAssembly) entirely in your browser — the same command can be pasted into a terminal on your desktop for files over 1GB.
-i input.mpeg Specifies the input MPEG file, which may contain an MPEG-1 or MPEG-2 video stream alongside an MP2, MP3, or AAC audio stream. FFmpeg will demux both streams but only the audio will be used in this conversion.
-c:a libmp3lame Selects the LAME encoder to re-encode the audio as MP3 (MPEG Audio Layer III). This is necessary because the source MPEG file's audio is almost always MP2 (Layer II), a distinct codec that cannot be placed directly into an .mp3 file without re-encoding.
-b:a 128k Sets the MP3 output audio bitrate to 128 kilobits per second using constant bitrate (CBR) mode. This is a widely compatible setting suitable for general listening; increase to 192k or 320k if the source MPEG audio was high-quality broadcast audio and you want to minimize additional quality loss from the transcode.
output.mp3 Defines the output filename and container. The .mp3 extension tells FFmpeg to write a bare MP3 file (no container wrapper), which automatically causes the MPEG video stream to be dropped since the MP3 format is audio-only.

Common Use Cases

  • Extracting the audio commentary or soundtrack from a VCD (Video CD) rip stored as an MPEG-1 file for archiving or podcast use
  • Pulling music or dialogue from legacy MPEG-2 broadcast recordings captured from TV tuner cards in the early 2000s
  • Converting MPEG files from old camcorders or DVD authoring projects into MP3 so the audio can be imported into a DAW or audio editor
  • Creating an MP3 audio backup of a home video stored in MPEG format before transcoding the video to a modern container like MP4
  • Extracting spoken-word content from educational or training MPEG videos to load onto an MP3 player or smartphone without video support
  • Stripping the audio from MPEG files used in legacy kiosk or presentation systems to repurpose the narration in a new project

Frequently Asked Questions

Yes, some quality loss is unavoidable. The original MPEG file almost certainly contains MP2 audio, which must be fully decoded to raw PCM and then re-encoded as MP3 — a generation-loss transcode between two lossy codecs. At 128k bitrate the result is generally acceptable for speech and casual listening, but audiophiles may notice artifacts, especially if the source MP2 was already encoded at a low bitrate. To minimize loss, increase the output bitrate to 192k or 320k using the -b:a flag.
The MP3 container format only accepts MPEG Audio Layer III (MP3) encoded audio, but MPEG video files almost universally store audio as MPEG Audio Layer II (MP2). Because MP2 and MP3 are different codecs, a direct stream copy into an .mp3 file is not possible — the audio must be decoded and re-encoded. If the source MPEG file happens to already contain MP3 audio, FFmpeg could technically stream-copy it, but this is uncommon in real-world MPEG files.
Replace the -b:a 128k value in the command with a higher bitrate. For example, use -b:a 192k for a good balance of size and quality, or -b:a 320k for the highest quality MP3 the LAME encoder supports. The full command would look like: ffmpeg -i input.mpeg -c:a libmp3lame -b:a 320k output.mp3. Keep in mind that raising the bitrate beyond the quality of the source MP2 audio won't recover lost detail, but it will reduce any additional compression artifacts introduced by the MP3 encoder.
MPEG video files rarely contain the kind of ID3 metadata tags (artist, album, title) used by MP3 files, so there is typically nothing to carry over. FFmpeg will not automatically generate ID3 tags from the MPEG file's container metadata. If you want to add ID3 tags to the resulting MP3, you can use a tool like id3v2 or a music library manager after conversion.
Conversion is fast since only the audio stream is being processed — the video is simply discarded rather than transcoded. The output MP3 will be dramatically smaller than the source MPEG file because the entire video track (which accounts for the vast majority of the file's size) is removed. A 700MB MPEG-1 VCD file, for example, might yield an MP3 of just 4–10MB depending on the video's duration and the chosen audio bitrate.
Yes. On Linux or macOS you can run a shell loop: for f in *.mpeg; do ffmpeg -i "$f" -c:a libmp3lame -b:a 128k "${f%.mpeg}.mp3"; done. On Windows Command Prompt use: for %f in (*.mpeg) do ffmpeg -i "%f" -c:a libmp3lame -b:a 128k "%~nf.mp3". This applies the same codec and bitrate settings to every MPEG file in the folder, producing a matching MP3 for each one.

Technical Notes

MPEG-1 and MPEG-2 containers mandate MP2 (MPEG Audio Layer II) as their primary audio codec, which is why the FFmpeg command must use -c:a libmp3lame to transcode rather than stream-copy. MP2 operates at a fixed bitrate and uses a 32-subband filter bank, while MP3 adds a hybrid filter bank and Huffman coding for better compression efficiency — meaning MP3 can achieve similar perceptual quality at a lower bitrate than MP2. The default output bitrate of 128k is suitable for most casual uses but may be insufficient if the source MP2 was encoded at 224k or 256k (common for broadcast MPEG-2). No video data is written to the output because the MP3 format is audio-only and FFmpeg automatically omits the video stream when the output container cannot hold it. MPEG files do not support subtitle tracks or chapter markers, so no metadata of that kind is at risk of being lost. The -b:a flag sets a constant bitrate (CBR); if you prefer variable bitrate encoding with the LAME encoder for potentially better quality-per-byte, you can substitute -q:a 2 (VBR, approximately 190k average) in place of -b:a 128k.

Related Tools