MPF.

The best argument in the format for never trusting a marker code: a second, unscrubbed photograph hiding under the same number as the colour profile.

// definition

MPF (Multi-Picture Format) is a CIPA specification for storing more than one image in a single JPEG file. The index lives in an APP2 segment identified by MPF\0, and the additional images are appended to the file itself.

What it is

MPF is how a camera stores a full-resolution preview beside the main image, how some phones store a depth or portrait companion frame, and how stereo pairs are packaged. The APP2 index describes where each image starts and how large it is; the images themselves follow the primary one in the file.

Why it matters

An MPF companion image is a photograph. It has its own metadata, it was captured at the same moment and place, and no scrubber that only walks the primary image's segments will have touched it. "I removed the metadata" is not true of a file that still carries a second picture with a full EXIF block of its own.

And it lives under APP2 — the same marker as the ICC profile, which must be kept. A tool that decides by marker number keeps both or drops both, and neither answer is right.

// in ScrubPony MPF is always dropped, with the reason can embed a second, unscrubbed image, while the ICC profile beside it is kept. Identifier-based classification is what makes those two verdicts possible in the same file.

Related terms

Common questions.

Will dropping MPF break my portrait-mode photo?

The main image is untouched and displays normally. Effects that depend on a companion frame — some depth-based edits — will no longer have the data they need. That is the trade, and it is stated rather than hidden.

Are the extra images removed from the file?

The MPF index segment is dropped, so nothing describes or points at them. ScrubPony copies the entropy-coded data from the SOS marker to end of file verbatim, which is what makes the pixel claim provable, so what follows the primary scan is passed through rather than parsed.

Get ScrubPony

Strips identifying metadata out of JPEGs without touching a pixel. C99, no dependencies beyond libc, macOS and Linux, MIT-licensed.