Convert M4A to VOC — Free Online Tool

Convert M4A audio files (AAC-encoded, typically from iTunes or Apple Music) to VOC format, the classic Creative Labs Sound Blaster audio container used in DOS-era games and multimedia. The conversion decodes the AAC audio stream and re-encodes it as raw unsigned 8-bit PCM (pcm_u8), the native codec of the VOC format.

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

M4A files store audio using AAC compression, a modern lossy codec that achieves good quality at low bitrates. VOC, by contrast, is a lossless raw PCM container developed by Creative Labs for the Sound Blaster card in the early 1990s. During this conversion, FFmpeg decodes the AAC bitstream from the M4A container into uncompressed audio samples, then re-encodes them as unsigned 8-bit PCM at 8000 Hz by default — the format VOC players and DOS emulators expect. Because AAC is lossy, some audio quality was already lost when the M4A was originally created; the VOC output will faithfully represent what the AAC decoder produces, but 8-bit PCM has a limited dynamic range (256 amplitude levels), which introduces quantization noise compared to higher bit-depth formats. Any iTunes-specific metadata (artist, album, chapter markers) stored in the M4A will not carry over, as the VOC format has no metadata fields.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg program, the open-source multimedia processing engine that handles decoding the M4A container, transcoding the audio, and writing the VOC output.
-i input.m4a Specifies the input file — an M4A container, which FFmpeg will demux to extract the AAC-encoded audio stream for decoding.
-c:a pcm_u8 Sets the audio codec for the output to unsigned 8-bit PCM, the native and most broadly compatible audio encoding for the VOC format as used by original Sound Blaster hardware and DOS applications.
output.voc Specifies the output filename with the .voc extension, which tells FFmpeg to use its VOC muxer to write the Creative Labs block-based container format expected by DOS games and Sound Blaster-compatible software.

Common Use Cases

  • Supplying custom sound effects or music to a DOS game mod that loads assets in VOC format, such as games built on the Build engine or early id Software titles
  • Recreating authentic Sound Blaster audio for a retro computing project or vintage PC restoration where the application specifically expects VOC files
  • Preparing audio for use in DOSBox or similar DOS emulators where game sound engines load VOC files directly from disk
  • Converting podcast snippets or short AAC audio clips into VOC for integration with legacy multimedia authoring tools from the Windows 3.x / DOS era
  • Generating test audio in VOC format for developers working on Sound Blaster emulation layers or hardware reverse-engineering projects
  • Archiving or studying the acoustic character of modern audio when down-sampled to 8-bit PCM, useful for lo-fi audio research or chiptune production

Frequently Asked Questions

Yes, and there are two reasons for it. First, M4A files use AAC, a lossy codec, so some quality was already sacrificed when the M4A was created. Second, the default VOC codec (pcm_u8) is unsigned 8-bit PCM, which means only 256 possible amplitude levels — far fewer than the 65,536 levels of 16-bit audio. This limited dynamic range introduces quantization noise and a characteristically 'gritty' or muffled sound. For anything beyond retro gaming or DOSBox use, a higher bit-depth format like WAV or FLAC is a better target.
Yes. The VOC format does support 16-bit signed little-endian PCM (pcm_s16le), which dramatically improves dynamic range. You can change the FFmpeg command to: ffmpeg -i input.m4a -c:a pcm_s16le output.voc. Be aware that not all VOC-reading applications (especially very old DOS programs) support 16-bit VOC blocks — check your target software's documentation before switching codecs.
No. The VOC format has no provision for metadata fields such as artist, title, album, or chapter markers. All iTunes-specific tags and any chapter data stored in the M4A will be silently discarded during conversion. If preserving metadata matters, keep the original M4A file as your source of record.
By default, FFmpeg will use the sample rate of the decoded M4A stream (commonly 44100 Hz or 48000 Hz). However, many classic Sound Blaster applications and DOS games expect VOC files at 8000 Hz or 11025 Hz. If your target application requires a specific sample rate, add the -ar flag to the command — for example: ffmpeg -i input.m4a -c:a pcm_u8 -ar 11025 output.voc.
On Linux or macOS, you can use a shell loop: for f in *.m4a; do ffmpeg -i "$f" -c:a pcm_u8 "${f%.m4a}.voc"; done. On Windows Command Prompt, use: for %f in (*.m4a) do ffmpeg -i "%f" -c:a pcm_u8 "%~nf.voc". This runs the same conversion command on every M4A file in the current directory, which is especially useful for game asset pipelines where many sound files need converting at once.
M4A uses AAC compression, which is highly efficient — a typical 128k AAC file is far smaller than its raw audio equivalent. VOC stores uncompressed PCM data with no compression whatsoever, so file size is determined purely by duration, sample rate, and bit depth. Even at the low fidelity of 8-bit PCM, a 3-minute file at 44100 Hz will be roughly 7–8 MB in VOC format compared to perhaps 3 MB as a 128k AAC M4A. This is expected and normal behavior.

Technical Notes

The VOC format was designed in the early 1990s for Creative Labs' Sound Blaster hardware and uses a block-based structure where each block carries a type identifier, size, and raw PCM data. FFmpeg's VOC muxer writes standard data blocks compatible with Sound Blaster expectations. The default pcm_u8 codec stores samples as unsigned 8-bit integers (values 0–255, with silence at 128), which is natively understood by Sound Blaster hardware and DOSBox's SB emulation. The alternative pcm_s16le codec stores 16-bit signed samples and is supported by later Sound Blaster models and most modern emulators, but may fail on software that only reads early VOC revisions. One important limitation: the VOC format does not support stereo at 8-bit depth in some older implementations; if your target application only handles mono, add -ac 1 to the FFmpeg command to downmix. Because AAC (used in M4A) is a transform codec operating on frequency-domain data, the decoded PCM output is mathematically reconstructed — it is not bit-for-bit identical to the original pre-AAC-encoding source, and this reconstruction artifact is then quantized further into 8-bit samples. Users should also note that M4A supports gapless playback metadata (iTunSMPB) which offsets encoder/decoder delay; this gapless trimming will not be applied in the same way in the VOC output, potentially leaving a few milliseconds of silence at the start or end.

Related Tools