Extract Audio from RM to WAV — Free Online Tool

Extract audio from legacy RealMedia (.rm) files and convert it to uncompressed WAV format using PCM 16-bit signed little-endian encoding. This tool is ideal for rescuing audio from old streaming-era RealMedia archives where the AAC or MP3 audio track needs to be decoded and written to a universally compatible, lossless-container WAV file.

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 AAC or MP3-encoded audio streams inside RealNetworks' proprietary container format. During this conversion, FFmpeg demuxes the .rm container to extract the compressed audio stream, fully decodes it to raw PCM samples, and re-encodes those samples as 16-bit signed little-endian PCM (pcm_s16le) inside a standard WAV container. Because RealMedia's container is proprietary and WAV uses uncompressed PCM, there is no way to simply copy the stream — a full decode-and-re-encode cycle is required. The video stream, if present, is discarded entirely via the -vn flag. The resulting WAV file is uncompressed and will be significantly larger than the source .rm file, but it will be readable by virtually any audio application.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg binary — the open-source multimedia processing engine that handles demuxing the proprietary RealMedia container, decoding the compressed audio stream, and writing the uncompressed WAV output.
-i input.rm Specifies the input RealMedia file. FFmpeg detects the .rm container format and identifies the audio codec (typically AAC or MP3) and any video stream (typically MJPEG) contained within it.
-vn Disables video output entirely, telling FFmpeg to ignore the MJPEG video stream that may be present in the .rm file. Since WAV is a pure audio container, this flag is required to avoid errors and to skip unnecessary video processing.
-c:a pcm_s16le Sets the output audio codec to 16-bit signed little-endian PCM, the standard uncompressed audio encoding used in WAV files. This is necessary because the compressed AAC or MP3 audio from the RealMedia source cannot be copied directly into a WAV container — it must be fully decoded and re-encoded as raw PCM samples.
output.wav Defines the output filename and tells FFmpeg to write the result as a WAV file. The .wav extension causes FFmpeg to use the WAV muxer, which wraps the pcm_s16le audio data in a standard RIFF/WAV container compatible with virtually all audio software and operating systems.

Common Use Cases

  • Digitizing archived radio broadcasts or interviews that were originally distributed as RealMedia streams in the late 1990s or early 2000s
  • Extracting audio from old e-learning or educational content delivered in .rm format so it can be re-edited in a modern DAW
  • Converting RealMedia audiobook or lecture recordings to WAV for import into audio restoration software that requires uncompressed input
  • Recovering audio from RealMedia files stored on old CD-ROMs or web archives where the original source audio has been lost
  • Preparing audio from .rm files for broadcast or podcast production pipelines that mandate WAV as the intake format
  • Archiving historically significant RealMedia audio content into a non-proprietary, preservation-friendly format before the .rm files become unplayable on modern systems

Frequently Asked Questions

No — converting from RealMedia to WAV will not recover quality that was lost when the audio was originally encoded into AAC or MP3 inside the .rm container. Those are lossy codecs, and once the detail is gone it cannot be restored. What the WAV output gives you is a lossless container that faithfully represents the decoded audio exactly as it exists in the source file, with no further quality degradation. Think of it as freezing the quality at its current state rather than improving it.
RealMedia files store audio in compressed formats like AAC or MP3, which can achieve compression ratios of 10:1 or more. WAV with pcm_s16le encoding stores every audio sample as a raw 16-bit integer with no compression, so a typical stereo file at 44.1 kHz uses about 10 MB per minute. A 3-minute .rm file that was 3 MB compressed can easily expand to 30 MB or more as a WAV file. This is expected and correct behavior — the WAV file contains the full uncompressed audio data.
Yes. To change the bit depth, replace pcm_s16le with another PCM codec such as pcm_s24le (24-bit) or pcm_s32le (32-bit): ffmpeg -i input.rm -vn -c:a pcm_s24le output.wav. To change the sample rate, add the -ar flag followed by the desired rate, for example -ar 44100 for 44.1 kHz or -ar 48000 for 48 kHz. If no sample rate is specified, FFmpeg will use whatever sample rate is encoded in the source .rm audio stream.
The -vn flag in the command explicitly discards all video streams. RealMedia files can contain MJPEG-encoded video, but since the output format is WAV — a pure audio container — there is nowhere to store video data. The -vn flag ensures FFmpeg skips video processing entirely, which also makes the conversion faster and avoids any errors that might arise from trying to handle the video stream.
RealMedia uses its own proprietary metadata format, and WAV has limited, non-standardized metadata support via INFO chunks. FFmpeg will attempt to map common tags like title and artist to WAV INFO chunks, but not all metadata fields have WAV equivalents, and many media players handle WAV metadata inconsistently. If metadata preservation is critical, consider using a format with robust tagging support like FLAC after converting from .rm.
Yes, with a small modification. On Linux or macOS you can use a shell loop: for f in *.rm; do ffmpeg -i "$f" -vn -c:a pcm_s16le "${f%.rm}.wav"; done. On Windows Command Prompt, use: for %f in (*.rm) do ffmpeg -i "%f" -vn -c:a pcm_s16le "%~nf.wav". This applies the same conversion logic to every .rm file in the current directory, outputting a matching .wav file for each.

Technical Notes

RealMedia (.rm) is a proprietary container developed by RealNetworks and was widely used for internet streaming between roughly 1997 and 2005. The audio stream inside a .rm file is most commonly encoded in AAC or MP3 (exposed to FFmpeg as libmp3lame-compatible streams), both of which are lossy formats. Because WAV's default and most compatible codec is pcm_s16le — raw 16-bit signed little-endian PCM — FFmpeg must fully decode the compressed RealMedia audio before writing uncompressed samples to the output file. This means the conversion is never a simple stream copy and always involves one full decode-encode cycle. The pcm_s16le codec produces CD-quality audio (when the source sample rate is 44.1 kHz) and is supported by essentially every piece of audio software ever made. One known limitation is that RealMedia files from some encoders embed RealAudio-specific codec variants (such as Cook or ATRAC) that older builds of FFmpeg may struggle to demux correctly; if you encounter errors, ensure you are using a recent FFmpeg build. Subtitle and chapter metadata are not supported by either format, so no data of that type will be lost or expected. The output WAV file will not support multiple audio tracks, but RealMedia itself does not support multiple audio tracks either, so this is not a practical limitation for this format pair.

Related Tools