Convert AAC to AMR — Free Online Tool

Convert AAC audio files to AMR format using the libopencore_amrnb codec, optimized for speech and mobile telephony applications. This tool is ideal when you need to shrink voice recordings or podcast clips down to extremely low bitrates (as low as 4.75 kbps) for compatibility with mobile voice systems or legacy devices.

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

AAC audio is decoded from its lossy compressed form and then re-encoded using the libopencore_amrnb (Adaptive Multi-Rate Narrowband) codec into the AMR container. Because both formats are lossy, this is a transcode — not a remux — meaning the audio is fully decoded and re-compressed, which introduces a second generation of quality loss. AMR-NB is engineered specifically for speech intelligibility at very low bitrates, operating on 20ms audio frames and targeting an 8 kHz sample rate. Any music, stereo content, or broadband audio in the AAC source will be downmixed to mono and downsampled to fit AMR's narrowband constraints, so this conversion is most appropriate for voice-only content.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg multimedia processing tool. In this browser-based tool, FFmpeg.wasm runs the same engine entirely within your browser via WebAssembly — no files leave your device.
-i input.aac Specifies the input AAC file. FFmpeg reads the AAC bitstream, identifies the audio codec (typically aac or libfdk_aac), and prepares to decode it for re-encoding into AMR.
-c:a libopencore_amrnb Selects the libopencore_amrnb encoder for the audio stream, which implements the 3GPP AMR Narrowband codec. This is the standard encoder for producing .amr files compatible with mobile telephony systems, feature phones, and IVR platforms.
-b:a 12200 Sets the AMR-NB bitrate to 12,200 bits per second, which is the highest quality mode available in AMR-NB. This corresponds to AMR mode 7 (MR122) in the 3GPP specification and provides the best speech intelligibility the narrowband codec can offer.
output.amr Defines the output filename and container. The .amr extension signals FFmpeg to write a bare AMR audio file, which is a single-channel, 8 kHz narrowband audio stream with no support for video, chapters, or rich metadata.

Common Use Cases

  • Preparing voice memos or recorded interviews originally saved as AAC (e.g., from an iPhone) for upload to a legacy mobile telephony or IVR system that only accepts AMR files.
  • Converting AAC-encoded voice recordings for use in embedded systems or IoT devices with extremely limited storage and bandwidth that rely on AMR's sub-13 kbps bitrates.
  • Archiving call center audio or speech samples in AMR format to dramatically reduce storage footprint compared to AAC when audio quality beyond speech intelligibility is not required.
  • Packaging AAC voice content into AMR for playback on older Nokia, Sony Ericsson, or feature phones that natively support AMR but not AAC.
  • Stripping a music-free AAC voice track from a podcast or audio message down to AMR for transmission over bandwidth-constrained mobile data links or SMS/MMS attachments.
  • Testing or developing mobile VoIP or multimedia messaging applications that require real AMR-encoded speech samples as input data.

Frequently Asked Questions

Yes, and significantly so for anything other than plain speech. AAC at 128 kbps is a high-quality wideband format capable of reproducing music faithfully, while AMR-NB at its highest mode (12,200 bps) is narrowband and tuned exclusively for voice frequencies. The conversion downmixes stereo to mono, downsamples to 8 kHz, and discards all audio information above roughly 4 kHz. For a voice recording of someone speaking, the result will be intelligible but telephone-quality. For music, the output will sound tinny and bandwidth-limited.
AMR (Adaptive Multi-Rate) was designed by ETSI specifically for GSM and WCDMA mobile networks where voice channels have very tight bandwidth budgets. Its eight bitrate modes range from 4,750 to 12,200 bps — all far below AAC's minimum recommended use of 64 kbps for music. AMR achieves intelligible speech at these rates by using a CELP (Code-Excited Linear Prediction) speech model that exploits the predictable characteristics of human voice, rather than trying to represent arbitrary audio waveforms accurately.
AMR-NB is strictly a mono format, so FFmpeg will automatically downmix any stereo or multi-channel AAC audio to a single mono channel before encoding. If your AAC file has a left and right channel with different content (e.g., a stereo interview with two speakers panned separately), both channels will be mixed together into one. You cannot preserve stereo information in an AMR-NB file.
Replace the value after -b:a with one of AMR-NB's eight supported mode rates: 4750, 5150, 5900, 6700, 7400, 7950, 10200, or 12200 (in bits per second, not kilobits). For example, to use the lowest-bandwidth mode, the command becomes: ffmpeg -i input.aac -c:a libopencore_amrnb -b:a 4750 output.amr. Note that these are the only valid values — AMR is a fixed-mode codec and does not support arbitrary bitrates between these steps.
Yes, by changing the codec flag to -c:a libopencore_amrwb. AMR-WB operates at 16 kHz instead of 8 kHz and supports bitrates from 6,600 to 23,850 bps, giving noticeably better voice quality and supporting higher-frequency speech sounds. The output file extension remains .amr or you can use .awb. AMR-WB is the better choice if your target device or system supports it, particularly for modern mobile applications or HD Voice telephony.
Generally no. The AMR file format has very limited or no standardized support for metadata tags compared to AAC (which can carry ID3 or iTunes-style tags). FFmpeg may attempt to map metadata but most AMR players and telephony systems ignore it entirely. If preserving metadata is important for your workflow, you should treat the AMR file as a raw audio carrier only and store descriptive information in the filename or an external sidecar file.

Technical Notes

The libopencore_amrnb encoder used in this conversion is an open-source implementation of the 3GPP AMR-NB speech codec, originally standardized for GSM networks. A critical constraint is that FFmpeg will enforce a sample rate of exactly 8000 Hz for AMR-NB input — if your AAC file is encoded at 44.1 kHz or 48 kHz (standard for music or podcast production), FFmpeg will automatically resample it as part of the conversion pipeline. This resampling, combined with the inherent lossy re-encoding from one compression format to another, means this conversion should only be performed when AMR compatibility is genuinely required rather than as a general-purpose size reduction strategy. The output file will typically be dramatically smaller than the AAC source — a 5-minute AAC file at 128 kbps (~4.8 MB) becomes roughly 450 KB at AMR-NB 12,200 bps — but at the cost of narrowband telephone-quality audio. There is no chapter, subtitle, or multiple-track support in AMR; the format is a bare single-channel audio stream. If your use case allows it, AMR-WB (libopencore_amrwb) is a superior alternative that preserves more speech fidelity at comparable file sizes.

Related Tools