Convert 3GP to AAC — Free Online Tool

Extract and convert the audio track from a 3GP mobile video into a standalone AAC file, re-encoding using the AAC codec at 128k bitrate. This is ideal for salvaging audio from old mobile recordings while stepping up to a higher-quality bitrate than the compressed audio embedded in typical 3GP files.

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

3GP files store audio using AAC or AMR codecs at low bitrates optimized for 3G network constraints — often as low as 32k or 64k. During this conversion, FFmpeg discards the video stream entirely and extracts the audio track, re-encoding it as a standalone AAC file at 128k bitrate. Because the source audio is already lossy, there is a generation of re-encoding involved unless the source bitrate already matches the target. The output is a raw AAC audio stream in an ADTS container, which is broadly compatible with Apple devices, streaming platforms, and modern media players. No video data is carried into the output file.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg command-line tool. In the browser, this runs via FFmpeg.wasm compiled to WebAssembly, executing the same logic as the desktop binary entirely within your browser tab.
-i input.3gp Specifies the input file — a 3GP container that may hold H.263 or H.264 video alongside AAC or AMR audio encoded for 3G mobile delivery. FFmpeg will parse all available streams from this container.
-c:a aac Sets the audio codec for the output to AAC using FFmpeg's built-in native AAC encoder. This re-encodes the audio stream — whether it was originally AAC or AMR in the 3GP — into a clean AAC-LC output suitable for Apple devices, streaming platforms, and modern media players.
-b:a 128k Targets an audio bitrate of 128 kilobits per second for the AAC output. This is a meaningful step up from the typically 32k–64k audio found in 3GP files, providing a more standard listening quality, though it cannot recover detail discarded during the original mobile capture.
output.aac Defines the output filename and, critically, the container format. The '.aac' extension tells FFmpeg to write a raw ADTS-wrapped AAC file. The video stream from the 3GP input is automatically dropped because the AAC container format carries no video track.

Common Use Cases

  • Recover a voice memo, phone call recording, or field audio captured on an older 3G-era mobile phone and save it as a clean AAC audio file for archiving or editing
  • Extract the audio from a 3GP video sent via MMS or messaging apps to use in a podcast, voiceover project, or audio compilation
  • Convert a 3GP video of a live musical performance to AAC so it can be imported into iTunes, Apple Music, or an iOS playlist without the video overhead
  • Strip audio from low-resolution 3GP footage captured on a legacy device to upload to an audio-only platform like SoundCloud or a podcast host
  • Prepare audio from 3GP surveillance or dashcam footage for transcription or voice analysis tools that accept AAC but not 3GP
  • Reduce file size significantly when only the audio content of a 3GP recording is needed, eliminating the video stream that dominates the file

Frequently Asked Questions

Because the audio in 3GP is already lossy (typically AAC or AMR at a low bitrate), re-encoding to AAC at 128k introduces another generation of lossy compression. If the original 3GP audio was encoded at 64k AAC, transcoding to 128k AAC will not recover detail that was already discarded — it will simply encode the degraded signal at a higher bitrate. The output will sound similar to the source but will not be higher fidelity than the original capture.
The video stream is completely dropped. FFmpeg reads the 3GP container, selects only the audio track, and writes it into an AAC output file. No frame of video is decoded or written to disk. This is why the output file is dramatically smaller than the original 3GP — the video data, which typically accounts for the majority of a video file's size, is discarded entirely.
Modify the value after the '-b:a' flag. For example, replace '128k' with '192k' for higher quality or '96k' for a smaller file: 'ffmpeg -i input.3gp -c:a aac -b:a 192k output.aac'. Keep in mind that since 3GP audio is often captured at 64k or below, raising the bitrate beyond 128k offers diminishing returns — the source audio simply does not contain more detail to preserve.
Yes. AAC is Apple's preferred audio format and is natively supported across all iOS and macOS devices, iTunes, and Apple Music. The ADTS-wrapped AAC file produced by this command can be imported directly into Apple's ecosystem. This makes the conversion particularly useful when sharing audio from old Android or feature phone 3GP recordings with Apple device users.
Some older 3GP files — especially those recorded on feature phones — use the AMR-NB (Adaptive Multi-Rate Narrowband) codec, which is a speech-optimized codec at very low bitrates. FFmpeg will still decode this and re-encode to AAC at 128k, but the output quality will be constrained by AMR's narrow 8kHz sampling rate and speech-focused encoding. The resulting AAC file will sound like telephone-quality audio, regardless of the output bitrate, because AMR discards most non-speech frequencies.
Yes, on a desktop you can wrap the command in a shell loop. On Linux or macOS, run: 'for f in *.3gp; do ffmpeg -i "$f" -c:a aac -b:a 128k "${f%.3gp}.aac"; done'. On Windows Command Prompt, use: 'for %f in (*.3gp) do ffmpeg -i "%f" -c:a aac -b:a 128k "%~nf.aac"'. The browser-based tool processes one file at a time, so the FFmpeg command is especially valuable for batch workflows involving many files.

Technical Notes

3GP was standardized by 3GPP (Third Generation Partnership Project) and supports a narrow set of codecs constrained by early mobile hardware: H.263 or H.264 video and AAC-LC, AMR-NB, or AMR-WB audio. The audio quality in real-world 3GP files is frequently very low — 8kHz to 22kHz sample rates and bitrates between 12k and 64k are common, reflecting the bandwidth limitations of 3G networks. When extracting to AAC at 128k, the output container is an ADTS (Audio Data Transport Stream) file, which stores raw AAC frames with sync headers and no additional metadata wrapper like MP4. This means metadata fields such as title, artist, and album are not preserved or embedded — the output is a bare audio stream. If metadata is important, consider wrapping the output in an M4A container instead by changing the output extension to '.m4a' in the FFmpeg command. The 'aac' encoder used here is FFmpeg's native AAC encoder, which produces compliant AAC-LC output. The optional 'libfdk_aac' encoder, if available in your FFmpeg build, generally offers slightly better quality at the same bitrate but requires a separately compiled FFmpeg binary due to licensing constraints.

Related Tools