Convert RM to CAF — Free Online Tool

Convert RealMedia (.rm) files to Apple's Core Audio Format (.caf), extracting the audio stream and transcoding it to uncompressed PCM — ideal for bringing legacy streaming-era audio into high-fidelity Apple workflows. The conversion strips the proprietary RealAudio container and re-encodes the audio as 16-bit PCM, giving you a lossless-quality CAF file suitable for Logic Pro, GarageBand, or any Core Audio-compatible application.

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 contain audio encoded with proprietary RealAudio codecs (or AAC/MP3 variants) inside a container designed for early internet streaming. During this conversion, FFmpeg demuxes the .rm container, decodes the audio stream fully to raw PCM in memory, and then re-encodes it as pcm_s16le (signed 16-bit little-endian PCM) inside a CAF container. Because CAF is audio-only, any video stream in the .rm file is discarded. The decode-then-encode process means the output is technically uncompressed, though any quality lost in the original RealMedia encoding cannot be recovered — the conversion does not introduce additional lossy artifacts. CAF supports arbitrarily large files and integrates natively with macOS and iOS audio APIs.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg binary — the open-source multimedia processing engine that powers this conversion entirely within your browser via WebAssembly (FFmpeg.wasm), with no server upload required.
-i input.rm Specifies the input RealMedia file. FFmpeg's RM demuxer reads the proprietary RealNetworks container and exposes its audio (and any video) streams for processing.
-c:a pcm_s16le Sets the audio codec to signed 16-bit little-endian PCM — uncompressed audio at CD quality. This fully decodes whatever audio codec was used in the source .rm file (RealAudio, AAC, or MP3) and stores raw audio samples in the CAF container, preventing any further lossy compression.
-b:a 128k Specifies a target audio bitrate of 128 kbps. For the pcm_s16le codec this value is functionally ignored — uncompressed PCM's bitrate is fixed by its sample rate and bit depth — but the flag is passed as part of the standard command structure.
output.caf Defines the output file as a Core Audio Format (.caf) container. FFmpeg infers the CAF muxer from the .caf extension, producing a file natively compatible with Logic Pro, GarageBand, and Apple's Core Audio APIs on macOS and iOS.

Common Use Cases

  • Importing archived RealAudio lectures or radio broadcasts from the late 1990s and early 2000s into Logic Pro for audio restoration and cleanup
  • Preparing legacy streaming-era audio content for use in iOS app development, where CAF is the preferred format for Core Audio integration
  • Converting old RealMedia podcast or interview recordings into a lossless-quality container for long-term digital archiving on macOS
  • Bringing RealMedia music or spoken-word files into GarageBand projects where .rm files are not natively recognized
  • Extracting audio from RealMedia news clips or sports broadcasts saved from early streaming platforms to use in video editing timelines on Final Cut Pro
  • Batch-converting a library of .rm files from a legacy media server into CAF for ingest into a modern Apple-based broadcast production workflow

Frequently Asked Questions

No — converting to CAF with PCM encoding makes the audio uncompressed going forward, but it cannot recover quality lost during the original RealMedia encoding. RealAudio was a lossy codec, so any compression artifacts already present in the .rm file will be preserved in the CAF output. Think of the PCM output as a lossless snapshot of whatever quality the source file contains, which is useful for preventing further degradation in subsequent editing steps.
Some older .rm files use proprietary RealAudio codecs (such as RealAudio 1.0, 2.0, or Cook) that FFmpeg supports with varying degrees of accuracy. If the source file uses a very old or obscure RealAudio codec variant, FFmpeg may decode it imperfectly, resulting in audio artifacts or distortion in the output CAF file. Trying FFmpeg's latest version, which has improved legacy codec support, is the best starting point for problematic files.
CAF is Apple's proprietary container format and is not natively supported on Windows or most non-Apple platforms. Media players like VLC can open CAF files on Windows, but DAWs and audio tools outside the Apple ecosystem generally do not support it. If you need cross-platform compatibility, consider converting the .rm file to WAV or FLAC instead of CAF.
Because the output uses PCM (pcm_s16le), the -b:a bitrate flag has no effect on the actual audio — PCM is uncompressed and its bitrate is determined entirely by the sample rate and bit depth. To use a compressed codec instead, replace -c:a pcm_s16le with -c:a aac and then -b:a 128k will apply, for example: ffmpeg -i input.rm -c:a aac -b:a 128k output.caf. CAF also supports FLAC (use -c:a flac) for lossless compressed output.
Yes. On macOS or Linux you can run a shell loop: for f in *.rm; do ffmpeg -i "$f" -c:a pcm_s16le "${f%.rm}.caf"; done. On Windows Command Prompt, use: for %f in (*.rm) do ffmpeg -i "%f" -c:a pcm_s16le "%~nf.caf". This is particularly useful for large libraries of archived RealMedia files that exceed the browser tool's 1GB per-file limit.
RealMedia files can store metadata in their proprietary header format, and FFmpeg will attempt to map recognized tags (title, author, copyright) to equivalent CAF metadata fields during conversion. However, RealMedia's metadata scheme is non-standard and coverage is incomplete — some tags may be dropped or incorrectly labeled. If metadata preservation is critical, verify the output with a tool like ffprobe and manually add missing tags using FFmpeg's -metadata flag.

Technical Notes

The RealMedia container (.rm) was designed specifically for low-bandwidth streaming and encapsulates audio using RealNetworks' proprietary codecs as well as standard codecs like AAC and MP3. FFmpeg's RealMedia demuxer handles most common variants, but very old files using RealAudio 1.0 or 2.0 bitstream formats may expose decoding edge cases. The output codec pcm_s16le produces signed, 16-bit, little-endian PCM — the same bit depth as CD audio — stored inside a CAF container. CAF was designed by Apple to overcome the 4GB file size ceiling of AIFF and WAV, making it suitable for long recordings. Since this conversion involves a full decode-encode cycle (not a remux), processing time scales with file duration rather than file size. Video tracks present in .rm files are silently discarded because CAF is an audio-only container. The -b:a flag in the command is effectively a no-op for uncompressed PCM but is included for consistency with the tool's parameter structure; the true output bitrate will be sample_rate × bit_depth × channels (e.g., 44100 Hz × 16 bits × 2 channels = 1411 kbps for standard stereo).

Related Tools