Convert RM to VOC — Free Online Tool

Convert RealMedia (.rm) files to Creative Labs VOC format, extracting the audio stream and encoding it as uncompressed PCM unsigned 8-bit audio. This is a niche but precise conversion for retro audio workflows, DOS game modding, or Sound Blaster compatibility — stripping away RealNetworks' legacy streaming container and delivering raw, lossless PCM audio in a format DOS applications can natively play.

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

RealMedia files typically carry audio encoded with AAC or MP3 (libmp3lame) inside RealNetworks' proprietary streaming container. During this conversion, FFmpeg demuxes the .rm container, extracts the compressed audio stream, decodes it fully to raw PCM, and then re-encodes it as unsigned 8-bit PCM (pcm_u8) inside a VOC container. Because the source audio is lossy (AAC or MP3) and the output is lossless PCM, the conversion does not recover any audio detail lost during the original RM encoding — but it does produce a faithful, uncompressed representation of whatever audio is present. The video stream, if any, is discarded entirely since VOC is a pure audio-only format. The result is a VOC file with unsigned 8-bit samples, mono or matching the source channel count, at the source sample rate.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg binary — in this browser-based tool, it runs as a WebAssembly (wasm) build entirely within your browser, with no server involved. On your desktop, this would call your locally installed FFmpeg executable.
-i input.rm Specifies the input RealMedia file. FFmpeg reads the .rm container, identifies the audio stream (typically AAC or MP3) and any video stream, and makes them available for processing.
-c:a pcm_u8 Instructs FFmpeg to decode the source audio (AAC or MP3 from the RM file) and re-encode it as unsigned 8-bit PCM — the native, uncompressed audio format expected by Sound Blaster hardware and DOS applications that consume VOC files.
output.voc Defines the output filename with the .voc extension, which tells FFmpeg to use its VOC muxer. The resulting file is structured with a Creative Labs VOC header followed by raw pcm_u8 audio data blocks, playable by Sound Blaster-compatible hardware and DOS emulators like DOSBox.

Common Use Cases

  • Extracting audio from archived late-1990s RealMedia web streams for use in DOS-era game mods that require Sound Blaster-compatible VOC files
  • Preparing voice lines or sound effects sourced from old RealMedia tutorials or demos for use in DOSBox game projects that load audio via VOC
  • Converting RealMedia audio clips from retro multimedia CD-ROMs into VOC format for use with vintage Sound Blaster ISA cards in hardware preservation setups
  • Archiving narration or sound effects from RealMedia educational software into VOC files compatible with period-accurate DOS multimedia authoring tools
  • Stripping and linearizing compressed RealMedia audio into uncompressed PCM for analysis or further processing in retro audio software that only reads VOC
  • Batch-converting a library of .rm audio files from an old intranet or streaming server archive into VOC files for a retro computing museum exhibit

Frequently Asked Questions

No. The original RealMedia file stores audio in a lossy format (AAC or MP3), meaning some audio detail was permanently discarded when the .rm file was created. Converting to VOC produces an uncompressed PCM copy of that already-degraded audio — it does not restore lost fidelity. The VOC file will be lossless in the sense that no further quality loss occurs during this conversion, but it is a lossless copy of a lossy source.
RealMedia files use compressed audio codecs (AAC or MP3) that can achieve compression ratios of 10:1 or more. VOC files store raw, uncompressed PCM audio, so every second of audio occupies a fixed amount of space regardless of content complexity. For example, 8-bit mono audio at 22050 Hz uses 22050 bytes per second, with no compression applied — this is dramatically larger than an equivalent AAC-encoded segment.
The VOC format technically supports stereo audio in its later revisions (VOC version 1.20+), and FFmpeg's pcm_u8 encoder will attempt to preserve the channel layout from the source. However, many legacy DOS applications and Sound Blaster drivers only reliably handle mono VOC files. If you are targeting an actual DOS environment or DOSBox game engine, consider adding '-ac 1' to the FFmpeg command to downmix to mono for maximum compatibility.
VOC is a purely audio-only container format with no capacity for video data. FFmpeg automatically discards any video stream present in the source .rm file and only processes the audio. No explicit flag is needed to drop the video — the output container's audio-only nature implicitly handles this. If your .rm file contains only audio, nothing is lost.
The default output uses unsigned 8-bit PCM (pcm_u8), which is the most compatible codec for classic Sound Blaster hardware. If you need 16-bit audio, change '-c:a pcm_u8' to '-c:a pcm_s16le' in the command — this uses signed 16-bit little-endian PCM, which VOC also supports and which preserves more dynamic range. To resample the audio, add '-ar 22050' or '-ar 44100' before the output filename to set a specific sample rate.
Yes. On Linux or macOS, you can loop over files in a shell: 'for f in *.rm; do ffmpeg -i "$f" -c:a pcm_u8 "${f%.rm}.voc"; done'. On Windows Command Prompt, use: 'for %f in (*.rm) do ffmpeg -i "%f" -c:a pcm_u8 "%~nf.voc"'. Each file is processed independently, so a failure on one file will not stop the rest of the batch.

Technical Notes

The VOC format was designed for Creative Labs Sound Blaster cards and is structured as a series of data blocks, with the audio payload stored as raw PCM samples. FFmpeg's VOC muxer writes a valid VOC 1.10 or 1.20 header followed by uncompressed pcm_u8 or pcm_s16le audio data. Because RealMedia files from the late 1990s often contain audio encoded at lower sample rates (8000 Hz, 11025 Hz, or 22050 Hz) to optimize for dial-up streaming, the output VOC file will inherit whatever sample rate was used in the original — no automatic upsampling occurs. Metadata such as track titles or author tags present in the RM container are not preserved, as VOC has no standardized metadata block structure. The .rm container may also wrap RealAudio-specific codecs (like cook or sipr) in some older files; if FFmpeg cannot decode the specific RealAudio codec variant, the conversion will fail with a codec error rather than producing silent or corrupted output. Always verify the source codec with 'ffmpeg -i input.rm' before converting a large batch.

Related Tools