Convert AMR to ALAC — Free Online Tool
Convert AMR voice recordings to ALAC (Apple Lossless Audio Codec) for archival-quality audio stored in an MPEG-4 container. This tool decodes the narrow-band or wide-band AMR speech codec and re-encodes it losslessly with ALAC, making compressed mobile voice recordings fully compatible with iTunes, Apple Music, and iOS devices without any further quality degradation.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your AMR 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
AMR files encode speech using the Adaptive Multi-Rate codec, which operates at very low bitrates (4.75–12.2 kbps) by exploiting characteristics of human speech — it is inherently lossy and optimized specifically for voice, not music or general audio. During this conversion, FFmpeg decodes the AMR bitstream using the libopencore_amrnb or libopencore_amrwb decoder, producing raw PCM audio in memory. That PCM data is then re-encoded using Apple's ALAC codec and wrapped in an MPEG-4 (.m4a) container. Because AMR is lossy, the original speech quality is already fixed at whatever bitrate the recording used — ALAC preserves that decoded PCM output with perfect fidelity, meaning no additional quality is lost in this step. The result is a losslessly stored representation of the decoded AMR audio, ideal for archiving or editing without further generational loss.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg binary, the open-source multimedia processing engine that handles the AMR decoding and ALAC encoding pipeline for this conversion. |
-i input.amr
|
Specifies the input AMR file. FFmpeg automatically detects whether it is AMR-NB or AMR-WB and selects the appropriate libopencore decoder to demux and decode the speech-compressed audio stream. |
-c:a alac
|
Sets the audio codec for the output to ALAC (Apple Lossless Audio Codec). This instructs FFmpeg to take the decoded PCM audio from the AMR file and re-encode it losslessly using Apple's alac encoder, which will be wrapped in the MPEG-4 container. |
-c:a alac
|
A duplicate of the preceding codec flag — FFmpeg uses the last specified value, so this is functionally identical and the ALAC encoder is still correctly applied. In a manually crafted command you would include this only once. |
output.m4a
|
Defines the output filename and container format. The .m4a extension signals an MPEG-4 audio container, which is the standard and recommended container for ALAC files and ensures compatibility with iTunes, Apple Music, iPhone, and iPad. |
Common Use Cases
- Archiving voicemail recordings exported from a mobile phone into a lossless format that won't degrade with repeated editing or re-encoding.
- Importing voice memos or call recordings captured on older Nokia, Samsung, or feature phones into Apple's ecosystem — iTunes, iPhone, or GarageBand — which natively support ALAC but not AMR.
- Preparing AMR-encoded interview recordings from a field recorder or mobile device for use in an audio production workflow where lossless source files are required.
- Converting AMR voice notes attached to emails or messaging apps into a format playable on macOS or iOS without third-party plugins.
- Preserving evidence recordings or legal voice documentation in a lossless container format accepted by archival or legal software that requires MPEG-4 audio.
- Normalizing a batch of AMR speech recordings to a single consistent lossless format for transcription pipelines or machine-learning voice datasets.
Frequently Asked Questions
No — converting from AMR to ALAC does not restore or improve audio quality. AMR is a lossy codec, so the compression artifacts and narrow-band frequency limitations (typically 200–3400 Hz for AMR-NB) are already baked into the file. ALAC is a lossless codec, meaning it perfectly preserves whatever audio was decoded from the AMR file, but it cannot recover information that was discarded during the original AMR encoding. Think of it as a perfect copy of an imperfect original.
AMR files are extremely compact because the codec compresses speech aggressively at bitrates as low as 4.75 kbps — far lower than typical MP3 or AAC files. ALAC stores the fully decoded PCM audio losslessly, which means the output reflects the uncompressed sample data rather than a compressed stream. Even though the source audio is low-quality speech, the ALAC container stores every decoded sample, resulting in files many times larger than the source AMR. For a 1-minute AMR file at 12.2 kbps, you might see the output grow to several megabytes.
AMR-NB (Narrow-Band) samples audio at 8 kHz and is the most common variant found in .amr files from mobile phones, supporting bitrates from 4.75 to 12.2 kbps. AMR-WB (Wide-Band), sometimes stored as .awb, samples at 16 kHz and delivers noticeably clearer speech. FFmpeg detects which variant is present in your file and routes it through the appropriate decoder — libopencore_amrnb for narrow-band or libopencore_amrwb for wide-band — before encoding to ALAC. Both variants are supported by this tool.
Yes — ALAC is Apple's own lossless audio format, and it is natively supported across the entire Apple ecosystem including iPhone, iPad, macOS, iTunes, Apple Music, and Apple TV. The .m4a container produced by this conversion can be directly imported into iTunes or Apple Music and synced to any iOS or iPadOS device without any transcoding. This is one of the primary reasons to choose ALAC over other lossless formats like FLAC when your target platform is Apple hardware.
ALAC does not use a bitrate parameter — it is a lossless codec that always encodes the full PCM audio data, so the output quality is entirely determined by the source. There is no -b:a or -q:a flag that meaningfully applies to ALAC encoding. The only way to influence the output size or quality is at the source: if you have access to the original AMR file at a higher bitrate (e.g., 12.2 kbps instead of 4.75 kbps), that will produce a better decoded result, which ALAC then stores losslessly.
You can adapt the displayed command into a shell loop to process multiple files at once. On Linux or macOS, run: for f in *.amr; do ffmpeg -i "$f" -c:a alac "${f%.amr}.m4a"; done. On Windows Command Prompt, use: for %f in (*.amr) do ffmpeg -i "%f" -c:a alac "%~nf.m4a". This iterates over every AMR file in the current directory and outputs a corresponding .m4a file with the same base filename. Batch processing on the command line is especially practical for large collections that exceed the 1 GB browser limit.
Technical Notes
AMR audio is mono-only in its narrow-band form (AMR-NB), and stereo is not a feature of either AMR-NB or AMR-WB — so the resulting ALAC file will always be mono or at most mono-dual, matching the source. The MPEG-4 container used for ALAC (.m4a) supports metadata tags such as title, artist, album, and comment fields, which can be added with additional -metadata flags in FFmpeg after the conversion. However, because AMR files typically carry minimal embedded metadata (mobile recordings rarely include ID3-style tags), the output .m4a will generally have empty tag fields unless you add them manually. ALAC also supports chapters within the MPEG-4 container, though chapters are not present in AMR source files and will not be created automatically. One known compatibility note: some older Windows media players do not natively support ALAC in .m4a containers without Apple's codecs installed, so if cross-platform compatibility beyond Apple devices is required, FLAC might be a more universally supported lossless alternative. The duplicate -c:a alac flag in the FFmpeg command is harmless — FFmpeg processes the last instance — and the output is correctly encoded ALAC regardless.