Convert MPEG to WEBA — Free Online Tool
Convert MPEG video files to WEBA audio format, extracting and re-encoding the audio stream as Opus inside a WebM container. This tool strips the MPEG-1/2 video entirely and transcodes legacy MP2 or MP3 audio into modern Opus — ideal for repurposing broadcast or DVD-era video content as efficient web-ready audio.
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 MPEG-1 or MPEG-2 video alongside MP2 or MP3 audio. WEBA is a purely audio container — a WebM file with no video track — so this conversion is not a simple remux. FFmpeg discards the video stream entirely using the -vn flag, then transcodes the audio (usually MP2 or MP3) into Opus via the libopus encoder and wraps it in a WebM container with the .weba extension. Opus is a modern lossy codec designed for efficient streaming and web playback, so the output will be significantly smaller than the original MPEG file. The audio is decoded from its original format and re-encoded, meaning there is one generation of lossy-to-lossy transcoding involved.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg command-line tool. In this browser-based tool, the same FFmpeg logic runs via FFmpeg.wasm compiled to WebAssembly, executing entirely in your browser without any server upload. |
-i input.mpeg
|
Specifies the input file — your MPEG source, which may contain MPEG-1 or MPEG-2 video and MP2, MP3, or AAC audio. FFmpeg demuxes both the video and audio streams from this container before processing. |
-c:a libopus
|
Sets the audio encoder to libopus, which encodes the decoded MP2/MP3 audio from the MPEG source into the modern Opus format. Opus is the preferred codec for WEBA files due to its superior compression efficiency and native support in WebM. |
-b:a 128k
|
Sets the target audio bitrate for the Opus encoder to 128 kilobits per second. Opus at 128k provides good audio quality for most music and speech content extracted from MPEG recordings — higher than the typical perceptual threshold for Opus, which often sounds excellent even at 96k. |
-vn
|
Disables video output entirely, which is required because WEBA is an audio-only container. Without this flag, FFmpeg would attempt to include the MPEG-1/2 video stream in the output, which the WebM/WEBA format cannot accommodate. |
output.weba
|
Specifies the output filename with the .weba extension. FFmpeg uses this extension to recognize the target as an audio-only WebM container and applies the appropriate muxer, producing a file ready for HTML5 audio playback in modern browsers. |
Common Use Cases
- Extract the audio commentary or narration track from a legacy broadcast MPEG recording to publish as a web-streamed podcast or audio article
- Pull the soundtrack from a DVD-compatible MPEG video to create a lightweight Opus audio file for embedding in a modern web page using the HTML5 audio element
- Convert archived MPEG news footage or lecture recordings into WEBA files for efficient storage and low-latency browser playback without re-serving large video files
- Strip and re-encode audio from MPEG-1 video captures (e.g., old VCD rips) into Opus for use in web apps that require the WebM/Opus format specifically
- Reduce file size for audio derived from MPEG broadcast recordings where the video is no longer needed, leveraging Opus's superior compression over legacy MP2
- Prepare audio extracted from MPEG training or educational videos for integration into a Progressive Web App (PWA) that targets modern Chromium-based browsers
Frequently Asked Questions
Yes, there is a quality tradeoff because this is a lossy-to-lossy transcode: the original MP2 or MP3 audio in the MPEG file is decoded and then re-encoded as Opus. Each generation of lossy encoding introduces some degradation. However, at the default bitrate of 128k, Opus is exceptionally efficient and typically sounds better than MP2 at the same bitrate, so the perceptible quality loss is usually minimal for speech and acceptable for most music. If you need to preserve maximum fidelity, consider raising the bitrate to 192k or 256k in the tool settings.
Two factors account for the dramatic size reduction. First, the entire MPEG-1 or MPEG-2 video stream is discarded — video data typically makes up 85–95% of a video file's size. Second, Opus at 128k is a highly efficient modern codec, often producing smaller audio files than the MP2 audio found in MPEG files at equivalent perceived quality. The result is a file containing only compressed audio, which is naturally a fraction of the original MPEG's size.
Opus inside WebM (.weba) has excellent support in modern browsers — Chrome, Firefox, Edge, and Opera all support it natively. However, Safari on macOS and iOS has historically had limited or no native WebM/Opus support, though this has improved in recent versions. If you need broad cross-platform compatibility including older Apple devices, consider converting to an AAC-based format instead. For web applications targeting Chromium-based environments specifically, WEBA is an ideal choice.
Yes. The WEBA format supports both Opus and Vorbis audio codecs. Opus is the default here because it outperforms Vorbis at low-to-mid bitrates and is the recommended codec for new content. To use Vorbis instead, you can modify the FFmpeg command to use -c:a libvorbis and adjust the quality with -q:a (a scale of 0–10, where 5 is a good default). Vorbis may be preferable if you are targeting older WebM-compatible players that do not yet support Opus.
The bitrate is controlled by the -b:a flag in the command. The default is 128k, which is suitable for most use cases with Opus. To change it, replace 128k with your desired bitrate — for example, ffmpeg -i input.mpeg -c:a libopus -b:a 96k -vn output.weba for a smaller file, or -b:a 192k for higher fidelity audio from a high-quality MPEG source. Opus performs very well even at 64k for speech content, so you can go lower than typical MP2 bitrates while maintaining comparable clarity.
The command shown processes one file at a time, but you can adapt it for batch processing in a shell script. On Linux or macOS, use: for f in *.mpeg; do ffmpeg -i "$f" -c:a libopus -b:a 128k -vn "${f%.mpeg}.weba"; done. On Windows Command Prompt: for %f in (*.mpeg) do ffmpeg -i "%f" -c:a libopus -b:a 128k -vn "%~nf.weba". This is particularly useful for converting large archives of legacy broadcast MPEG content where the in-browser tool's 1GB file limit might apply.
Technical Notes
MPEG files use either MPEG-1 or MPEG-2 video codecs alongside MP2, MP3 (libmp3lame), or occasionally AAC audio. None of these audio formats can be carried in a WebM/WEBA container, so transcoding is always required — there is no possibility of a stream copy for the audio track in this conversion. The libopus encoder in FFmpeg targets a specified bitrate rather than a quality scale, and it operates with a default frame size optimized for low latency. One important limitation: MPEG files do not support embedded chapters, subtitle tracks, or multiple audio tracks, so there is no metadata of that kind to preserve or lose. Basic metadata tags (title, artist, etc.) may not transfer cleanly from MPEG to WEBA, as the two containers handle metadata differently — MPEG uses limited ID3-style tags while WebM uses Matroska-style key-value tags. The -vn flag is mandatory here since WEBA is an audio-only format; attempting to write video into a .weba file would cause an error. The output file's duration and timing are derived from the decoded audio stream, so accurate playback length is preserved even after the video is stripped.