Extract Audio from 3G2 to VOC — Free Online Tool

Extract audio from 3G2 mobile video files and convert it to VOC format — the classic Creative Labs audio container used by DOS-era Sound Blaster applications. This tool demuxes the AAC or MP3 audio track from your 3G2 file and re-encodes it as raw unsigned 8-bit PCM, the native format VOC files expect.

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

3G2 files store audio using modern compressed codecs — typically AAC, the same codec used by MP4 files — optimized for low-bandwidth CDMA mobile networks. VOC files, by contrast, store raw uncompressed PCM audio, a completely different paradigm. This conversion is not a simple remux: FFmpeg must fully decode the compressed AAC (or MP3) audio stream from the 3G2 container and then re-encode it as unsigned 8-bit PCM (pcm_u8), which is the default and most widely supported codec for the VOC format. The video stream is discarded entirely using the -vn flag. The result is a lossless PCM representation of your audio, though note that because the 3G2 source was already lossy (AAC/MP3), the final VOC file reflects the quality ceiling of the original compressed audio — no quality is lost in the PCM encoding step itself, but the prior lossy compression cannot be undone.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg binary — the same open-source multimedia engine running in your browser via WebAssembly (FFmpeg.wasm) that processes your 3G2 file entirely client-side without uploading anything to a server.
-i input.3g2 Specifies the input file — a 3G2 container, the multimedia format developed for 3GPP2/CDMA mobile networks, which typically holds H.264 video and AAC audio streams.
-vn Disables video output entirely, instructing FFmpeg to ignore the H.264 (or MJPEG) video stream in the 3G2 file. Since VOC is a pure audio format with no video support, this flag ensures only the audio track is processed.
-c:a pcm_u8 Sets the audio codec to unsigned 8-bit PCM — the native, default codec for VOC files as used by Creative Labs Sound Blaster hardware and DOS-era applications. This fully decodes the compressed AAC audio from the 3G2 and re-encodes it as raw, uncompressed 8-bit samples.
output.voc Specifies the output filename with the .voc extension, which tells FFmpeg to wrap the raw pcm_u8 audio data in the VOC container format, including the correct VOC file header and block structure expected by Sound Blaster-compatible software.

Common Use Cases

  • Extracting voice lines or sound effects from old mobile game files (distributed as 3G2) to import into a DOS game engine or Sound Blaster-era audio toolkit that requires VOC input
  • Archiving audio from 3G2 video clips captured on early CDMA phones into an uncompressed VOC format for long-term preservation alongside a retro multimedia collection
  • Supplying sound assets to DOSBox or similar DOS emulators that load VOC files directly for Sound Blaster emulation, sourced from 3G2 media
  • Converting 3G2 audio tracks to VOC for use with legacy Creative Labs software such as Sound Forge DOS editions or early multimedia authoring tools that only accept VOC input
  • Extracting and converting ringtone or notification audio stored in 3G2 format from old CDMA handsets into VOC files for use in retro demoscene or chiptune projects
  • Preparing audio samples from 3G2 clips for use with vintage hardware samplers or MIDI devices that accept raw 8-bit PCM data loaded via VOC containers

Frequently Asked Questions

No — the audio in your 3G2 file was already encoded with a lossy codec (typically AAC at around 128kbps, optimized for CDMA mobile delivery), and that quality loss is baked into the source data. Converting to VOC's uncompressed pcm_u8 format creates a lossless copy of that already-compressed audio, meaning no further quality is lost in the conversion, but you cannot recover detail that was discarded when the 3G2 was originally encoded. Think of it as a lossless snapshot of a lossy source.
3G2 files use AAC or MP3 compression, which achieves very small file sizes specifically because they discard audio data the encoder deems perceptually unimportant. VOC stores raw unsigned 8-bit PCM samples — every single sample is stored as a byte with no compression whatsoever. For a mono audio track at 8kHz, this is manageable, but at higher sample rates the file size grows linearly with duration. A one-minute AAC stream from a 3G2 might be around 1MB; the same audio as uncompressed pcm_u8 in a VOC file could be 5–10× larger depending on the sample rate.
Yes, VOC files with pcm_u8 can technically carry stereo audio, and FFmpeg will preserve the channel layout from the 3G2 source. However, many legacy applications and DOS-era Sound Blaster drivers that consume VOC files only support mono playback or treat stereo interleaving differently than modern software. If you are targeting actual vintage hardware or DOS software, you may want to add -ac 1 to the FFmpeg command to downmix to mono for maximum compatibility.
The video stream — typically H.264 (libx264) in a 3G2 container — is completely discarded. The -vn flag instructs FFmpeg to ignore all video streams and process only the audio. The output VOC format has no concept of video whatsoever, so this is expected and intentional. Only the audio track is extracted, decoded from AAC/MP3, and re-encoded as raw PCM.
VOC files support only 8-bit unsigned PCM (pcm_u8) or 16-bit signed little-endian PCM (pcm_s16le). To switch to 16-bit output for better dynamic range, change -c:a pcm_u8 to -c:a pcm_s16le in the command. To force a specific sample rate — for example, the classic 8000 Hz used by early Sound Blaster cards — add -ar 8000 before the output filename. For example: ffmpeg -i input.3g2 -vn -c:a pcm_s16le -ar 8000 output.voc.
Yes. On Linux or macOS, you can run a simple shell loop: for f in *.3g2; do ffmpeg -i "$f" -vn -c:a pcm_u8 "${f%.3g2}.voc"; done. On Windows Command Prompt, use: for %f in (*.3g2) do ffmpeg -i "%f" -vn -c:a pcm_u8 "%~nf.voc". The browser-based tool processes one file at a time, so the FFmpeg command is especially useful when you have a batch of 3G2 files from an old CDMA device archive that all need converting.

Technical Notes

The 3G2 container is structurally similar to MP4/MOV (both are derived from the ISO Base Media File Format), and its audio track is almost always AAC — the same codec used in modern MP4 files, just typically encoded at lower bitrates (64–128kbps) to suit CDMA network constraints. VOC is a much simpler, older format: a header block followed by sequential data blocks, each containing raw PCM samples. The pcm_u8 codec stores each sample as an unsigned 8-bit integer (values 0–255, with 128 representing silence), which gives only 48dB of theoretical dynamic range — significantly less than the AAC source, which perceptually can represent much greater dynamic range despite being lossy. This means that for audio with a wide dynamic range, some quiet detail may be clipped or lost in the quantization to 8-bit. The VOC format does not support metadata fields like title, artist, or album tags; any ID3 or iTunes metadata embedded in the 3G2 will be silently dropped. VOC also does not support chapters, multiple audio tracks, or subtitles. If your 3G2 file contains multiple audio streams (unusual but possible), FFmpeg will default to extracting the first audio stream; use -map 0:a:1 to select a different one.

Related Tools