Extract Audio from MPEG to AAC — Free Online Tool
Extract the audio track from an MPEG video file and save it as an AAC (.aac) file — discarding the MPEG-1/2 video stream entirely and re-encoding the audio (typically MP2) into AAC, the modern successor to MP3 used natively by Apple devices, YouTube, and most streaming platforms.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your MPEG 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
MPEG files typically carry MP2 (MPEG Audio Layer II) audio alongside MPEG-1 or MPEG-2 video. Because AAC and MP2 are completely different audio codecs, a direct stream copy is not possible — the audio must be fully decoded from MP2 and then re-encoded into AAC using FFmpeg's native AAC encoder. The video stream is explicitly discarded with the -vn flag and is never processed, which keeps conversion fast. The result is a standalone .aac file containing only the re-encoded audio, sized significantly smaller than the original MPEG since the video data is gone.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg tool. In this browser-based tool, FFmpeg runs locally via WebAssembly (FFmpeg.wasm) — your MPEG file never leaves your device. |
-i input.mpeg
|
Specifies the input MPEG file. FFmpeg reads the MPEG container, which typically contains an MPEG-1 or MPEG-2 video stream and an MP2 audio stream. |
-vn
|
Disables video output entirely, instructing FFmpeg to skip over the MPEG-1/2 video stream without decoding it. Since the goal is to extract only the audio, this prevents any video data from being written to the output file. |
-c:a aac
|
Sets the audio codec to FFmpeg's built-in AAC encoder. Because the source audio is MP2 and the output must be AAC, re-encoding is required — the MP2 audio is fully decoded and then compressed into AAC-LC format. |
-b:a 128k
|
Sets the AAC output audio bit rate to 128 kilobits per second. This is a common streaming-quality setting for AAC; since AAC is more efficient than the MP2 typically found in MPEG files, 128k AAC generally sounds comparable to MP2 at higher bit rates. |
output.aac
|
The output filename with a .aac extension, which tells FFmpeg to write a raw AAC bitstream in ADTS format. This file contains only the re-encoded audio with no video, and is compatible with most modern media players, browsers, and Apple devices. |
Common Use Cases
- Extract the audio commentary or narration from an archived MPEG broadcast recording for use in a podcast or radio segment
- Pull the audio from a legacy DVD-sourced MPEG file to create an AAC audio track compatible with iTunes, iPhone, or Apple Music
- Convert the MP2 audio from an old MPEG news clip or broadcast reel into AAC so it can be uploaded and played on YouTube or Spotify
- Strip the audio from an MPEG training or instructional video to create a standalone audio file for mobile listening when video is unnecessary
- Prepare an AAC audio file from an MPEG source for use in a video editing project where AAC is the required audio format for the timeline
- Archive the audio content of an aging MPEG file in AAC format, which offers better compression efficiency than MP2 at the same perceived quality
Frequently Asked Questions
MPEG files typically store audio as MP2 (MPEG Audio Layer II), which is a completely different codec from AAC. Because the two codecs use different compression algorithms and container structures, FFmpeg cannot simply copy the raw MP2 bytes into an AAC file — it must fully decode the MP2 audio back to uncompressed PCM and then re-encode it into AAC. This is unlike, say, rewrapping an MKV to MP4 where the same codec can often be stream-copied. The re-encoding step means there is a small additional generation of lossy compression applied.
Yes, some quality loss is unavoidable because both MP2 (the typical MPEG audio codec) and AAC are lossy formats, and you are decoding one lossy format and re-encoding into another — a process sometimes called 'generation loss.' However, AAC is a significantly more efficient codec than MP2, meaning that at the same bit rate (e.g., 128k), AAC generally sounds better than MP2. If your MPEG's original MP2 audio was encoded at a high bit rate such as 192k or 256k, the default output of 128k AAC should still be perceptibly transparent for most listeners.
Replace the '-b:a 128k' portion of the command with your desired bit rate. For example, 'ffmpeg -i input.mpeg -vn -c:a aac -b:a 192k output.aac' will produce higher quality AAC at 192 kbps, and 256k or 320k are also valid options. For most music or broadcast audio, 192k AAC is considered high quality and indistinguishable from the source for most listeners. If the original MP2 audio in the MPEG was only 128k, raising the AAC bit rate above that won't recover detail that was already discarded.
Yes. On Linux or macOS, you can run a shell loop: 'for f in *.mpeg; do ffmpeg -i "$f" -vn -c:a aac -b:a 128k "${f%.mpeg}.aac"; done'. On Windows Command Prompt, use: 'for %f in (*.mpeg) do ffmpeg -i "%f" -vn -c:a aac -b:a 128k "%~nf.aac"'. This applies the same extraction settings to every MPEG file in the current directory, producing a matching .aac file for each one.
Yes. AAC is Apple's preferred audio format and is natively supported across all Apple devices, iTunes, Apple Music, and iOS. The FFmpeg native AAC encoder used in this command produces standards-compliant AAC-LC (Low Complexity) audio, which is the profile Apple devices expect. If you need maximum Apple compatibility, especially for use in GarageBand or Final Cut Pro, you could optionally use 'libfdk_aac' instead of 'aac' in the command if your FFmpeg build includes it, as libfdk_aac is generally regarded as a higher-quality encoder.
The '-vn' flag explicitly tells FFmpeg to ignore and discard all video streams from the MPEG file. FFmpeg never decodes the MPEG-1 or MPEG-2 video data, which means the video content is not processed at all and does not appear in the output file. This makes the conversion significantly faster than a full transcode and reduces output file size to only the audio. The original MPEG file is not modified — only the extracted audio is written to the new .aac file.
Technical Notes
MPEG containers (.mpeg, .mpg) commonly encode audio as MP2 at bit rates ranging from 128k to 384k, particularly in broadcast and DVD-sourced content. MP2 has largely been superseded by AAC, which achieves comparable perceived quality at roughly half the bit rate. When FFmpeg performs this extraction, it uses its built-in native AAC encoder (not libfdk_aac), which is license-free and produces good results, though libfdk_aac is generally considered to produce slightly better quality at low bit rates if available in your FFmpeg build. The output .aac file is a raw AAC bitstream (ADTS format), not wrapped in an MP4/M4A container — this means metadata tags (artist, title, album) embedded in the MPEG file are typically not preserved in the raw .aac output. If metadata preservation is important, consider outputting to .m4a instead by changing the output filename: 'output.m4a'. Some older media players may not support raw ADTS AAC files; in those cases, an M4A wrapper is more broadly compatible. Channel layout (stereo, mono) is preserved from the source MP2 audio during re-encoding.