Convert TS to RM — Free Online Tool

Convert MPEG-2 Transport Stream (TS) files to RealMedia (RM) format directly in your browser, re-encoding video to MJPEG and audio to AAC for compatibility with legacy RealPlayer-based workflows. This conversion bridges modern broadcast-standard TS containers — which often carry H.264 or H.265 video — to RealNetworks' classic streaming format from the dial-up era.

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

TS files store video in modern codecs like H.264 or H.265 alongside AAC or AC3 audio, wrapped in a broadcast-oriented container designed for streaming resilience. RealMedia (RM) is a far more constrained proprietary format that supports only a limited set of codecs — in this case, MJPEG for video and AAC or MP3 for audio. This means the conversion is a full transcode: the video stream is decoded from its source codec (e.g., H.264) and re-encoded frame-by-frame into MJPEG, which stores each video frame as an independent JPEG image rather than using interframe compression. The audio is re-encoded to AAC at the specified bitrate. Because RM does not support subtitles, multiple audio tracks, or chapter markers, any of those elements present in the source TS file will be dropped. The result is a self-contained RM file suitable for legacy RealPlayer playback or archival in older media systems.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg binary — the open-source multimedia processing engine that handles the decoding, transcoding, and muxing pipeline for this TS-to-RM conversion.
-i input.ts Specifies the input MPEG-2 Transport Stream file. FFmpeg will demux the TS container to extract the video (e.g., H.264 or H.265) and audio (e.g., AAC or AC3) streams for transcoding.
-c:v mjpeg Sets the video encoder to MJPEG (Motion JPEG), the only video codec FFmpeg supports for writing to the RM container. This fully re-encodes every video frame from the source codec (such as H.264) into an independent JPEG-compressed image.
-c:a aac Sets the audio encoder to AAC, transcoding the source audio (which may be AC3, MP3, or another codec from the TS broadcast stream) into AAC, one of the two audio codecs supported in the RM format by FFmpeg.
-q:v 5 Sets the MJPEG video quality on a scale of 1 (highest quality, largest file) to 10 (lowest quality, smallest file). A value of 5 is the default, targeting a mid-range balance between visual fidelity and file size for the frame-by-frame MJPEG encoding.
-b:a 128k Sets the AAC audio output bitrate to 128 kilobits per second, which is the default and provides acceptable stereo audio quality for most speech and general-purpose content being archived into RealMedia.
output.rm Specifies the output filename with the .rm extension, instructing FFmpeg to mux the re-encoded MJPEG video and AAC audio into a RealMedia container file.

Common Use Cases

  • Preparing broadcast TS recordings for playback in legacy corporate or government media systems that were built around RealPlayer infrastructure in the early 2000s and never updated.
  • Archiving digitized VHS or broadcast captures (stored as TS) into RM format to maintain consistency with an existing RealMedia digital archive collection.
  • Converting recorded live-stream segments from TS (a common HLS output format) into RM for use in older educational platforms or intranets that only accept RealMedia files.
  • Extracting a single-track simplified version of a multi-audio-track TS broadcast file into RM for distribution to systems that cannot handle multiple audio streams.
  • Testing or demonstrating legacy streaming workflows by producing RM files from modern TS source material for retro computing or media history research projects.
  • Converting TS video clips into MJPEG-based RM files when downstream processing tools require frame-independent video (since MJPEG has no interframe dependencies, enabling easier frame-accurate editing in older software).

Frequently Asked Questions

The primary reason is the shift from modern interframe compression (H.264 or H.265 in the TS file) to MJPEG in the RM file. H.264 and H.265 achieve high quality at low bitrates by referencing data across multiple frames, while MJPEG encodes each frame independently as a JPEG image, which requires a much higher bitrate to achieve comparable visual quality. At the default quality setting of -q:v 5, the MJPEG output is a reasonable middle ground, but you will likely see larger file sizes and softer detail compared to the source TS. Lowering the -q:v value toward 1 improves quality at the cost of file size.
No. The RealMedia format does not support subtitle streams or multiple audio tracks. During conversion, FFmpeg will include only the first (or default) audio track and discard all subtitle streams and secondary audio tracks entirely. If your TS file contains multiple languages or embedded DVB/teletext subtitles, you should extract those separately before converting if you need to preserve them.
This depends heavily on the source TS content and settings. TS files using H.264 or H.265 are highly compressed through interframe prediction, so a TS file can be quite small relative to its duration. MJPEG in the RM output stores each frame independently, which typically produces significantly larger video data for the same visual quality level. In practice, converting a typical broadcast TS file to RM at default settings often results in a file that is several times larger than the source, even though RM is a lossy format. If file size is a concern, lowering audio bitrate and increasing the -q:v value (toward 10) can reduce output size.
Yes. The video quality is controlled by the -q:v flag, which accepts values from 1 (highest quality, largest file) to 10 (lowest quality, smallest file), with 5 as the default. For example, replace -q:v 5 with -q:v 2 for higher fidelity MJPEG output. The audio bitrate is set with -b:a — you can change 128k to 64k, 96k, 192k, or 256k depending on your needs. Note that RealMedia's audio quality ceiling is limited by the format's legacy constraints, so very high audio bitrates may offer diminishing returns.
The single-file command shown on this page can be adapted for batch processing on your desktop using a shell loop. On Linux or macOS, you can run: for f in *.ts; do ffmpeg -i "$f" -c:v mjpeg -c:a aac -q:v 5 -b:a 128k "${f%.ts}.rm"; done. On Windows Command Prompt, use: for %f in (*.ts) do ffmpeg -i "%f" -c:v mjpeg -c:a aac -q:v 5 -b:a 128k "%~nf.rm". The browser-based tool processes one file at a time, so the local FFmpeg command is especially useful for bulk conversions.
RealMedia is a legacy format with very limited modern support. RealPlayer (still available from RealNetworks) can open RM files, and VLC Media Player supports RM playback on all major platforms, making it the most practical modern option. Most web browsers, mobile devices, and contemporary video editors do not natively support RM. The format is generally only relevant today for maintaining compatibility with older archival systems, legacy intranet platforms, or retro computing contexts — not for general media distribution.

Technical Notes

The TS-to-RM conversion involves several important technical tradeoffs. On the video side, MJPEG is the only video codec FFmpeg can write into an RM container, which means regardless of what codec the source TS uses (H.264, H.265, VP9, or MJPEG itself), a full video transcode always occurs. MJPEG uses discrete cosine transform compression on individual frames — identical to standard JPEG — which makes it excellent for frame-accurate scrubbing but inefficient for storage compared to modern codecs. The -q:v scale for MJPEG in FFmpeg is inverse to quality: 1 is best, 10 is worst. On the audio side, both AAC and MP3 (libmp3lame) are supported in RM, and the default AAC at 128k is a reasonable choice for voice or general audio, though RM was historically associated with RealAudio codecs that FFmpeg cannot encode to. Metadata from the TS file (program names, stream descriptors, broadcast timestamps) is not carried over to the RM container, as RM has a very limited metadata schema. The RM format also lacks support for chapters, which are occasionally embedded in TS files recorded from set-top boxes. Files larger than 1GB should be processed using the displayed FFmpeg command locally, as the browser tool's practical limit is 1GB due to WebAssembly memory constraints.

Related Tools