Extract Audio from WebM to M4B — Free Online Tool
Extract audio from a WebM file and save it as an M4B audiobook file, transcoding the Opus or Vorbis audio stream to AAC inside an MPEG-4 container with chapter and bookmarking support. Ideal for converting spoken-word WebM recordings into a format natively recognized by Apple Books, podcast apps, and audiobook players.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your WebM 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
WebM files typically carry audio encoded in Opus or Vorbis — neither of which is compatible with the M4B container. This tool discards the video stream entirely and transcodes the audio track to AAC, the codec required by M4B. The resulting file is wrapped in an MPEG-4 container with the .m4b extension, which signals to compatible players like Apple Books and Overcast that the file supports chapter navigation and playback position bookmarking. The -movflags +faststart flag reorganizes the file's metadata to the front of the file, which improves streaming and faster loading in apps. Because Opus-to-AAC is a lossy-to-lossy transcode, some audio generation loss occurs, so using a higher bitrate like 192k or 256k is recommended if the source WebM was encoded at high quality.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg program. When run in this browser tool, FFmpeg executes via WebAssembly (FFmpeg.wasm) entirely within your browser — no data is sent to a server. |
-i input.webm
|
Specifies the input WebM file. FFmpeg reads the Matroska-based WebM container and identifies all streams inside it, including the VP9 video track and the Opus or Vorbis audio track. |
-vn
|
Disables video output entirely, stripping the VP9 video stream from the WebM source. Since M4B is a pure audio format designed for audiobooks and podcasts, the video track is not needed and excluding it keeps the output file small. |
-c:a aac
|
Transcodes the audio stream — Opus or Vorbis from the WebM — into AAC using FFmpeg's built-in AAC encoder. AAC is the required codec for M4B files and is the audio format Apple Books and other audiobook players expect. |
-b:a 128k
|
Sets the AAC audio bitrate to 128 kilobits per second. For spoken-word audiobook content this provides a good balance of file size and clarity; you can raise this to 192k or 256k if your source WebM was high-quality music or high-bitrate narration. |
-movflags +faststart
|
Moves the MPEG-4 container's metadata (MOOV atom) to the beginning of the output M4B file. This is important for audiobook apps that begin playback before the full file is loaded, and it is standard practice for any M4B intended for streaming or app-based listening. |
output.m4b
|
Defines the output filename with the .m4b extension. The .m4b extension specifically signals to Apple Books, iPhone, and compatible audiobook players that this file supports chapter navigation and persistent playback position bookmarking, distinguishing it from a generic .m4a audio file. |
Common Use Cases
- Convert a WebM lecture recording downloaded from a course platform into an M4B so students can listen with chapter markers and resume playback where they left off in Apple Books or a podcast app
- Transform a WebM podcast episode or interview recording into an M4B for distribution on platforms that require audiobook-style bookmarking and chapter support
- Extract narration audio from a WebM screen capture or video essay and package it as an M4B for offline listening during commutes
- Convert a serialized spoken-word story or audio drama saved as WebM into M4B format so listeners can track their position across multiple sessions
- Repackage a WebM-format audiobook rip into a proper M4B file recognized natively by iPhone, iPad, and Mac without requiring a third-party media player
- Prepare a WebM meditation or language-learning audio session as an M4B so it appears in the audiobook library on Apple devices with persistent progress tracking
Frequently Asked Questions
Yes, some quality loss is unavoidable because this is a lossy-to-lossy transcode — Opus audio is decoded and then re-encoded as AAC. For spoken-word content like audiobooks and podcasts, the difference at 128k AAC is generally imperceptible to most listeners. If your source WebM was encoded at a high Opus bitrate (192k or above), consider setting the output bitrate to 192k or 256k to better preserve fidelity during the transcode.
Not automatically with this command. WebM supports chapters stored in the Matroska container structure, and M4B also supports chapters, but FFmpeg does not always map WebM chapter metadata into M4B chapter atoms without additional flags. If your WebM contains chapters you want to preserve, you would need to add -map_chapters 0 to the FFmpeg command. Our tool performs a straightforward audio extraction, so chapter data from the source WebM is not guaranteed to transfer.
M4B and M4A both use the MPEG-4 audio container with AAC encoding, but the .m4b extension is a signal to media players that the file is an audiobook or podcast. Apple Books, iPhone, and compatible apps use this extension to enable bookmarking — remembering your playback position — and chapter navigation. Renaming an .m4a to .m4b often achieves the same effect, but using .m4b from the start ensures correct categorization in audiobook libraries.
Yes. Replace the 128k value in -b:a 128k with your preferred bitrate. For spoken-word audiobooks, 96k AAC is often sufficient and produces smaller files. For music or high-fidelity recordings originally encoded at high Opus bitrates, 192k or 256k will reduce generation loss. For example: ffmpeg -i input.webm -vn -c:a aac -b:a 192k -movflags +faststart output.m4b. Avoid going above 320k as AAC encoders see diminishing returns beyond that point.
Yes, on the command line you can use a shell loop to process multiple files. On Linux or macOS: for f in *.webm; do ffmpeg -i "$f" -vn -c:a aac -b:a 128k -movflags +faststart "${f%.webm}.m4b"; done. On Windows Command Prompt: for %f in (*.webm) do ffmpeg -i "%f" -vn -c:a aac -b:a 128k -movflags +faststart "%~nf.m4b". This browser-based tool processes one file at a time, so the desktop FFmpeg command is the recommended approach for batch jobs or files larger than 1GB.
M4B compatibility on Android depends on the app. Apps like Bound, Smart AudioBook Player, and Voice Audiobook Player support M4B natively on Android, as does the open-source AntennaPod for podcasts. The underlying AAC audio inside the M4B container is universally supported, so even apps that do not recognize the .m4b extension specifically can often play the file if you rename it to .m4a. Apple devices and Apple Books have the strongest native support for bookmarking and chapter navigation in M4B files.
Technical Notes
The WebM format natively uses Opus as its default audio codec — a modern, highly efficient codec optimized for low-latency streaming and web delivery. M4B, by contrast, is built around AAC, the MPEG-4 standard audio codec deeply integrated into Apple's ecosystem. These two codecs are architecturally incompatible at the container level, making transcoding mandatory — there is no lossless remux path from WebM Opus to M4B AAC. The FFmpeg AAC encoder (native aac) used in this command is the built-in encoder; it produces compliant AAC-LC output suitable for all M4B-compatible players. If you have FFmpeg compiled with libfdk_aac available locally, substituting -c:a libfdk_aac generally yields slightly better quality at the same bitrate for low-bitrate encodes. The -movflags +faststart flag moves the MOOV atom to the beginning of the file, which is standard practice for streaming-friendly MPEG-4 files and ensures audiobook apps can begin playback before the entire file is downloaded. Metadata tags such as artist, title, and album embedded in the WebM file may not transfer automatically and should be reviewed after conversion. M4B does not support multiple audio tracks, so if your WebM contained multiple audio streams, only the first (default) stream will be extracted.