Video to MP3

Pull the audio out as an MP3. Works in every browser, including Firefox on Android.

Drop a video here, or click to choose

MP4, MOV, WebM or MKV, up to about 13 minutes. Nothing is uploaded.

What audio extraction is

Decoding a video file’s soundtrack and re-encoding it as a standalone audio file. Decoding uses the browser’s own audio pipeline, which predates WebCodecs by a decade; encoding to MP3 does not exist in any browser, so it requires shipping an encoder.

What this tool does that others do not

  • The one tool here that works in every browser

    decodeAudioData has been part of the Web Audio API for over a decade and hands the work to the same operating-system codecs your browser uses to play the file. AAC in MP4, Opus in WebM, MP3, FLAC and Vorbis all decode with no extra download and no feature test — including in browsers that have no WebCodecs at all.

  • The encoder is shipped, because none exists in the browser

    WebCodecs supports Opus almost everywhere and AAC in most places, and MP3 in exactly none of them, while MP3 decoding is near-universal. A WebAssembly build of LAME is fetched when you press the button, and only on this page.

    MP3’s core patents expired on 23 April 2017 and Fraunhofer’s licensing programme closed with them, which is why that build can ship here at all.

  • Long files are refused with the arithmetic shown

    Decoded audio is not compressed, and on this path the whole soundtrack has to exist at once before the encoder can start. A gigabyte and a half does not fail politely — it takes the tab down and whatever else was open in it — so the length is checked before the file is read.

    The ceiling is 300 MB of decoded audio, which at 48 kHz stereo is 781 seconds: just over 13 minutes.

How to use it

  1. Drop in the video

    The panel prints the memory figure for your specific file, which is the number that explains the limit without anyone having to take it on trust.

  2. Choose a bitrate for the job

    128 kbps is fine for speech and audible on music; 320 hides the second generation of loss well enough that almost nobody will hear it.

  3. Trim first if the file is long

    A shorter clip is under the ceiling and decodes faster. That is a different tool and a lossless one.

Worked examples

Real input, real figures.

Why an hour-long recording is refused

You give it

A one-hour podcast at 48 kHz, stereo.

You get

48,000 × 2 channels × 4 bytes × 3,600 seconds = 1.38 GB of memory held at once. Against a ceiling of 300 MB — 781 seconds — it is refused with that arithmetic printed, rather than attempted and crashed.

A four-minute track

You give it

A four-minute song at CD quality.

You get

About 85 MB of decoded audio, comfortably inside the limit, and encoded in one pass. The cap is a property of this decoding route rather than of the format.

Against an online converter

AspectThis toolAn uploading converter
Browser supportEvery browser, including those without WebCodecsAny, since the work is remote
UploadNone — a 200 MB video is never sentThe whole file, before anything starts
Length limit13 minutes, with the reason printedA file-size cap, unexplained
Your fileNever receivedHeld for 1–2 hours

Guide

What it will not do

  • This is a second generation of loss. The audio in a video is nearly always already AAC; decoding it and re-compressing with a different algorithm puts artefacts on top of artefacts, and no bitrate undoes that. If you want the original soundtrack rather than an MP3 of it, the right operation is a container change — copying the AAC track into an .m4a with no re-encoding.
  • The 13-minute ceiling belongs to this route, not to the format. Streaming the decode through WebCodecs would lift it, at the cost of the browsers this page exists to serve.

The one tool here that works in every browser

The other video tools on this site depend on WebCodecs, and WebCodecs has a hole in it: Firefox on Android has none of it, not the decoders and not the encoders. This tool sidesteps that entirely, because decoding audio never needed WebCodecs in the first place. decodeAudioData has been part of the Web Audio API for over a decade, and it hands the work to the same operating-system codecs your browser uses to play the file. AAC inside MP4, Opus inside WebM, MP3, FLAC, Vorbis — all of them decode with no extra download and no feature test.

The encoding half is the part that needs help, and for a reason people find surprising: no browser can encode MP3. The WebCodecs audio encoder supports Opus almost everywhere and AAC in most places, and MP3 in exactly none of them, while MP3 decoding is near-universal. So writing an MP3 means shipping an encoder, and this page loads one — a WebAssembly build of LAME, fetched only when you press the button and only on this page.

Why a long file is refused instead of attempted

Decoded audio is not compressed. It is four bytes per sample, per channel, per second — so a four-minute song at CD quality is about 85 MB of memory, and a one-hour podcast at 48 kHz stereo is about 1.38 GB. On this path there is no way to stream it: the whole soundtrack has to exist at once before the encoder can start.

A gigabyte and a half does not fail politely. It takes the tab down, and with it whatever else you had open in it. So the length is checked before the file is read, and anything past roughly thirteen minutes is refused with the arithmetic shown. The panel above also prints the memory figure for the file you actually dropped, which is the one number that explains the limit without anyone having to trust it.

That cap is a property of this route, not of the format. Streaming the decode through WebCodecs would lift it — at the cost of the browsers that have no WebCodecs, which is the audience this page exists to serve.

This is a second generation of loss

The audio in a video file is already compressed, nearly always as AAC. Turning it into MP3 decodes that and compresses it again with a different algorithm, which means artefacts on top of artefacts. No bitrate undoes it. 320 kbps hides it well enough that almost nobody will hear it; 128 kbps is fine for speech and audible on music.

If what you want is the original soundtrack rather than an MP3 of it, the better answer is a container change rather than a conversion — copying the AAC track into an .m4a file with no re-encoding at all. That is a different tool and a better one for archiving. MP3 is here because it is the format that plays in car stereos, old hardware and everything else that has ever existed, which is usually the actual reason someone wants one.

MP3's core patents expired on 23 April 2017 and Fraunhofer's licensing programme closed with them, which is why a LAME build can ship here at all. More in video & audio tools.