Extract Audio from CAVS to VOC — Free Online Tool

Extract audio from CAVS (Chinese Audio Video Standard) files and save it as a VOC file — the classic Creative Labs format used in DOS-era Sound Blaster applications. The conversion strips the H.264 video stream and decodes the AAC audio into raw PCM (unsigned 8-bit) for maximum compatibility with retro software and hardware.

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

CAVS files carry AAC-encoded audio alongside an H.264/libx264 video stream. This tool discards the video entirely using the -vn flag, then transcodes the AAC audio into uncompressed PCM (unsigned 8-bit, little-endian) and packages it into a VOC container. VOC is a simple, headerless-style format developed by Creative Labs for the Sound Blaster card and does not support variable bitrate or multi-track audio — so the AAC stream must be fully decoded and re-encoded as raw PCM rather than simply remuxed. The result is a lossless PCM representation of the original audio, though any quality ceiling set during the original AAC encoding remains in the output.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg tool — in the browser this runs via FFmpeg.wasm (WebAssembly), and the identical command can be used locally on your desktop to process files over 1GB or for batch conversion of CAVS files.
-i input.cavs Specifies the input CAVS file. FFmpeg reads the container, identifies the H.264 video stream and the AAC audio stream inside, and makes both available for processing or discarding.
-vn Stands for 'video none' — this flag completely discards the H.264 video stream from the CAVS file, ensuring the output VOC file contains only audio data, as VOC has no concept of a video track.
-c:a pcm_u8 Decodes the AAC audio from the CAVS file and re-encodes it as unsigned 8-bit PCM (pcm_u8) — the native codec of the VOC format and the one expected by Creative Labs Sound Blaster hardware and DOS-era audio software.
output.voc Defines the output filename and tells FFmpeg to write a VOC container. FFmpeg uses the .voc extension to select the correct muxer, packaging the raw pcm_u8 audio stream with the minimal VOC header that legacy players and DOS emulators like DOSBox require.

Common Use Cases

  • Extracting dialogue or sound effects from CAVS broadcast recordings to use as audio assets in DOS game modding or retro game development projects that require VOC-format samples.
  • Converting Chinese broadcast standard video content into Sound Blaster-compatible audio for playback on vintage PC hardware or DOS emulators like DOSBox.
  • Archiving the audio track of a CAVS video in an uncompressed, raw PCM format for long-term preservation or further processing with legacy audio tools that only accept VOC input.
  • Extracting narration or commentary from CAVS-encoded educational or broadcast media to use as voice samples in retro-style multimedia software.
  • Isolating a specific audio segment from a CAVS broadcast file for integration into a Sound Blaster demo scene production where VOC is the expected audio format.
  • Preparing audio from CAVS source material for use in ScummVM-compatible game assets or similar classic game engine audio pipelines that rely on VOC files.

Frequently Asked Questions

The conversion from AAC (lossy) to PCM (lossless) does not introduce any additional compression artifacts — PCM is a perfect, uncompressed representation of whatever audio data was decoded. However, because the original CAVS audio was encoded in AAC, any quality loss from that initial encoding is already baked in and cannot be recovered. The VOC file will be an accurate but ceiling-limited copy of the CAVS audio track.
AAC is a highly efficient lossy codec that compresses audio significantly — a typical 128kbps AAC stream is a fraction of the size of its uncompressed equivalent. VOC stores raw PCM audio with no compression whatsoever, so even at 8-bit unsigned depth the file size grows substantially relative to the AAC-encoded source. This is expected and unavoidable given VOC's lossless, uncompressed nature.
The output uses pcm_u8, which is unsigned 8-bit PCM — the native and most widely supported codec for the VOC format. This matches the original Sound Blaster hardware specification and is compatible with DOSBox, ScummVM, and most retro audio players that accept VOC files. If you need 16-bit audio quality, pcm_s16le is also supported by VOC, but you would need to modify the FFmpeg command manually.
Replace -c:a pcm_u8 with -c:a pcm_s16le in the command, giving you: ffmpeg -i input.cavs -vn -c:a pcm_s16le output.voc. Signed 16-bit little-endian PCM provides significantly better dynamic range (96dB vs 48dB) and is still within the VOC format specification. Keep in mind this will roughly double the output file size compared to 8-bit PCM.
No. The VOC format was designed as a minimal, bare-bones audio container for the Sound Blaster card and has virtually no metadata support — it stores raw PCM data with a basic header describing sample rate, bit depth, and channel count. Any title, artist, or language metadata present in the CAVS file will be lost during conversion.
Yes — on the command line you can use a shell loop to process multiple files. On Linux or macOS: for f in *.cavs; do ffmpeg -i "$f" -vn -c:a pcm_u8 "${f%.cavs}.voc"; done. On Windows Command Prompt: for %f in (*.cavs) do ffmpeg -i "%f" -vn -c:a pcm_u8 "%~nf.voc". The browser-based tool processes one file at a time, so the desktop FFmpeg command is especially useful for batch workflows.

Technical Notes

CAVS (Chinese Audio Video Standard) files typically use AAC audio at 128kbps, which means the source audio is already lossy before any conversion occurs. When decoding AAC to raw PCM for VOC output, FFmpeg fully decodes the compressed audio stream — there is no shortcut remux path available since VOC does not support AAC as a codec. The default output codec, pcm_u8, produces unsigned 8-bit mono or stereo audio at whatever sample rate was present in the CAVS source; if the source is stereo, the VOC file will be stereo as well. VOC does not support multi-track audio, subtitles, or chapters, so any of those elements in the CAVS file are silently dropped. One known limitation is that very high sample rates (e.g., 48kHz) may need to be resampled down for strict Sound Blaster hardware compatibility — classic SB hardware typically operated at 8kHz to 44.1kHz. For DOSBox and emulated environments, 44.1kHz or 22.05kHz pcm_u8 output works reliably. The VOC format also has a maximum file size practical limit in some legacy players, so extracting very long CAVS recordings may produce VOC files that older software cannot load.

Related Tools