Convert WebM video to MP3 for free — pick the range and create it in your browser, no upload.
A WebM's audio is Opus or Vorbis. Nerulio decodes it in the browser and encodes an MP3 at 128–320 kbit/s (or a WAV), discarding the VP8, VP9 or AV1 video without decoding it. Opus is decoded at 48 kHz, so the MP3 is 48 kHz unless you pick 44.1 kHz under Advanced. Opus is efficient, so if the WebM holds low-bitrate speech, a high MP3 bitrate gains nothing; check the source first.
Drop video files hereProcess many files at onceNo upload · processed on this device
Making a game?
Nerulio is a 2D game asset studio first: draw pixel art, cut sprite sheets into animations, pack texture atlases, check autotile tilesets and export them for Godot, Unity, Phaser and other engines. It runs in your browser; files stay on your device.
WebM allows only Opus or Vorbis audio (MDN). Both are in the WebCodecs codec registry, so Nerulio passes the packets to the browser's audio decoder and the decoded samples to LAME 3.100. The video track is never decoded, so an AV1 WebM works even where AV1 video does not.
Opus is decoded at 48 kHz. The Ogg Opus specification (RFC 7845) notes that the stored input sample rate is not the rate for playback and recommends decoding at 48 kHz when the hardware supports it. Nerulio keeps the decoded rate, so the MP3 is 48 kHz unless you choose 44.1 kHz, which resamples.
WebM files written by live recorders can lack a duration in the header; Nerulio measures it from the packets, so the section and the MP3 length are right. Opus is a very efficient codec: a speech track re-encoded as MP3 needs a higher bitrate to sound the same, but it will never sound better than the Opus.
Opus
The low-latency audio codec used by WebM and browser recordings; decoded at 48 kHz.
Vorbis
The older open audio codec WebM also allows.
Resampling
Converting to another sample rate, here 48 kHz to 44.1 kHz when chosen.
Example: a 30-minute browser recording in WebM
Reading the audio track first:
$ ffprobe -v error -select_streams a:0 -show_entries stream=codec_name,sample_rate,channels -of default=nw=1 meeting.webm
codec_name=opus
sample_rate=48000
channels=1
MP3 128 kbit/s 128,000 × 1,800 s ÷ 8 = 28,800,000 bytes ≈ 27.5 MB in the result box, 48 kHz mono
MP3 192 kbit/s 43,200,000 bytes ≈ 41.2 MB: a larger file with the same source detail
For a spoken recording, start with 128 kbit/s, the lowest choice offered; a mono track stays mono.
From the WebM to the MP3
In the WebM
In Nerulio
In the MP3
Opus audio (48 kHz)
Decoded by the browser
LAME 3.100 at 48 kHz, or 44.1 kHz if chosen
Vorbis audio
Decoded by the browser
LAME 3.100 at the source rate, or the one chosen
VP8, VP9 or AV1 video
Discarded without decoding
—
Duration in the header (may be missing)
Measured from the packets
Correct section length
Mono or stereo
Kept
Same channel count
Check the result
Check the result length against the section; the timeline uses the duration measured from the packets.
Compare the size with bitrate × seconds ÷ 8.
Play the MP3 in the player or device that could not open the WebM.
Troubleshooting
Symptom
Likely cause
How to check
Fix
A decoder error on the audio
This browser cannot decode the WebM's Opus or Vorbis track
ffprobe shows codec_name
Try another browser, or FFmpeg
An old device wants 44.1 kHz and the MP3 is 48 kHz
Opus decodes at 48 kHz and the rate is kept
ffprobe on the MP3 shows sample_rate=48000
Choose 44.1 kHz under Advanced and export again
Other apps show no length for the WebM
The recorder did not write a duration
The other app shows no duration
The MP3 made here has the measured length; convert the whole recording
The MP3 is bigger than the whole WebM
Opus is more efficient than MP3 at low bitrates
Compare the sizes
Use 128 kbit/s, or keep the Opus if the player supports it
Players that accept Opus keep the original with no second encode.
What this page does not cover
Only the primary audio track is used.
The sample-rate choices are the original, 44.1 kHz and 48 kHz.
Versions and sources
Nerulio's media suite checks MP3 extraction on an H.264/AAC MP4 and decodes a VP9 WebM in Chromium 153 and Firefox 155; Opus-to-MP3 from a WebM is not a separate test case. The 48 kHz rule for Opus is from RFC 7845, the WebM audio codecs from MDN and the codec list from the W3C WebCodecs registry.
Extract audio incrementally with selectable 96–320 kbit/s MP3 or PCM WAV.
Implementation and verified quality
advanced · ranged demux / WebCodecs / LAME WASM. Quality qualification is in progress. Pro/Flagship quality has not been established.
Before you export
Fast cut shrinks to inner keyframes. Precise mode re-encodes; codec availability varies. Temporary outputs use local browser storage when available. Compatibility recording retains its short-clip limits.
Frequently asked questions
What determines the supported size?
Actual device memory, storage and codec support. Tested examples are evidence, not a guarantee for every file.
Are my files uploaded?
This tool processes the files you open on your device without uploading them. Images you explicitly attach to community posts are uploaded separately. Optional engines and models are downloaded from third parties; those requests expose connection information such as your IP address.
Will my work be saved automatically?
No. Images and editing state stay in this tab; media output can use local temporary storage. Changing language preserves your work; reloading, closing the tab, or following a link to another page can clear it.