How it works · updated 22 October 2026
MP3 to WAV, without a server in the middle.
The whole converter runs in this tab. This page explains what happens to the file, what the browser must support, and the cases where the tool refuses a file instead of writing a broken output.
mp3towav.net converts MP3 audio to WAV in the browser; the file is never uploaded.
The pipeline
- Read the container. The file is opened through the browser's File API and read lazily. The container index tells the tool which tracks exist and where their packets are.
- Drop the picture. For a video container, the video track is discarded without being decoded. A 4 GB ProRes file and a 40 MB MP4 take the same audio path.
- Decode the audio. AAC, MP3, Opus, Vorbis and FLAC are decoded with WebCodecs; PCM is read directly. The browser's own decoder is used, not a bundled copy of FFmpeg.
- Resample or remix only if needed. MP3 accepts 8–48 kHz and one or two channels. A 96 kHz source is resampled to 48 kHz; a 5.1 source is folded to stereo. Wider files are not silently written with an invalid header.
- Encode and write. MP3 output goes through a WASM build of LAME in a worker. WAV output is written as PCM. The result is a local Blob; no request carries the audio.
Browser requirements
| Browser | Minimum | Notes |
|---|---|---|
| Chrome / Edge | 94 | Desktop and Android. |
| Firefox | 130 | AAC decoding depends on the operating system; some Linux builds need system codecs. |
| Safari | 26 | macOS, iOS and iPadOS. Older Safari does not expose the audio decoder. |
If the browser does not expose AudioDecoder, the page says so before you pick a file. It does not
pretend to convert and fail at 99%.
What is supported — and what is not
| Input | Supported | Why |
|---|---|---|
| MP3 (MPEG-1 Layer III, CBR or VBR) | Yes | Decoded by the browser, written as PCM WAV. |
| 16-bit PCM WAV output | Yes | The safe default for DAWs and older hardware. |
| 32-bit float WAV output | Yes | Useful for further editing; twice the size of 16-bit. |
| Restoring detail the MP3 encoder discarded | No | No converter can rebuild what was removed. |
| DRM-protected files | No | FairPlay and similar schemes are not readable by browser tools. |
It will not fetch a URL, download from a streaming service, remove DRM, restore lost audio detail, or invent a video track. It also will not upload the file to a fallback server when the browser cannot decode it. A refusal is the honest outcome.
How to check that nothing is uploaded
- Open DevTools → Network, and clear the list.
- Drop a file into the converter.
- Filter by Fetch/XHR. The page's own assets and the analytics request may appear; no request carries the file.
- The browser reads the file through the File API, which does not create a network request.
You can also disconnect the network after the page has loaded and convert a file. The conversion itself does not need the network. The analytics request will fail silently.
Limits
- Memory, not upload quota. The input is read lazily, but the decoded audio and the output still occupy memory. Very large files can fail on a phone.
- MP3 is lossy. A bitrate above the source does not restore detail; it only avoids adding more loss than necessary.
- MP3 output is CBR only. The encoder exposes constant bitrate, not VBR. The page does not offer a VBR control it cannot honour.
- WAV output is large. At 44.1 kHz, 16-bit stereo it is about 10.1 MiB per minute. A file approaching 4 GiB needs RF64, and the tool warns before writing one.
- Metadata is best-effort. Basic RIFF INFO tags may be written; chapters and cover art are not part of the promise.
What was tested
The engine is exercised with fixed fixtures: MP4/AAC, MOV/AAC, MOV/ProRes with PCM, M4A/AAC, M4A/ALAC (must fail), WAV 16-bit, WAV 24-bit/96 kHz, MP3, a silent MP4, a truncated MP4, a 5.1 source, a MOV with two audio tracks, and a trimmed file. Outputs are checked with ffprobe for codec, duration, sample rate and channel count, not just “the page opened”.
References
- W3C WebCodecs — the decoding API this page relies on.
- Mediabunny — container reading, audio decoding and muxing.
- LAME — the MP3 encoder used by the WASM build.
- ISO/IEC 11172-3 — the MPEG-1 Audio standard that defines MP3.
- Microsoft RIFF/WAVE reference — the WAV container.