Extract Audio from DVR to VOC — Free Online Tool

Extract audio from DVR surveillance or broadcast recordings and save it as a VOC file using 8-bit unsigned PCM — the raw, uncompressed audio format native to Creative Labs Sound Blaster hardware. This tool demuxes the AAC audio stream from your DVR container and re-encodes it to pcm_u8, producing a lossless PCM output compatible with classic DOS applications and retro audio toolchains.

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

DVR files typically carry AAC-encoded audio alongside an H.264 (libx264) video stream inside a proprietary container used by digital video recorders. This conversion discards the video stream entirely and decodes the compressed AAC audio, then re-encodes it as uncompressed 8-bit unsigned PCM (pcm_u8) inside a VOC container. Because AAC is a lossy format, the source audio has already undergone one compression cycle — converting it to pcm_u8 does not recover lost information, but it does produce a fully uncompressed, bit-stable output from that point forward. The VOC container itself adds a small Creative Labs header block before the raw PCM data, which is what makes the file recognizable to DOS-era Sound Blaster drivers and retro-compatible software.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg binary — the open-source multimedia processing engine running here as FFmpeg.wasm compiled to WebAssembly, executing entirely inside your browser without uploading your DVR file to any server.
-i input.dvr Specifies the input file in DVR format, the proprietary container used by digital video recorders to store surveillance or broadcast captures, typically containing an H.264 video stream and an AAC audio stream.
-vn Disables all video output, telling FFmpeg to ignore the libx264 or MJPEG video stream in the DVR file entirely — only the audio stream will be decoded and passed to the output, which is appropriate since VOC is a pure audio format.
-c:a pcm_u8 Encodes the audio as 8-bit unsigned PCM, the codec native to Creative Labs VOC files. This decodes the lossy AAC audio from the DVR source and re-encodes it as uncompressed integer samples, producing a bit-stable output compatible with Sound Blaster hardware and DOS-era audio tools.
output.voc Defines the output file with a .voc extension, which causes FFmpeg to write a Creative Labs VOC container with the appropriate file header block, making the file recognizable to Sound Blaster drivers, DOSBox, and retro multimedia applications that expect the VOC format.

Common Use Cases

  • Extracting voice announcements or intercom audio from surveillance DVR footage for use in a retro DOS-based kiosk or embedded system that expects VOC audio files
  • Archiving broadcast capture audio from a DVR recording into a raw PCM format for long-term preservation without any proprietary codec dependency
  • Feeding extracted DVR audio into classic DOS game modding workflows where tools like VPLAY or SBPLAY require VOC-format sound files
  • Stripping and converting the audio track from a DVR recording to VOC for playback testing on vintage Sound Blaster hardware or hardware emulators like DOSBox
  • Converting surveillance audio clips to a simple, headerless-adjacent PCM format (VOC) so legacy audio analysis tools that cannot parse AAC or modern containers can process them
  • Preparing audio from DVR broadcast captures for integration into retro multimedia projects or demoscene productions that require Sound Blaster-native VOC assets

Frequently Asked Questions

The audio in your DVR file was already compressed with AAC, which is a lossy codec — meaning some audio information was discarded at the time of recording. This conversion decodes that AAC stream and stores it as uncompressed pcm_u8 in the VOC file, so no additional lossy compression is applied. However, 8-bit unsigned PCM has a limited dynamic range (only 256 amplitude levels), which is significantly lower than the 16-bit or higher resolution you may be used to from modern formats. If your source DVR audio is voice or intercom quality, this is unlikely to be noticeable, but for music or high-fidelity content, the 8-bit depth will be the dominant quality constraint.
The VOC format stores audio as pcm_u8 by default — 8-bit unsigned PCM — which has a much lower bit depth than the AAC audio in your DVR file. While PCM itself introduces no further compression artifacts, the quantization to 8-bit resolution can introduce audible noise or reduced clarity, especially in quiet passages. Additionally, AAC audio in DVR files is already lossy, so the VOC output reflects whatever quality survived the original AAC encoding. The term 'lossless' in the context of VOC refers to the PCM encoding step being lossless, not the full pipeline from DVR source.
Yes. The VOC format also supports pcm_s16le, which is 16-bit signed little-endian PCM and offers a much wider dynamic range than the default 8-bit unsigned format. To use it, modify the FFmpeg command to '-c:a pcm_s16le' instead of '-c:a pcm_u8'. Be aware that not all retro software or hardware expects 16-bit VOC files — original Sound Blaster cards and many DOS utilities were designed around 8-bit VOC audio, so compatibility depends on your target playback environment.
No. The '-vn' flag in the FFmpeg command explicitly instructs FFmpeg to ignore and discard all video streams, so the libx264 or MJPEG video in the DVR file is never decoded or touched. Only the audio stream is processed. This makes the conversion faster and ensures the output VOC file contains only audio data with no video metadata or stream references.
Yes, you can adapt the command for batch processing on your desktop. On Linux or macOS, use a shell loop such as: for f in *.dvr; do ffmpeg -i "$f" -vn -c:a pcm_u8 "${f%.dvr}.voc"; done. On Windows Command Prompt, use: for %f in (*.dvr) do ffmpeg -i "%f" -vn -c:a pcm_u8 "%~nf.voc". The browser-based tool processes one file at a time, so the desktop command is especially useful when you have a large batch of DVR surveillance recordings to convert.
No. The VOC format has essentially no metadata support beyond the basic Creative Labs file header that identifies codec and sample rate. Any metadata embedded in the DVR file — such as recording timestamps, channel identifiers, camera names, or DVR system tags — will be lost during conversion. If preserving that metadata matters for your use case, consider extracting it separately before converting, or choosing an output format with richer metadata support such as WAV or FLAC.

Technical Notes

DVR is a proprietary container format with no standardized specification, meaning FFmpeg relies on heuristic detection to identify the audio stream and its codec. In most cases the audio is AAC at sample rates between 8kHz and 48kHz, depending on the DVR hardware manufacturer. The output pcm_u8 codec encodes samples as unsigned 8-bit integers centered at 128 (silence = 0x80), which is the native format for original Sound Blaster VOC files. FFmpeg will preserve the source sample rate in the output unless you specify a resampling flag like '-ar', so a DVR file recorded at 8kHz will produce an 8kHz VOC file. The VOC container supports only a single audio track, which aligns with the DVR format's single audio stream limitation. File sizes for VOC output will be substantially larger than the AAC-compressed DVR audio — at 8kHz mono pcm_u8, you can expect roughly 480 KB per minute, scaling linearly with sample rate and channel count. There is no support for stereo in the original VOC 1.x specification on some hardware, so confirm your target playback environment supports the channel configuration of your source DVR audio.

Related Tools