Convert RM to WTV — Free Online Tool

Convert legacy RealMedia (.rm) files to Windows Television (.wtv) format by re-encoding the MJPEG or AAC streams into H.264/AAC using libx264 — making old streaming-era video compatible with Windows Media Center and modern DVR workflows.

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 MJPEG video and AAC or MP3 audio encoded with RealNetworks' proprietary streaming-optimized parameters. During this conversion, the video stream is fully re-encoded from MJPEG to H.264 using libx264, which dramatically improves compression efficiency — H.264 can achieve the same perceived quality at a fraction of MJPEG's bitrate. The audio stream, if already AAC, is re-encoded to ensure it conforms to the WTV container's expectations and bitrate target. The output WTV container wraps these streams in a format that Windows Vista/7/8/10 Media Center can natively recognize as a recorded TV file, complete with support for multiple audio tracks and subtitle streams (though RM sources typically carry neither). Because MJPEG is an intra-frame-only codec, every frame is independently compressed, so libx264 has full access to all source frames without needing to decode inter-frame dependencies first.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg tool, which handles demuxing the RealMedia container, decoding the MJPEG video and AAC audio streams, re-encoding them, and writing the WTV output file.
-i input.rm Specifies the input RealMedia file. FFmpeg automatically detects the RM container and identifies the enclosed MJPEG video and AAC/MP3 audio streams for decoding.
-c:v libx264 Re-encodes the video stream using the libx264 H.264 encoder, replacing the MJPEG codec from the RM source with a far more compression-efficient inter-frame codec suitable for the WTV container.
-c:a aac Encodes the audio stream as AAC, which is the default and most compatible audio codec for WTV. If the source RM already contains AAC, this still re-encodes it to ensure it conforms to the target bitrate and container requirements.
-crf 23 Sets the Constant Rate Factor for libx264 to 23, the default quality level. This controls the trade-off between H.264 output quality and file size — lower values produce better quality at larger sizes, which matters especially when re-encoding from a lossy MJPEG source.
-b:a 128k Sets the AAC audio output bitrate to 128 kbps, a standard target that provides good audio quality for the speech-heavy and mono/stereo audio typical of late-90s to early-2000s RealMedia streaming content.
output.wtv Specifies the output filename and triggers FFmpeg to use the WTV muxer, wrapping the H.264 video and AAC audio into a Windows Television container recognized by Windows Media Center.

Common Use Cases

  • Importing archived RealMedia streaming recordings from the late 1990s or early 2000s into Windows Media Center for organized DVR-style playback and cataloging
  • Digitizing old RealMedia news clips or sports broadcasts downloaded from legacy streaming sites and storing them in a WTV library alongside recorded TV content
  • Re-encoding low-efficiency MJPEG-based RM files to H.264 in WTV to dramatically reduce file size while retaining similar visual quality for long-term archival
  • Preparing RealMedia educational or training videos for playback on Windows Media Center-equipped home theater PCs where WTV is the expected media format
  • Converting a collection of RealMedia conference recordings or lectures into WTV so they can be managed alongside broadcast TV recordings in a unified Media Center library
  • Rescuing content from old RealMedia files captured from early internet radio or video services and repackaging it into a modern, seekable container with proper H.264 encoding

Frequently Asked Questions

Yes, some quality loss is expected because this is a lossy-to-lossy transcoding pipeline. The original RM file's MJPEG video is decoded and re-encoded to H.264, which introduces a second generation of compression artifacts. However, at the default CRF value of 23, libx264 typically produces output that looks visually similar to or better than low-bitrate MJPEG sources from the streaming era — MJPEG at typical late-90s streaming bitrates was already heavily compressed. If the source RM file is higher quality, consider lowering the CRF value (e.g., -crf 18) to preserve more detail.
While WTV can technically carry MJPEG video, the default output codec is libx264 (H.264) because it is far more efficient than MJPEG — H.264 uses inter-frame prediction to compress video across multiple frames, while MJPEG compresses each frame independently like a sequence of JPEG images. Keeping MJPEG would result in much larger WTV files with no compatibility benefit. H.264 is also universally supported in Windows Media Center and virtually all modern players that can open WTV files.
WTV supports both subtitles and multiple audio tracks, but RealMedia files almost never contain either feature — RM was designed as a single-stream internet delivery format with no subtitle support. This means the WTV output will contain a single video and single audio track, matching the RM source. If you have a separate subtitle file (e.g., SRT) that corresponds to your RM recording, FFmpeg can embed it into the WTV output by adding '-i subtitles.srt -c:s copy' to the command.
The video quality is controlled by the '-crf' flag, where lower values mean higher quality and larger file sizes. The default is 23, which balances quality and file size well for most sources. For a higher-quality output with less compression, use '-crf 18'; for a smaller file where quality is less critical, try '-crf 28' or '-crf 35'. Note that because the RM source is already lossy, setting CRF below 18 provides diminishing returns — you cannot recover detail that was lost in the original MJPEG encoding.
Yes. On Linux or macOS, you can run a simple shell loop: 'for f in *.rm; do ffmpeg -i "$f" -c:v libx264 -c:a aac -crf 23 -b:a 128k "${f%.rm}.wtv"; done'. On Windows Command Prompt, use: 'for %f in (*.rm) do ffmpeg -i "%f" -c:v libx264 -c:a aac -crf 23 -b:a 128k "%~nf.wtv"'. This processes each RM file individually, which is important because FFmpeg's libx264 encoding is single-file and each conversion is independent.
The file will be a valid WTV container and will open in Windows Media Center and Windows Media Player, but it will lack broadcast metadata such as channel name, episode title, program guide data, or recording timestamps that WTV files captured from actual TV broadcasts contain. Media Center may display it with a generic title based on the filename. If you need to embed TV-style metadata, tools like MCEBuddy or manual XML sidecar files can be used to enrich the WTV file after conversion.

Technical Notes

RealMedia's use of MJPEG as its video codec is somewhat unusual — most RM files from the streaming era used RealVideo (RV10, RV20, RV30, RV40), but MJPEG-based RM files do exist, particularly from certain capture workflows. FFmpeg handles MJPEG demuxing from RM containers well, but if your RM file contains a native RealVideo stream rather than MJPEG, the input detection will differ and you may need to verify the source codec with 'ffmpeg -i input.rm' before conversion. The WTV container format is structured around MPEG transport stream conventions internally and is tightly coupled to Windows Media Center's DVR ecosystem; while it supports H.264 and AAC natively, it is not a universally portable format and may not open on non-Windows systems without third-party tools. The '-b:a 128k' audio bitrate is appropriate for AAC and will be transparent for most speech and low-complexity audio common in streaming-era RM content. One known limitation: RealMedia files sometimes contain embedded RealText or streaming metadata that FFmpeg will discard during this conversion, as WTV has no equivalent fields for legacy RealNetworks metadata tags.

Related Tools