Extract Audio from 3GPP to CAF — Free Online Tool

Extract audio from 3GPP mobile video files and save it as a CAF (Core Audio Format) file with uncompressed PCM audio. This tool strips the video stream and decodes the AAC audio from the 3GP container into lossless 16-bit PCM, giving you a high-fidelity CAF file ideal for use in Apple's audio ecosystem.

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

3GPP files typically carry AAC-encoded audio at low bitrates optimized for mobile transmission over 3G networks. During this conversion, FFmpeg discards the video stream entirely and decodes the compressed AAC audio track from the 3GP container. The raw PCM audio samples are then written into a CAF container using the pcm_s16le codec — signed 16-bit little-endian PCM — which is an uncompressed format. This means the AAC audio is fully decoded rather than copied, so the output CAF file will be substantially larger than the source 3GP file. Because AAC is lossy, the final PCM audio reflects the quality of the original AAC encoding; no additional quality is lost in this conversion step, but quality lost when the 3GP was originally recorded cannot be recovered.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg command-line tool. In the browser version of this tool, the same logic runs via FFmpeg.wasm compiled to WebAssembly, so the command is identical to what you would run locally on your desktop.
-i input.3gp Specifies the input file — a 3GPP container (.3gp) as recorded by a mobile device. FFmpeg will detect the container structure and identify the audio track (typically AAC) and any video streams inside.
-vn Disables video output entirely, telling FFmpeg to ignore the video stream in the 3GP file. Since the goal is audio extraction, this ensures only the audio track is processed and no video data is written to the CAF output.
-c:a pcm_s16le Decodes the AAC audio from the 3GP file and re-encodes it as signed 16-bit little-endian PCM — an uncompressed audio format that CAF supports natively and that is compatible with Core Audio on macOS and iOS.
-b:a 128k Nominally sets a target audio bitrate of 128 kbps, but this parameter has no practical effect when using a PCM codec like pcm_s16le, since PCM audio is uncompressed and its bitrate is determined solely by the sample rate and bit depth, not a compression target.
output.caf Specifies the output file as a CAF (Core Audio Format) container. FFmpeg infers the container format from the .caf extension and writes the uncompressed PCM audio stream into Apple's CAF structure, ready for use in macOS and iOS audio applications.

Common Use Cases

  • Importing voice memos or call recordings saved as 3GP on Android or older Nokia devices into GarageBand or Logic Pro on a Mac, which work natively with CAF files.
  • Archiving audio from old 3G-era mobile video clips into an uncompressed format for long-term storage on Apple systems without lossy re-encoding chains.
  • Preparing field recordings or interviews captured on a budget mobile phone as 3GP files for editing in Core Audio-based workflows on macOS.
  • Extracting the audio commentary from a 3GP video shot at a live event so it can be cleaned up and mixed in an Apple audio production environment.
  • Converting low-bitrate 3GP audio recordings received via MMS or messaging apps into a PCM CAF file for waveform analysis or forensic audio review tools on macOS.
  • Stripping the audio from 3GP video tutorials or lectures recorded on older mobile devices for playback or editing in Apple's audio tools without needing the video.

Frequently Asked Questions

No — the output quality is bounded by the original AAC encoding in the 3GP file. AAC is a lossy codec, so some audio detail was permanently discarded when the 3GP was created. The conversion decodes that AAC audio to uncompressed PCM, which means no additional quality is lost in this step, but the original lossy artifacts remain. The benefit is that the CAF file can be edited and re-exported multiple times without any further generation loss.
3GP files use AAC compression, which is highly efficient and typically encodes audio at 32–128 kbps for mobile use. The CAF output uses uncompressed 16-bit PCM, which stores every audio sample without compression at a fixed rate of around 1,411 kbps for stereo audio at 44.1 kHz. A one-minute 3GP audio track might be 250 KB compressed, but the equivalent uncompressed PCM in CAF could be 10 MB or more. This is expected and is the nature of moving from a compressed to an uncompressed format.
CAF is Apple's native professional audio container and is fully supported across macOS and iOS, including Core Audio, GarageBand, Logic Pro, Final Cut Pro, and Xcode's audio APIs. However, CAF is not widely supported outside the Apple ecosystem — it is not playable in most Windows media players or cross-platform DAWs without conversion. If you need broader compatibility, consider exporting to WAV or AIFF instead.
3GP files most commonly carry AAC audio, but the format also supports AMR-NB, AMR-WB, and MP3 audio tracks depending on the device that recorded them. FFmpeg handles all of these automatically — regardless of the audio codec inside the 3GP, the command decodes it and writes uncompressed PCM to the CAF output. You do not need to specify the input codec; FFmpeg detects it automatically.
The default command uses pcm_s16le, which is 16-bit signed PCM — the standard CD-quality depth. If you need higher resolution for professional audio work, you can replace -c:a pcm_s16le with -c:a pcm_s24le for 24-bit PCM or -c:a pcm_s32le for 32-bit PCM. CAF supports all of these depths natively. Note that the -b:a 128k flag has no effect on PCM codecs since PCM bitrate is determined by sample rate and bit depth, not a compression target.
Yes. On macOS or Linux, you can loop over files in a directory with a shell command such as: for f in *.3gp; do ffmpeg -i "$f" -vn -c:a pcm_s16le "${f%.3gp}.caf"; done. On Windows Command Prompt, use: for %f in (*.3gp) do ffmpeg -i "%f" -vn -c:a pcm_s16le "%~nf.caf". Each file is processed sequentially, and this approach works well for archiving a folder of mobile video clips.

Technical Notes

The 3GPP format was standardized for 3G mobile networks and typically encodes audio as AAC-LC at very low bitrates (32–128 kbps) to minimize data usage. When extracting to CAF with pcm_s16le, the AAC stream is fully decoded by FFmpeg's built-in AAC decoder before being written as raw 16-bit PCM. CAF does not impose any file size limit, making it suitable for long recordings, unlike older formats like AIFF or WAV which are capped at 4 GB. The -b:a 128k flag in the command is effectively ignored for PCM codecs since PCM has no bitrate target — its bitrate is mathematically derived from the sample rate and bit depth. Metadata embedded in 3GP files (such as creation timestamps or device info stored in the moov atom) is generally not transferred to the CAF output, as CAF uses Apple's chunk-based metadata structure which has no direct mapping from 3GP atoms. If the 3GP file contains no audio track — for instance, a video-only 3GP — the conversion will fail with an error, since there is no audio stream to extract.

Related Tools