Convert MP4 to AMR — Free Online Tool
Convert MP4 video files to AMR audio format using the libopencore_amrnb codec, extracting and re-encoding the audio track as a narrow-band speech-optimized file at 12,200 bps. AMR is the standard audio format used in mobile telephony and voice messaging, making this conversion ideal when you need to extract speech from video for GSM or mobile-compatible applications.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your MP4 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
During this conversion, FFmpeg discards the video stream entirely and re-encodes only the audio track from the MP4 container using the libopencore_amrnb (Adaptive Multi-Rate Narrow-Band) codec. Unlike a simple remux, this is a full audio transcode — the original AAC or MP3 audio in the MP4 is decoded to raw PCM and then re-encoded into AMR's narrow-band format at 12,200 bps. AMR operates at a fixed 8,000 Hz sample rate and is mono-only, so any stereo audio in the source MP4 will be downmixed to a single channel, and higher sample rates will be downsampled. The output is a raw AMR bitstream file (.amr), which contains no container-level chapters, multiple tracks, or subtitle data.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg command-line tool, which handles the full pipeline of demuxing the MP4 container, decoding the audio stream, and re-encoding it as AMR. |
-i input.mp4
|
Specifies the input MP4 file. FFmpeg will read and demux this container, making both the video and audio streams available for processing — though only the audio stream will be used in this conversion. |
-c:a libopencore_amrnb
|
Sets the audio encoder to libopencore_amrnb, the open-source implementation of the AMR Narrow-Band codec. This forces a full re-encode of the MP4's audio (typically AAC) into AMR-NB format at 8,000 Hz mono, which is the standard for GSM telephony voice files. |
-b:a 12200
|
Sets the AMR-NB codec mode to 12,200 bps (Mode MR122), which is the highest-quality AMR Narrow-Band mode and corresponds to the GSM Enhanced Full Rate speech coding standard. This value must be one of the eight fixed AMR-NB mode bitrates — it is not an arbitrary quality setting. |
output.amr
|
Defines the output filename and triggers FFmpeg to write a raw AMR bitstream file. The .amr extension is recognized by mobile devices, telephony systems, and media players that support the AMR format. |
Common Use Cases
- Extracting speech from a recorded video interview or lecture to create a compact voice file compatible with older mobile phones and GSM systems
- Preparing voice-over audio recorded inside a video editing tool for submission to a telephony or IVR system that requires AMR format
- Stripping audio from a mobile screen recording or video message to produce a lightweight AMR file for voice archival on embedded or low-storage devices
- Converting MP4 video call recordings to AMR for integration with telecom platforms, call-center software, or SIP-based communication systems that expect AMR-encoded voice
- Reducing file size of speech-only video content — such as a talking-head recording — to the smallest viable audio representation for transmission over low-bandwidth mobile networks
- Extracting a spoken narration track from an MP4 training video to generate a voice sample compatible with legacy mobile multimedia messaging (MMS) systems
Frequently Asked Questions
AMR Narrow-Band is specifically engineered for human speech, not music or full-range audio. Its 8,000 Hz sample rate and narrow-band codec discard most of the frequency content that makes music sound natural, so music will sound heavily muffled and degraded. This conversion is best suited for voice recordings, spoken word, interviews, or narration where intelligibility matters more than audio fidelity.
The AMR Narrow-Band format (libopencore_amrnb) is inherently mono — it was designed for single-channel telephony voice transmission over GSM networks. FFmpeg will automatically downmix your stereo MP4 audio to mono during the transcode. For speech content this is rarely noticeable, but if your source has important stereo separation, that spatial information will be lost in the output AMR file.
AMR Narrow-Band uses a set of fixed codec modes, and the bitrate values (4750, 5150, 5900, 6700, 7400, 7950, 10200, and 12200 bps) correspond directly to those codec modes — not arbitrary quality levels. The default 12,200 bps (Mode 7, also called MR122) provides the highest speech quality and is the mode most commonly used in GSM full-rate voice calls. Lower modes like 4750 bps reduce file size further but introduce more speech artifacts and are more suitable for extremely bandwidth-constrained transmission.
Replace the value after -b:a in the command with any of the valid AMR-NB mode bitrates: 4750, 5150, 5900, 6700, 7400, 7950, 10200, or 12200. For example, to use the lowest bitrate mode, the command becomes: ffmpeg -i input.mp4 -c:a libopencore_amrnb -b:a 4750 output.amr. Note that only these exact values are valid — AMR does not support arbitrary bitrates like MP3 or AAC do.
Yes — AMR Wide-Band uses a 16,000 Hz sample rate instead of 8,000 Hz and delivers noticeably better speech quality, closer to HD Voice used in modern VoLTE calls. To use it, change the codec flag to -c:a libopencore_amrwb and update the output extension. However, AMR-WB uses different bitrate modes (ranging from 6,600 to 23,850 bps) and is not as universally compatible with legacy GSM devices as AMR-NB.
No. The AMR format is a raw audio bitstream container with no standardized metadata support. Any ID3-style tags, title, artist, chapter markers, or subtitle tracks present in the source MP4 are not carried over to the .amr output file. If metadata preservation is important, you should store it separately or consider an intermediate format like WAV or M4A before delivering to downstream systems.
Technical Notes
The libopencore_amrnb encoder implements the 3GPP AMR Narrow-Band standard (TS 26.071) and operates exclusively at 8,000 Hz with a single mono channel — FFmpeg enforces these constraints automatically during the transcode, resampling the MP4 audio and downmixing stereo to mono as needed. The eight fixed codec modes (4,750–12,200 bps) are not continuously variable; FFmpeg will select the closest valid mode if an intermediate value is specified. AMR files use the .amr extension and the storage format defined in RFC 4867, which includes a file magic header but is otherwise a lightweight wrapper around raw AMR frames — significantly simpler than the MP4/ISOBMFF container being converted from. Because this is a full lossy transcode (MP4 audio is typically AAC or MP3, both already lossy), there is generational quality loss: the audio is decoded from one lossy format and re-encoded into another. For speech content at 12,200 bps this is generally transparent to the ear, but the quality cannot exceed what was present in the source MP4. The MP4's video stream, subtitle tracks, chapter data, and secondary audio tracks are all silently dropped — AMR supports none of these features.