Convert AU to VOC — Free Online Tool

Convert Sun AU audio files to Creative Labs VOC format, transcoding the audio from AU's default big-endian 16-bit PCM (pcm_s16be) or other Unix PCM variants to VOC's unsigned 8-bit PCM (pcm_u8) — the native format for Sound Blaster-compatible DOS applications and retro game engines.

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

AU files store audio with a simple header followed by raw PCM data, commonly in signed 16-bit big-endian format (pcm_s16be) as used on Sun/Unix systems. VOC files, developed by Creative Labs for the Sound Blaster card, use a block-based structure and natively store audio as unsigned 8-bit PCM (pcm_u8) or signed 16-bit little-endian PCM (pcm_s16le). During this conversion, FFmpeg decodes the AU audio stream and re-encodes it as pcm_u8, which involves a bit depth reduction from 16-bit to 8-bit and a sample representation shift from signed to unsigned values. This re-encoding is lossless in terms of format fidelity but does reduce dynamic range from the 16-bit source, as 8-bit audio can only represent 256 discrete amplitude levels versus 65,536 for 16-bit. The byte order also flips from big-endian (network/Unix order) to the little-endian format expected by DOS-era x86 hardware.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg multimedia processing tool, which handles decoding the Sun AU input, converting the PCM audio data, and writing the VOC output — all running locally in your browser via WebAssembly.
-i input.au Specifies the input AU file. FFmpeg reads the AU header to determine the audio codec (typically pcm_s16be), sample rate, and channel count before beginning the conversion to VOC.
-c:a pcm_u8 Sets the audio codec for the VOC output to unsigned 8-bit PCM, which is the native and most compatible audio format for Creative Labs Sound Blaster VOC files used in DOS-era software and games. This re-encodes the AU source (commonly 16-bit big-endian signed) into 8-bit unsigned samples as expected by the VOC container.
output.voc Defines the output filename with the .voc extension, which causes FFmpeg to write a properly structured Creative Voice File with the correct 'Creative Voice File' magic header and block-based data layout expected by Sound Blaster-compatible players and DOS emulators.

Common Use Cases

  • Preparing audio samples originally recorded or distributed in Sun AU format for use in retro DOS game modding projects that require Sound Blaster VOC files.
  • Converting Unix-originated sound effects from AU archives into VOC format for use with DOSBox or other DOS emulators that load VOC audio assets.
  • Migrating audio assets from early Unix multimedia software libraries into a format compatible with vintage Creative Labs Sound Blaster hardware or software.
  • Repurposing AU audio clips from early internet audio archives (where AU was a dominant streaming format) into VOC files for retro game development tools.
  • Converting system sounds or voice samples stored in AU format for use with 1990s-era multimedia authoring tools and CD-ROM applications that expect VOC input.

Frequently Asked Questions

Yes, there is a quality reduction in most cases. If your AU file uses 16-bit PCM (pcm_s16be, the AU default), converting to VOC's default pcm_u8 reduces the bit depth to 8 bits, which lowers dynamic range and introduces quantization noise — you may hear this as a slight graininess or hiss, especially in quiet passages. If your AU file already uses pcm_u8 or pcm_s8, the quality impact is minimal. For the highest fidelity VOC output, you can opt for pcm_s16le encoding instead (see the FFmpeg command FAQ below).
AU files can technically store audio at any sample rate, while VOC files have historical limitations tied to Sound Blaster hardware — early VOC versions support sample rates up to 44,100 Hz for mono and lower rates for stereo. In practice, FFmpeg will write the VOC file at whatever sample rate is in your AU source, but playback compatibility on actual vintage hardware or strict VOC players may require rates like 8000, 11025, 22050, or 44100 Hz. If your AU file uses an unusual sample rate, consider resampling it during conversion.
Yes. VOC supports signed 16-bit little-endian PCM (pcm_s16le) in addition to the default 8-bit format. To preserve 16-bit quality, modify the FFmpeg command to use '-c:a pcm_s16le' instead of '-c:a pcm_u8', giving you: 'ffmpeg -i input.au -c:a pcm_s16le output.voc'. Note that 16-bit VOC files may not be compatible with the oldest Sound Blaster 1.0/2.0 hardware or software that only expects 8-bit VOC data, but DOSBox and most modern VOC players handle them fine.
AU files have a minimal header that can contain a text annotation field, but this metadata is not carried over to VOC format during conversion. VOC files use a block-based structure that supports loop blocks and silence blocks, but FFmpeg does not automatically map AU metadata to VOC loop or marker blocks. If your retro game project requires specific VOC loop points, those would need to be set with a dedicated VOC editor after conversion.
On Linux or macOS, you can loop over all AU files in a directory with: 'for f in *.au; do ffmpeg -i "$f" -c:a pcm_u8 "${f%.au}.voc"; done'. On Windows Command Prompt, use: 'for %f in (*.au) do ffmpeg -i "%f" -c:a pcm_u8 "%~nf.voc"'. Each AU file will be individually transcoded to a matching VOC file with the same base name, using the same pcm_u8 encoding as the browser-based tool.
The most common reason is the bit depth reduction from 16-bit (AU default) to 8-bit (VOC default pcm_u8). This halves the number of bits used to represent each audio sample, compressing the dynamic range and introducing audible quantization artifacts. Additionally, the sample representation shifts from signed values (where silence is 0) to unsigned values (where silence is 128), though FFmpeg handles this remapping automatically. If the difference is pronounced, switch to pcm_s16le as your VOC codec to maintain 16-bit fidelity.

Technical Notes

AU (Sun Audio) uses a straightforward 24-byte minimum header with magic number, data offset, data size, encoding type, sample rate, and channel count, followed by raw PCM data stored in big-endian byte order — the native order for SPARC and Motorola 68k architectures. VOC files use a Creative Labs block structure beginning with a 26-byte file header and 'Creative Voice File' magic string, followed by typed data blocks (audio data, silence, loop start/end, etc.). The default codec for this conversion, pcm_u8, is the most universally compatible VOC encoding across all Sound Blaster generations and DOS software, but it limits audio to 8-bit unsigned samples. The AU format supports a.law (pcm_alaw) and mu-law (pcm_mulaw) encoded variants commonly used in telephony; if your AU source uses these codecs, FFmpeg will decode them to linear PCM before re-encoding to pcm_u8, which is the correct behavior. VOC does not support multiple audio tracks, subtitles, chapters, or embedded metadata beyond what is encoded in its block structure. File sizes for VOC output will typically be smaller than AU originals when downconverting from 16-bit to 8-bit (roughly half the raw audio data size), but the VOC block overhead is negligible. Neither format supports video or transparency.

Related Tools