Initializing... drag & drop files here
Supports: 3G2, 3GP, 3GPP, ASF, AV1, AVCHD +30 more
2.100 for 2 s 100 ms), or pick "Multiple Screenshots" to extract a sequence at a chosen rate (1 FPS slideshow up to 30 FPS smooth, or 1 to 10 seconds per frame).PPM (Portable Pixmap) is the simplest practical RGB image format on the web. Defined by the Netpbm project, a PPM file is just a short ASCII header (P6, width, height, max-value) followed by raw, uncompressed RGB bytes — no compression, no color profile, no metadata, no quirks. That's exactly what makes it useful when you need raw pixels straight out of a video and don't want JPEG ringing or PNG's deflate stream in the way.
| Property | PPM | PNG | JPG | TIFF |
|---|---|---|---|---|
| Compression | None (raw RGB) | Lossless (deflate) | Lossy (DCT) | Optional (none / LZW / deflate / JPEG) |
| Header complexity | ASCII, ~20 bytes | Binary chunks | JFIF/EXIF segments | Multi-IFD tag tree |
| Color depth | 1 to 16 bits per channel | 1, 2, 4, 8, 16 bpc | 8 bpc only | 1 to 32 bpc |
| Alpha channel | No (use PAM for alpha) | Yes | No | Yes |
| File size for 1920x1080 | ~6.2 MB per frame | 2-4 MB typical | 200-800 KB typical | 1-8 MB typical |
| Parser ease | Trivial (10 lines of C) | Needs zlib | Needs DCT lib | Needs libtiff |
| Best for | CV pipelines, codec testing, teaching | Web, screenshots | Photos for sharing | Print, scanning, archival |
| Your need | Frame Selection | Settings |
|---|---|---|
| Single still at a moment (thumbnail, evidence frame) | Specific Frame | Enter timestamp in seconds, e.g. 5.250 for 5.25 s |
| Animation / time-lapse breakdown | Multiple Screenshots | 1-2 FPS for slideshows, 10-15 FPS for smooth motion |
| Codec benchmark input (lossless reference) | Multiple Screenshots | 30 FPS, Keep original resolution, 8-bit |
| HDR / scientific source | Specific Frame or Multiple | 16-bit (High Precision), Keep original |
| Binary mask / OCR pre-processing | Specific Frame | 1-bit (Black & White) |
| Web preview of every Nth second | Multiple Screenshots | 1 second per frame (or 2, 3, 5, 10 s) |
PPM stores raw, uncompressed RGB bytes after a tiny ASCII header. PNG adds lossless deflate compression and a chunk structure; JPG adds lossy DCT compression. If your downstream tool is a computer-vision model, a video encoder fed reference frames, or a CS assignment that needs to parse pixels by hand, PPM gives you the exact pixels with no decode step in between. For sharing photos with humans, JPG or PNG is still the right call.
For raw 8-bit RGB, file size is roughly width × height × 3 bytes plus a tiny header. A single 1920x1080 frame is about 6.2 MB; 4K (3840x2160) is about 24.9 MB; 720p is about 2.8 MB. Bumping Bit Depth to 16-bit doubles those numbers. A one-minute 30 FPS 1080p extraction at every frame is roughly 11 GB — choose Multiple Screenshots with a sensible FPS or "seconds per frame" if you don't actually need every frame.
Photoshop opens PPM natively. macOS Preview and Windows Photos do NOT — they treat .ppm as unknown. For viewing PPMs on macOS, use GIMP, Photopea (browser), or convert to PNG first. On Windows, IrfanView and XnView open them. ImageMagick's display works everywhere. If you need a format every OS opens out of the box, extract to PNG instead.
All four are part of the Netpbm family. PBM is 1-bit black-and-white (P4 binary, P1 ASCII). PGM is grayscale, 1-16 bits per pixel (P5/P2). PPM is RGB color, 1-16 bits per channel (P6/P3). PAM is the modern superset that adds an alpha channel and arbitrary tuple types (P7). xconvert's "1-bit (Black & White)" Bit Depth on this page still produces a PPM container with a 1-bit-per-channel maxval — strict PBM output is a separate format.
Yes. Pick "Multiple Screenshots" and set the frame rate to match the source (typically 24, 25, 30, or 60 FPS — check the file card after upload to see the source FPS). For sources above 30 FPS, the dropdown supports up to 30 FPS export; for slower-than-source extraction, use "seconds per frame" (1 s, 2 s, 3 s, etc.) to thin the sequence.
Keep original if your downstream tool expects the source dimensions (codec benchmarking, ML model trained on full frames). Pick a preset (768p is the default here) when you need consistent sizes across batches or when storage matters — at 1080p each PPM is 6.2 MB, but at 480p it's about 1.2 MB, a 5x reduction.
xconvert processes files through the cloud, so single uploads can be large. Practical browser-upload caps are usually a few GB per file depending on your connection. If you have a long 4K source and only need a handful of stills, use "Specific Frame" rather than uploading and extracting every frame — you'll save bandwidth and time.
xconvert has matching pages for the reverse and adjacent conversions: PPM to JPG, PPM to PNG, and for other extract-from-video workflows Video to JPG and Video to PNG. If your source is specifically MP4 or MOV, the format-specific pages MP4 to PPM and MOV to PPM carry identical options.