Initializing... drag & drop files here
Supports: RM
PPM is the colour member of the Netpbm family: a plain-text header followed by raw pixel bytes, with no compression, no palette, no metadata and no colour profile. It exists so that image-processing code can read a picture in about ten lines without a library. This tool decodes one frame from a RealMedia .rm file — RealNetworks' streaming container, holding RealVideo, in circulation since 1997 — and writes that frame as a PPM. There is no quality control on this page because PPM has nothing to compress; the only settings that change the file are the frame, the pixel dimensions and the bit depth.
| Property | Value |
|---|---|
| Family | Netpbm — PBM (bilevel), PGM (greyscale), PPM (colour), PNM, PAM |
| Written here | P6, the binary colour form, not the P3 ASCII form |
| Header | Magic number, width, height and a maximum sample value, all as text |
| Compression | None whatsoever |
| Bytes per pixel | 3 at 8-bit, 6 at 16-bit |
| Transparency | Not supported by the format |
| Metadata | None — no EXIF, no ICC profile, no orientation flag |
| Typical use | Feeding image-processing pipelines and academic tooling that expect raw samples |
.rm onto the page or click "+ Add Files"; several files can be queued and share the same settings. They are uploaded over an encrypted connection, processed on our servers, and deleted automatically after a few hours — no sign-up, no watermark, never shared or made public.0, which is the opening frame. Type any timestamp, decimals included, to move. "Multiple Screenshots" instead captures a run of frames at a rate you choose.We measured all three settings on the same 640 × 480 frame taken from a RealMedia file:
| Bit Depth | Header written | Maximum sample value | Distinct colours in the result | File size |
|---|---|---|---|---|
| 8-bit (default) | P6, binary | 255 | 14,756 | 921,615 bytes |
| 16-bit | P6, binary | 65535 | 14,756 — no gain | 1,843,217 bytes |
| 1-bit | P6, binary | 1 | 8 | 921,613 bytes — no saving |
Both surprises are worth spelling out. 16-bit doubles the file and adds nothing, because the frame arriving from the video decoder is already 8 bits per channel — RealVideo is an 8-bit codec, so widening the samples just pads each one with zeros. 1-bit does not shrink the file at all. It crushes every channel to a single bit, which leaves eight possible colours, but the P6 encoding still writes one byte per sample, so the picture is destroyed and you save two bytes of header. If you want a smaller PPM, reduce the pixel dimensions — that is the only thing that works.
Because it stores every pixel literally. A 640 × 480 frame is 921,600 bytes of pixel data plus a short text header, and no arrangement of the picture's content changes that. The video frame it came from is a compressed approximation occupying a few kilobytes. PPM's whole reason for existing is that a program can read it without a decompressor, and the price of that is the file size.
Only if a downstream tool explicitly refuses 8-bit input. There is no image-quality reason to do it here: the source video is 8-bit, so the extra byte per sample carries no additional information. We confirmed this by counting distinct colours in both outputs — 14,756 either way, from a file twice the size.
Eight colours and the same file size. The label reads "1-bit (Black & White)", but PPM is a colour format, so setting the depth to one bit reduces each of red, green and blue to on or off — the eight corners of the RGB cube — while the P6 encoding continues to write a full byte per sample. If you actually want a bilevel image, PBM rather than PPM is the format for it, and this page does not produce one.
The first frame of the clip. That is frequently not the frame you want: RealMedia files were often encoded straight from a broadcast or tape feed and open on black, on a dissolve, or on a camera still finding focus. Put a timestamp into "Time (seconds)" — the field takes decimals, so 12.5 is twelve and a half seconds in.
Because of what the source is. RealVideo was encoded for dial-up and early broadband, so 320 × 240 and 352 × 288 are ordinary frame sizes for .rm files. Choosing a taller preset under Image resolution enlarges the output, but there is no detail to recover — scaling up a 320 × 240 frame gives you a bigger blurry picture, not a sharper one.
No, and that is deliberate. The Image Compression group does not render on this page because PPM has no compression to configure. Bit depth and pixel dimensions are the only two things that affect the size of the file, and only pixel dimensions affect it usefully.
Yes. Switch Frame Selection to "Multiple Screenshots" and pick a capture rate — the list runs from one frame every tenth of a second to one every ten seconds. Each captured frame is written as its own PPM at the same depth and resolution. Bear in mind the size arithmetic: a hundred frames at 640 × 480 is about 92 MB of uncompressed data.
RealMedia files carrying RealNetworks rights management cannot be decoded by any general converter, and truncated .rm downloads — common for files pulled over RTSP from sites that no longer exist — may decode to a point and then stop, so an early timestamp can succeed where a later one fails. If a specific frame refuses to come out, convert the whole clip with RM to MP4 first and grab the still from that, or trim to the region you care about with Video Cutter, which accepts .rm directly.
For almost every purpose, yes. RM to PNG stores exactly the same pixels, losslessly, at a fraction of the size, and every image viewer on earth opens it. Choose PPM when a specific piece of software expects raw Netpbm samples and nothing else.