How it works · updated 22 October 2026

MP4 to MP3, 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.

mp4tomp3.net converts MP4 video to MP3 audio in the browser; the file is never uploaded.

The pipeline

  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. 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

WebCodecs AudioDecoder support
BrowserMinimumNotes
Chrome / Edge94Desktop and Android.
Firefox130AAC decoding depends on the operating system; some Linux builds need system codecs.
Safari26macOS, 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

MP4 → MP3 support matrix
InputSupportedWhy
MP4 / M4V with AAC-LC audioYesThe most common case. The video track is dropped.
MOV with AAC-LC audioYesiPhone and QuickTime exports usually land here.
MOV with PCM audioYesCommon in ProRes exports; the video codec is irrelevant.
M4A with AAC-LC audioYesA useful side effect of the same pipeline.
M4A with ALAC (Apple Lossless)NoThe browser cannot decode ALAC; the page says so.
AC-3 / E-AC-3 / DTS audioNoNot decodable without an extra codec pack.
DRM-protected .m4p / FairPlayNoProtected audio is refused, not guessed at.
AIFF / WMA / AMRNoExport a WAV first, then convert that.
What the converter will not do

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

  1. Open DevTools → Network, and clear the list.
  2. Drop a file into the converter.
  3. Filter by Fetch/XHR. The page's own assets and the analytics request may appear; no request carries the file.
  4. 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

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

Back to the converter