Convert WMA to AMR — Free Online Tool

Convert WMA audio files to AMR format using the libopencore_amrnb codec, optimized for speech encoding at extremely low bitrates. This conversion is ideal for repurposing voice recordings or spoken audio from Windows Media Audio into a format natively supported by mobile telephony systems.

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

WMA files are decoded from their proprietary Microsoft wmav2 audio stream, and the raw PCM audio is then re-encoded using the libopencore_amrnb (Adaptive Multi-Rate Narrowband) codec into the AMR container. AMR-NB operates at fixed bitrate modes ranging from 4.75 kbps to 12.2 kbps and is engineered specifically for speech signals — it uses a CELP (Code-Excited Linear Prediction) model that models the human vocal tract, making it highly efficient for voice but unsuitable for music. The output is resampled to 8000 Hz mono, which is the only sample rate AMR-NB supports, so any stereo or high-sample-rate content in the WMA source will be downmixed and downsampled during this process.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg command-line tool, which is the engine running inside your browser via WebAssembly (FFmpeg.wasm) to perform this WMA-to-AMR conversion entirely on your device.
-i input.wma Specifies the input file — your source WMA file encoded with the wmav2 (or wmav1) codec inside a Microsoft ASF container. FFmpeg reads and decodes this proprietary audio stream into raw PCM before re-encoding.
-c:a libopencore_amrnb Sets the audio encoder to libopencore_amrnb, which implements the AMR Narrowband codec. This encoder applies CELP-based speech modeling optimized for voice, and automatically enforces AMR-NB's constraints of 8000 Hz mono audio on the decoded WMA stream.
-b:a 12200 Selects AMR-NB codec Mode 7 at 12.2 kbps, the highest available quality mode in the AMR-NB standard. This provides the best speech intelligibility within AMR's constrained bitrate range, which tops out far below a typical WMA audio bitrate.
output.amr Defines the output filename with the .amr extension, instructing FFmpeg to write the encoded speech data into an AMR container — the format used natively by mobile telephony systems and compatible with Android, many feature phones, and IVR platforms.

Common Use Cases

  • Converting recorded voice memos or dictation saved as WMA files on Windows into AMR for storage or playback on feature phones and older Android devices that natively support AMR
  • Preparing spoken-word audio from WMA podcasts or audiobook excerpts for integration into IVR (Interactive Voice Response) telephony systems that require AMR-encoded voice prompts
  • Compressing WMA interview recordings or meeting audio into AMR to drastically reduce file size for transmission over low-bandwidth mobile networks
  • Migrating a library of Windows Media Player voice recordings to AMR so they can be attached to MMS messages or used in mobile VoIP applications
  • Extracting speech from WMA radio show archives and re-encoding to AMR for use in embedded systems or IoT devices with constrained storage that rely on AMR for voice playback

Frequently Asked Questions

No — AMR-NB is a speech-specific codec that models the human vocal tract using CELP algorithms, and it performs very poorly on music, background audio, or any non-speech content. Converting a WMA music file to AMR will result in heavily degraded, muffled, and distorted audio. This conversion should only be used for voice recordings, dictation, or spoken-word content where the WMA source primarily contains human speech.
AMR-NB (libopencore_amrnb) is a narrowband codec that only supports a fixed sample rate of 8000 Hz and mono channel audio. FFmpeg automatically downsamples and downmixes your WMA source to meet these constraints during conversion. This significant reduction in sample rate is one reason why AMR sounds noticeably different from the original — it captures only the frequency range essential for intelligible speech (roughly 300 Hz to 3400 Hz).
AMR-NB uses a set of fixed codec modes rather than arbitrary bitrates, and 12200 refers to 12.2 kbps — the highest quality mode (Mode 7), which provides the best speech intelligibility. The other modes range from 4750 bps (4.75 kbps) at the lowest quality up to 12200 bps. Unlike WMA where you might use 128k or 192k, AMR's entire bitrate range is extremely compressed by design; even at 12.2 kbps it is far below a typical WMA bitrate.
Replace the value after -b:a in the command with one of the supported AMR-NB modes: 4750, 5150, 5900, 6700, 7400, 7950, 10200, or 12200 (in bits per second). For example, to use the lowest bitrate mode, the command becomes: ffmpeg -i input.wma -c:a libopencore_amrnb -b:a 4750 output.amr. Lower modes produce smaller files but reduced speech clarity, so 12200 is generally recommended unless storage is severely constrained.
No. The AMR container format has extremely limited or no support for embedded metadata tags compared to WMA, which supports rich metadata via ASF (Advanced Systems Format) container attributes. During this conversion, any title, artist, album, or comment tags stored in your WMA file will be lost and will not appear in the output AMR file.
Yes, on Linux or macOS you can use a shell loop: for f in *.wma; do ffmpeg -i "$f" -c:a libopencore_amrnb -b:a 12200 "${f%.wma}.amr"; done. On Windows Command Prompt, use: for %f in (*.wma) do ffmpeg -i "%f" -c:a libopencore_amrnb -b:a 12200 "%~nf.amr". This is particularly useful for converting large archives of WMA voice recordings, since the browser-based tool processes one file at a time.

Technical Notes

The WMA format uses the wmav2 codec inside an ASF (Advanced Systems Format) container, which is a Microsoft-proprietary format with support for DRM, metadata, and streaming. When converting to AMR, all of these container-level features — including any DRM protection, metadata, and streaming hints — are discarded entirely, as AMR is a bare, minimal container designed exclusively for mobile telephony voice data. AMR-NB enforces hard constraints: 8000 Hz sample rate and mono audio only. If your WMA source contains stereo audio, FFmpeg will automatically downmix to mono, which can cause phase cancellation artifacts if the stereo channels are out of phase. The quality loss in this conversion is substantial and irreversible: WMA at 128 kbps contains far more audio information than AMR-NB at 12.2 kbps can represent, so this conversion is a significant lossy step. Additionally, the libopencore_amrnb encoder must be compiled into your local FFmpeg build — many default FFmpeg distributions on Linux and macOS do not include it; you may need to install FFmpeg from a source that includes opencore-amr libraries, such as ffmpeg-full on some package managers.

Related Tools