3GA File Documentation


Summary

A 3GPP Audio File is an audio-only recording in the 3GPP container, most often a voice memo from an older Samsung or LG phone's Voice Recorder. It is the audio-only cousin of the 3GP video format, built on the same ISO Base Media File Format as M4A and MP4, with ftyp at byte offset 4 (MIME type audio/3gpp). Inside, the audio is usually AMR or AAC. Play a .3ga free in VLC on any platform, and convert it to MP3 for wider support. Renaming .3ga to .mp3 does not work.

Technical details

FeatureValue
Full name3GPP Audio File
File extension.3ga
MIME typeaudio/3gpp
Format typeAudio-only 3GPP / ISO-BMFF container
Developer3GPP (3rd Generation Partnership Project); popularized by Samsung
Introduced3GPP format ~2004; .3ga used by Samsung/LG since ~2010
Container / base formatISO Base Media File Format (ISO/IEC 14496-12)
Audio codecsAMR-NB, AMR-WB (voice); AAC / HE-AAC (higher quality)
Video trackNone — audio only
Byte orderBig-endian (network byte order)
Magic bytes66 74 79 70 (“ftyp”) at offset 4
Typical brands3gp4, 3gp5, 3gpp
Open standardYes — 3GPP specification
Common sourceSamsung/LG Voice Recorder app (older phones)
Best free playerVLC media player (has AMR/AAC codecs)
Convert to.mp3, .m4a, .wav
Related extensions.3gp, .3g2, .amr, .m4a, .aac, .mp4
Specification3gpp.org/specifications-technologies
File signature (magic bytes)
.... 66 74 79 70 ("ftyp" at offset 4)

Like MP4 and 3GP, a 3GA is an ISO Base Media File, so the ASCII string ftyp sits at offset 4, not 0: bytes 0–3 are the 32-bit big-endian size of the file-type box. The brand that follows ftyp is usually 3gp4, 3gp5 or 3gpp, marking the 3GPP profile. One exception: if the recording was saved as raw AMR rather than wrapped in the container, the file instead begins with the ASCII magic string #!AMR (hex 23 21 41 4D 52) at offset 0. All multi-byte integers in the container are big-endian.

What is a 3GA file?

A .3ga file is a 3GPP Audio File: an audio-only recording in the 3GPP multimedia container, the format defined by the 3rd Generation Partnership Project for mobile and wireless services. Structurally it is the same ISO Base Media File Format used by MP4 and by the 3GP video format, a tree of nested “boxes,” but it carries only an audio track. Its MIME type is audio/3gpp.

In practice, .3ga is best known as Samsung's voice-recorder extension. Samsung Galaxy phones, and some LG models, saved voice memos as .3ga for years, which is why a 3GA is almost always a personal voice recording rather than music. The underlying format is identical to a 3GP audio file; Samsung simply chose the .3ga suffix to flag “audio only.” That is why a 3GA renamed to .3gp usually plays fine, while renaming it to .mp3 does not: the bytes inside are still a 3GPP container, not an MP3 stream.

The box structure: ftyp, moov and mdat

An ISO Base Media file is a flat sequence of nested boxes, and every box begins with the same 8-byte header: a 32-bit big-endian size (bytes 0–3), then a 4-character type (bytes 4–7) such as ftyp, moov or mdat. Because each box states its own length, a reader can walk the whole file and skip any box it does not recognise. A 3GA has the same top-level skeleton as an MP4, just with a single audio track.

3GA (audio-only ISO-BMFF)
 ┌─ ftyp   file-type box: major brand + compatible brands (3gp4/3gp5/3gpp)
 ├─ moov   movie box: all metadata, no audio samples
 │   ├─ mvhd   movie header: timescale, duration
 │   └─ trak   ONE track — the audio track
 │       └─ mdia → minf → stbl   sample tables (codec, timing, sizes, offsets)
 └─ mdat   the actual encoded audio samples

This is why “ftyp” appears at byte offset 4 rather than 0: bytes 0–3 are the size of the ftyp box. The moov box holds all the metadata and no audio; the mdat box holds the coded audio and is meaningless without moov pointing into it. The defining difference from an MP4 video file is simply that there is exactly one trak, and its handler is soun (sound), with no vide track anywhere in the tree.

ftyp: the 3GPP brands

The first box, ftyp, declares which specifications the file conforms to. It contains a major_brand (a 4-character code), a minor_version, and a list of compatible_brands. For a 3GA the brand is one of the 3GPP codes, typically 3gp4, 3gp5 or 3gpp. Those brands are exactly what tell a player this is a 3GPP file and which profile applies, and they are what distinguishes it, at the container level, from a plain .mp4 whose brand would be mp42 or isom. Reading the brand list is how software decides it can handle the file before it touches the audio.

The audio inside: AMR and AAC

The container is codec-agnostic; the actual compression is a separate layer declared in the sample-description box (stsd) inside moov. A 3GA normally carries one of two codec families, and which one it is has real consequences for playback.

CodecUseNotes
AMR-NBNarrowband speech8 kHz sampling, very low bitrate, tuned for voice
AMR-WBWideband speech16 kHz, clearer voice; also known as G.722.2
AAC / HE-AACGeneral audioHigher quality, music-capable

AMR (Adaptive Multi-Rate) is the speech codec designed for low-bitrate mobile voice, which is exactly what a phone's voice recorder produces, so most .3ga files are AMR. This is the crux of the “won't play on my PC” problem: Windows Media Player and iTunes often lack the AMR decoder, so they open the container but cannot decode the stream. A player that bundles the codecs, chiefly VLC, plays both AMR and AAC 3GA files without any extra download. When the audio is AAC, more players cope, but AMR is the case that trips generic software up.

Why renaming to .mp3 fails

A file extension is only a label; it does not change the bytes. A .3ga renamed to .mp3 is still an ISO-BMFF container holding an AMR or AAC stream, and an MP3 player that expects an MP3 frame header finds a ftyp box instead. If the player happens to include the 3GPP and AMR/AAC codecs it may play the mislabelled file anyway; if it does not, it fails exactly as before. The only real fix is a genuine conversion that re-encodes or rewraps the audio. In VLC, Media → Convert/Save with an MP3 audio profile re-encodes the stream to MP3, which is fine for voice. FFmpeg does the same from the command line: ffmpeg -i in.3ga out.mp3. When the source is already AAC, you can avoid re-encoding entirely by copying the audio track into an M4A container: ffmpeg -i in.3ga -c:a copy out.m4a, which is lossless and widely supported by iTunes, iPhones and most players.

A legacy extension

Newer Samsung phones default to .m4a or .mp3 for voice recordings, so .3ga is increasingly a legacy extension tied to older devices. You most often meet it when copying old voice memos off a phone to a computer and finding the desktop player refuses them. The reliable path is the same in every case: play it in VLC, which has the codecs, and, if you need the recording to work everywhere else, convert it to MP3 (universal, small) or M4A (best quality when the source is AAC). Because a 3GA is passive audio data rather than a program, the only genuine safety notes are practical: a file arriving as memo.3ga.exe would be malware using a fake extension, and online converters upload your audio to a third party, so for private voice recordings a local tool such as VLC or FFmpeg is the safer choice.

References