Convert WebM to AAC — Free Online Tool

Extract and convert the audio track from a WebM file (encoded with Opus or Vorbis) into a standalone AAC file using FFmpeg's native AAC encoder. AAC delivers better perceptual quality than MP3 at the same bitrate, making it the preferred format for Apple devices, iTunes, and most modern streaming workflows.

FFmpeg Command

Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg

Free — no uploads, no signups. Your files never leave your browser.

Estimated output:

Conversion Complete!

Download

How It Works

WebM files typically carry audio encoded in either Opus or Vorbis — neither of which is natively supported by Apple devices, iTunes, or many broadcast and podcast distribution platforms. This conversion discards the WebM container and any video stream entirely, then decodes the Opus or Vorbis audio and re-encodes it using FFmpeg's built-in AAC encoder, writing the result into a raw .aac file. Because both the input and output are lossy formats, this is a generation loss scenario: the audio is decoded from its compressed state and re-compressed into AAC, which introduces a small but measurable quality reduction compared to encoding from a lossless source. The output is a pure audio stream in an AAC container, with no video, subtitles, or chapter metadata carried over.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg command-line tool, which handles all the demuxing, decoding, encoding, and muxing steps needed to convert from WebM audio (Opus/Vorbis) to AAC.
-i input.webm Specifies the input WebM file. FFmpeg will demux the file, identifying the audio stream (Opus or Vorbis) and ignoring the VP9 video stream since AAC cannot carry video.
-c:a aac Instructs FFmpeg to encode the audio stream using its built-in native AAC encoder. This decodes the Opus or Vorbis audio from the WebM and re-encodes it as AAC, the dominant lossy audio format for Apple ecosystems and mobile devices.
-b:a 128k Sets the AAC output bitrate to 128 kilobits per second. At this bitrate, AAC produces audio that is transparent or near-transparent for most listeners, and is a widely accepted standard for music streaming and podcast distribution.
output.aac Defines the output filename and container. The .aac extension tells FFmpeg to write a raw ADTS AAC bitstream, producing a standalone audio file with no video or container overhead suitable for Apple devices, streaming platforms, and audio editing tools.

Common Use Cases

  • Extracting the audio commentary from a WebM screen recording to upload as a podcast episode to Apple Podcasts, which requires AAC or MP3
  • Converting a WebM lecture or webinar recording into an AAC file for playback on an iPhone or iPad without needing a third-party app
  • Preparing WebM audio tracks downloaded from browser-based video tools for import into GarageBand or Logic Pro, which prefer AAC or AIFF
  • Stripping the audio from a WebM animation or motion graphics file to deliver an AAC audio asset separately to a client's media asset management system
  • Converting Opus-encoded WebM audio from a WebRTC recording session into AAC for compatibility with video editing timelines in Premiere Pro or Final Cut Pro
  • Creating an AAC audio file from a WebM source for sideloading onto an iPod or older Apple TV that does not support Opus or Vorbis playback

Frequently Asked Questions

Yes, some quality loss is unavoidable. Both Opus (used in WebM) and AAC are lossy codecs, so this conversion involves decoding the compressed Opus or Vorbis stream back to raw PCM audio and then re-encoding it into AAC. Each lossy encoding step discards some audio information. At 128k the result is generally transparent for most listeners, but if you have access to the original lossless source (e.g., a WAV or FLAC file), encoding directly to AAC from that source will always produce better results than transcoding from WebM.
AAC is a pure audio-only format — it has no container structure capable of holding video, subtitles, or chapter markers. The WebM video stream (typically VP9) is automatically discarded during this conversion because there is nowhere to put it. If you need to keep the video, you should convert to a container format like MP4 instead, which can hold both H.264/H.265 video and AAC audio simultaneously.
The command uses FFmpeg's built-in native AAC encoder (-c:a aac), which is solid and widely compatible. A higher-quality alternative is libfdk_aac, derived from the Fraunhofer FDK AAC SDK, which generally produces better results especially at lower bitrates like 64k or 96k. However, libfdk_aac is not included in most pre-built FFmpeg binaries due to licensing restrictions. If you have a custom FFmpeg build with libfdk_aac enabled, you can substitute -c:a libfdk_aac in the command to get improved quality.
Replace the value after -b:a with your desired bitrate. For example, use -b:a 192k for higher quality or -b:a 96k for a smaller file. For music or high-fidelity content, 192k or 256k is recommended. For voice-only content like podcasts or spoken lectures, 96k or 128k is typically sufficient and produces a much smaller file. The full command at 192k would be: ffmpeg -i input.webm -c:a aac -b:a 192k output.aac
Yes, on Linux or macOS you can use a shell loop: for f in *.webm; do ffmpeg -i "$f" -c:a aac -b:a 128k "${f%.webm}.aac"; done. On Windows Command Prompt, use: for %f in (*.webm) do ffmpeg -i "%f" -c:a aac -b:a 128k "%~nf.aac". This processes each WebM file in the current directory and outputs a matching .aac file, preserving the original filename stem.
WebM supports basic metadata tags and FFmpeg will attempt to copy them into the AAC output by default. However, raw .aac files have very limited metadata container support compared to formats like M4A (which wraps AAC in an MPEG-4 container). If metadata preservation is important, consider outputting to output.m4a instead of output.aac — the command remains identical otherwise, and M4A provides a proper container with full ID3-style tag support recognized by iTunes and Apple Music.

Technical Notes

This conversion involves two distinct codec transitions: from a WebM container (using either libopus or libvorbis for audio) to a raw AAC bitstream. Opus, the default WebM audio codec, is technically superior to AAC at equivalent bitrates — particularly below 128k — so this conversion does not represent an upgrade in compression efficiency. The native FFmpeg AAC encoder (-c:a aac) has improved substantially in recent FFmpeg versions and is suitable for most use cases at 128k and above, but it is generally considered slightly inferior to libfdk_aac in psychoacoustic modeling. The output file extension .aac produces a raw ADTS-framed AAC bitstream, which has limited metadata support; outputting as .m4a wraps the same AAC audio in an MPEG-4 container with better tagging and seeking support. No video, subtitle, or chapter data from the WebM source can be preserved, as AAC is audio-only. If the WebM source contains multiple audio tracks, only the first (default) audio track is extracted — use the -map flag to select a specific track by index if needed.

Related Tools