Extract Audio from WTV to VOC — Free Online Tool
Extract audio from Windows Media Center TV recordings (.wtv) and save it as a VOC file using unsigned 8-bit PCM — the retro audio format developed by Creative Labs for Sound Blaster cards. This tool strips the video stream entirely and converts the AAC or MP3 audio track from your DVR recording into raw, uncompressed PCM data compatible with DOS-era tools and emulators.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your WTV file here
or click to browse
Free — no uploads, no signups. Your files never leave your browser.
Settings
Note: Browser-based encoding uses approximate quality targets. For precise CRF compression, copy the FFmpeg command above and run it on your desktop.
Estimated output:
Conversion Complete!
DownloadHow It Works
WTV files recorded by Windows Vista/7 Media Center typically contain an H.264 video stream alongside an AAC or MP3 audio track, plus broadcast metadata. During this conversion, FFmpeg discards the video stream entirely (using the -vn flag) and decodes whichever audio codec was used in the recording — most commonly AAC — then re-encodes it into unsigned 8-bit PCM (pcm_u8), which is the native audio encoding of the VOC format. This is a lossy-to-lossless conversion in the sense that the output PCM is uncompressed, but because the source audio was already compressed as AAC or MP3, the original analog quality cannot be recovered. The VOC container itself is extremely simple — it stores raw PCM samples with a short header block describing the sample rate and bit depth, with no support for metadata, chapters, or multiple audio tracks.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg tool. In the browser-based version of this tool, this runs via FFmpeg.wasm compiled to WebAssembly, so no files leave your device. |
-i input.wtv
|
Specifies the input file — your Windows Media Center TV recording in WTV format. FFmpeg will parse the container to identify the H.264 video stream, the AAC or MP3 audio stream, and any embedded broadcast metadata. |
-vn
|
Disables video output entirely, discarding the H.264 video stream from the WTV recording. Since VOC is an audio-only format, this flag is required — without it FFmpeg would attempt and fail to write video data into a container that cannot hold it. |
-c:a pcm_u8
|
Decodes the source audio (typically AAC from the WTV recording) and re-encodes it as unsigned 8-bit PCM — the native audio encoding of the VOC format developed for Creative Labs Sound Blaster cards. This produces uncompressed audio but at reduced dynamic range compared to the original broadcast audio. |
output.voc
|
Specifies the output filename and tells FFmpeg to use the VOC container format, which was developed by Creative Labs for DOS-era Sound Blaster applications. FFmpeg infers the VOC muxer from the .voc file extension. |
Common Use Cases
- Extracting audio from a recorded TV broadcast to use as a sound sample in a DOS game mod or retro demoscene project that requires VOC format assets.
- Converting a Windows Media Center DVR recording of a music performance or concert broadcast into a VOC file for playback in a DOS emulator like DOSBox.
- Archiving audio from old WTV recordings of radio programs captured via Windows Media Center before migrating away from the platform, in a format compatible with legacy Sound Blaster tools.
- Providing raw PCM audio from a WTV broadcast recording to a vintage sound editing application that only accepts Creative Labs VOC files.
- Extracting a speech or commentary track from a recorded TV segment for use in a retro-style multimedia presentation or educational software targeting DOS compatibility layers.
Frequently Asked Questions
The audio in your WTV file is already compressed — most Windows Media Center recordings use AAC at 128k or higher, which is a lossy format. Converting to VOC with pcm_u8 decodes that AAC audio and stores it as uncompressed 8-bit PCM, so there is no further compression. However, 8-bit PCM has a limited dynamic range (roughly 48 dB), which is noticeably lower fidelity than the original AAC source. If you need higher fidelity, consider using pcm_s16le (16-bit signed PCM) instead, which is also supported by the VOC format.
The default output codec for VOC in this conversion is pcm_u8 — unsigned 8-bit PCM — which only supports 256 discrete amplitude levels. This introduces quantization noise compared to the 16-bit audio most TV broadcasts are recorded at. The effect is especially noticeable in quiet passages or music. The VOC format also does not support stereo in all implementations; behavior may vary depending on the player or application consuming the file. This is an inherent limitation of the VOC format's roots in early 1990s Sound Blaster hardware.
Yes. WTV files can contain multiple audio tracks, for example a primary broadcast audio stream and a secondary language track. To select a specific track, add the flag -map 0:a:1 to the FFmpeg command (replacing '1' with the zero-based index of the desired audio stream). Without a -map flag, FFmpeg will default to the first audio stream it finds. You can inspect available streams in your WTV file by running ffmpeg -i input.wtv before the conversion.
By default, FFmpeg will preserve the sample rate of the audio stream found in the WTV file. Windows Media Center recordings commonly store audio at 48000 Hz, which matches the digital broadcast standard. The VOC format supports a range of sample rates, but very old Sound Blaster hardware and some DOS applications only handle rates up to 22050 Hz or 44100 Hz. If you need to resample, add -ar 22050 (or another target rate) to the FFmpeg command between the input and output arguments.
Replace -c:a pcm_u8 with -c:a pcm_s16le in the command to output 16-bit signed little-endian PCM instead. The full command becomes: ffmpeg -i input.wtv -vn -c:a pcm_s16le output.voc. This doubles the file size compared to 8-bit output but significantly improves dynamic range, reducing the quantization noise that is characteristic of 8-bit audio.
FFmpeg itself does not natively batch process files in a single command, but you can loop over files using a shell script. On Windows, use a FOR loop in Command Prompt: for %f in (*.wtv) do ffmpeg -i "%f" -vn -c:a pcm_u8 "%~nf.voc". On Linux or macOS, use: for f in *.wtv; do ffmpeg -i "$f" -vn -c:a pcm_u8 "${f%.wtv}.voc"; done. This is especially useful when dealing with a library of archived Windows Media Center recordings.
Technical Notes
WTV (Windows Television) is a Microsoft-proprietary container format that wraps MPEG-2 transport stream data and uses an Advanced Systems Format-like structure for metadata storage. FFmpeg has solid read support for WTV, including broadcast metadata fields such as program title, channel, and recording timestamps — however, none of this metadata is preserved in the VOC output, as the VOC format has no metadata support whatsoever beyond a basic file header. The VOC format stores audio in discrete data blocks preceded by type and length identifiers, with the audio data itself being raw PCM. The pcm_u8 codec uses unsigned 8-bit samples (values 0–255, with 128 representing silence), which differs from the more common signed convention — this is a quirk specific to the Sound Blaster hardware's original design. One important limitation is that VOC files produced by FFmpeg from stereo WTV audio will technically be stereo PCM data in the file, but many VOC players and DOS applications only support mono playback; you may want to add -ac 1 to the command to downmix to mono for maximum compatibility with legacy tools and emulators.