Convert PPM (Netpbm) images to MPEG video slideshow. Create video from scientific image sequences. Free.

PPM to MPEG Converter|Create MPEG video from PPM Netpbm image sequences for scientific visualization, time-lapse, and image processing.

Initializing... drag & drop files here

Supports: PPM

OptionsAdvanced Options - Our defaults are optimized for the best results. We recommend you keeping the defaults unless you have a specific need.
Show All Options
Merge strategy
Select Merge images to combine all uploaded files into a single video. Use Video per image to create a separate video for each individual file.
Image Duration
Duration
This is amount to time a single image is displayed on the output video. Only applied to images that are not GIF.
Background Color
Background Color
File Compression
Preset
Video resolution

How to Convert PPM to MPEG Online

  1. Upload Your PPM Files: Drag and drop or click "Add Files" to load your PPM (Portable Pixmap) images. Batch upload is supported — drop a whole frame sequence (frame0001.ppm through frame9999.ppm) and they will be encoded in filename order.
  2. Pick Merge Strategy and Image Duration: Set Merge Strategy to "Merge images" to encode every PPM into a single MPEG video, or "Video per image" to emit one MPEG per file. Pick Image Duration per frame from 1/60s up to 10s — 1/24s, 1/30s, and 1/60s give true 24/30/60 fps playback for simulation or animation frames.
  3. Set Quality, Codec, Resolution, and Background (Optional): Under File Compression choose Quality Preset (Highest → Lowest), Target File Size %, Specific File Size (MB), Constant Bitrate, Variable Bitrate, or Constant Quality (CRF). Default Video Codec is MPEG-2 with MP2 audio (program-stream native); switch to H.264 / MPEG-4 if you need wider modern playback. Pick a Video Resolution preset (2160p, 1440p, 1080p, 720p, 480p, 360p, 240p, 144p) or enter custom width × height. Set Background Color (default Black) for any letterbox bars.
  4. Convert and Download: Click Convert. PPM frames are decoded and re-encoded into a single .mpeg program-stream video — no sign-up, no watermark, no installed toolchain.

Why Convert PPM to MPEG?

PPM (Portable Pixmap) is the colour member of the Netpbm family — a deliberately simple, uncompressed raster format created by Jef Poskanzer in 1988 and maintained as part of Netpbm since 1993. A P6 PPM file is just a magic number, width, height, max sample value, then raw RGB bytes — trivial to write from any program, which is exactly why it shows up as the output of so many image-processing pipelines and simulations. The downside is size: a 1920×1080 PPM frame is roughly 6.2 MB, so a one-minute 30 fps sequence is ~11 GB on disk before you do anything with it. Encoding to MPEG turns that pile of frames into a single video file an ordinary player can open.

  • Scientific simulation output — CFD solvers, n-body simulations, weather models, and Monte-Carlo visualisers commonly dump one PPM per timestep because writing P6 takes about 10 lines of C. Converting the sequence to MPEG gives you a sharable result instead of a 50 GB folder of frames.
  • Computer-vision and robotics traces — OpenCV (imwrite("frame.ppm", img)), ROS image_pipeline, and many academic CV projects log PPM frames during runs. Stitching them into MPEG produces a debug video you can scrub.
  • Gource and other data-visualisation renders — Gource's --output-ppm-stream writes a raw PPM stream that's almost always piped into a video encoder; the dev.to Gource pipeline walkthrough is a representative example.
  • Replacing the legacy ppmtompeg toolchain — Netpbm's ppmtompeg originated in 1995 and only emits MPEG-1 video CDs; it's still in Debian and Homebrew but is fiddly to drive. This page covers the same workflow without installing Netpbm.
  • Time-lapse and animation from rendered frames — POV-Ray, Blender (PPM output add-ons), and educational graphics projects routinely render to PPM. At 1/24s per frame you get cinematic 24 fps; at 1/30s you get broadcast-style 30 fps.
  • DVD-Video / VCD-style legacy targets — MPEG-2 program stream with MP2 audio is the DVD-Video coding standard; MPEG-1 program stream is the Video CD standard. If a downstream device wants .mpg/.mpeg, this is the format it expects.

PPM vs MPEG — Format Comparison

Property PPM (Netpbm P6) MPEG (program stream)
Type Single uncompressed raster image Multiplexed audio + video container
Spec Netpbm ppm(5), magic P6 (binary) or P3 (ASCII) ISO/IEC 11172-1 (MPEG-1 PS) and ISO/IEC 13818-1 (MPEG-2 PS / H.222.0)
Compression None — width × height × 3 bytes per pixel (8-bit), ×6 for 16-bit Lossy, inter-frame (I/P/B), typically 50-200× smaller than raw frames
File extension .ppm .mpg, .mpeg, .m2p, .ps
Carries audio No Yes — typically MP2 (MPEG-1 Layer II) for MPEG-1/2 PS
Frames per file 1 Many (a full video)
Typical use today Pipeline intermediate; scientific frame dumps DVD-Video, broadcast capture, legacy archives, set-top playback
Year created 1988 (Pbmplus); Netpbm fork 1993 MPEG-1: 1993; MPEG-2: 1995

File Compression Modes — Which to Pick

Mode What it controls Best for
Quality Preset Encoder picks bitrate from Highest → Lowest Quickest path; "Very High" is the default
Target File Size % Output ≈ N% of input frame total bytes Hitting a rough size budget
Specific File Size (MB) Encoder targets an exact MB output Email caps, upload limits, fixed media
Constant Bitrate (CBR) Fixed Mbps end-to-end Streaming, broadcast, DVD authoring
Variable Bitrate (VBR) Bitrate flexes with scene complexity Best size/quality balance for archive
Constant Quality (CRF) Fixed perceptual quality, size varies Mixed-content sequences, simulations

Frequently Asked Questions

Will the output be MPEG-1 or MPEG-2?

By default the encoder produces an MPEG-2 program stream with MP2 audio — this is the DVD-Video coding standard (ISO/IEC 13818). Older .mpg decoders that only handle MPEG-1 (ISO/IEC 11172, the Video CD standard) may need a different target; in that case use the PPM to MPG or PPM to MPEG-2 variants, or pick H.264 from the Video Codec dropdown for modern players.

Why is the Trim option hidden?

Trim is a video-input control — it cuts existing video frames. PPM is a still-image input, so there is no timeline to trim. To control video length, change Image Duration and the number of uploaded frames. Total output length = number of PPMs × Image Duration. 720 frames at 1/24s = 30 seconds; 1,800 frames at 1/30s = 60 seconds.

Can I create a smooth time-lapse from a simulation frame dump?

Yes — that's the canonical use case. Number your PPM files in upload order (step0001.ppm, step0002.ppm, …), upload them all, set Merge Strategy to "Merge images", and pick Image Duration of 1/24s, 1/30s, or 1/60s for true 24/30/60 fps playback. Use Constant Quality (CRF) so quiet timesteps don't waste bitrate.

What programs typically produce PPM frames?

Anything that wants a "just write the pixels" output path: Netpbm's own pnmtopnm/anytopnm chain, ImageMagick (convert image.png image.ppm), POV-Ray, Gource (--output-ppm-stream), OpenCV's imwrite, MATLAB's imwrite(...,'ppm'), plus a long tail of academic graphics, CFD, and CV projects. Many course assignments require students to write a PPM by hand because the format is short enough to fit in one page of code.

My PPM frames are huge — can I convert thousands of them?

Yes. Files process on our servers; the practical limits are your machine's RAM and upload time, not a server quota. For very long sequences (tens of thousands of frames) it's faster to first compress each PPM with a pnmtopng or similar step locally, then upload the PNGs through PNG to MPEG — or compress the input with Compress PPM before encoding. The output bitrate, not the input format, controls the final video size.

Will the frames stay in order?

Yes — frames are encoded in filename sort order, so use zero-padded names (frame0001.ppm, not frame1.ppm). If you upload frame1.ppm, frame2.ppm, …, frame10.ppm, they will be sorted as 1, 10, 2, 3, … because that's how lexicographic sorting treats unpadded numbers — the same gotcha that bites ffmpeg -pattern_type glob and ppmtompeg.

Why is MPEG-2 the default codec instead of H.264?

MPEG-2 with MP2 audio is the native pairing for the MPEG program stream container — it's what DVD-Video players and most legacy .mpeg decoders expect. If your target is YouTube, modern phones, or web playback, change Video Codec to H.264 (or convert directly with PPM to MP4). The container will still be a .mpeg program stream; only the video codec inside changes.

What about audio — can I add a soundtrack?

The PPM-to-MPEG path is image-sequence-to-video and doesn't take an audio input. The output is encoded with a silent MP2 track so the file is a valid program stream. To add music or narration, encode here first, then run a second pass through a video editor or ffmpeg -i video.mpeg -i track.mp3 -c:v copy -c:a mp2 out.mpeg.

How does this compare to running ppmtompeg locally?

Netpbm's ppmtompeg (originated 1995) is the classic Unix tool for exactly this conversion, but it only emits MPEG-1 video and requires installing Netpbm plus writing a parameter file by hand. This page produces MPEG-2 by default, supports H.264/MPEG-4 inside the program stream, gives you a UI for bitrate/CRF/preset control, and runs without a local toolchain. For one-off conversions it's faster; for batch pipelines ffmpeg or ppmtompeg is still the right answer.

Rate Convert PPM (Netpbm) images to MPEG video slideshow. Create video from scientific image sequences. Free. Tool

Rating: 4.8 / 5 - 69 reviews