Your files stay on your Mac.
Convertessa opens Mamiya MEF files directly and writes ordinary JPGs — no Mamiya software, no import step, no tethering app. LibRaw demosaics the sensor data, libvips encodes the JPG, and you set the quality before the run. Full capture resolution comes through unchanged, a whole card's worth converts in one pass, and the originals are left untouched next to the exports.
A .mef file is what a Mamiya digital back writes to card: the ZD camera and ZD Back from 2004, and the medium-format backs that followed on 645AFD and 645DF bodies. Under the extension it is a TIFF-EP style container holding one frame of undemosaiced sensor data at 16 bits per channel, plus a small baked JPEG preview that most file browsers show you instead of the real image.
That linear payload is the whole reason MEF files are worth keeping, and it is exactly the thing JPG cannot hold. JPG is 8 bits per channel with a fixed gamma curve, so the moment the file is written, the recoverable highlight headroom and the shadow latitude of the original capture stop existing in the output. Convert for delivery; keep the .mef as the master.
Decoding is done by LibRaw, which libvips links against, and libvips writes the JPG. What that pipeline produces is a neutral rendering: white balance as recorded, a standard tone curve, sRGB output. It is not the interpretation Leaf Capture or Mamiya Digital PhotoStudio gave you, and no sidecar those programs wrote is read. If your look lived in a tethering session, it was never in the .mef and it will not be in the .jpg.
--strip-metadata..iiq, a separate format with its own decoder. Renaming the extension will not turn one into the other.Drag a single frame or the whole card folder onto the window. Convertessa reads the Mamiya back's native RAW payload — there is no catalogue to import into and no sidecar file required.
Choose JPG as the target and set the quality. Max keeps the detail medium format is bought for; a lower value is plenty for contact sheets and client proofs going out over email.
Convert. Each MEF is decoded, mapped down to 8 bits and written as a JPG at full capture resolution. A 60-frame ZD shoot finishes in one pass without opening a single dialog.
Images, audio, video, documents, archives, eBooks and fonts — all converted natively, right on your Mac.
Pick a format you have — see everything Convertessa can turn it into.
Convert hundreds of files at once with per-type group defaults and individual overrides.
First-class support for HEIC, AVIF and WebP — encode and decode, both ways. Read JPEG XL and a dozen more modern formats too.
Drop files anywhere on the window. Native, instant, and exactly what you’d expect on a Mac.
Dial in compression, resolution and bitrate. Keep originals pristine or shrink for sharing.
Never overwrite a file by accident. Convertessa appends safe suffixes automatically.
Every job is logged locally. Re-run a previous conversion or revisit recent outputs in a click.
Bundle your converted files straight into a single ZIP, TAR or 7z — packaged and ready to share the moment a job finishes.
Right-click any file in Finder and choose Convert. A Quick Action handles it on the spot — no need to open the app first.
Shrink Convertessa to a tidy mini window that tucks into a corner — just a drop zone and a format picker for quick, one-off conversions.
No cloud. No account. No upload. Every conversion happens entirely on-device, using the power already in your Mac. What you convert is nobody’s business but yours.
Script conversions, wire them into your build, or batch a folder from the terminal. The same engine, no GUI required.
Read the full CLI documentation →Shrink Convertessa down to a small, focused window — drop, convert, done, with your recent conversions one click away.
macOS 14+ · Apple Silicon & Intel
New formats, new features, and fixes — every release, on the record.
Because the screen showed a rendering, not the file. A .mef stores unprocessed sensor values; the image on the back — and the thumbnail in the Finder — is a small JPEG the camera baked using its own settings. Convertessa's output comes from a full LibRaw decode with a neutral tone curve, so it can look flatter or cooler than you remember. That neutrality is deliberate: it leaves the frame somewhere an editor can take it, rather than locking in one camera's interpretation.
They come from the same lineage — Mamiya's medium-format business merged into Phase One — but IIQ is a different format with a different decoder path, so use the matching conversion rather than renaming the file. Renaming an .iiq to .mef does not make it one; the decode fails instead of quietly producing a wrong image. The same applies in reverse to Leaf-branded backs from that period.
Yes. The pixel count that came off the back is the pixel count in the JPG. Convertessa does not crop, resize or resample — it converts. If you need a smaller file for email, lower the quality value rather than expecting the app to shrink the frame. JPG's own ceiling of 65,535 pixels per side sits far above anything a medium-format back has ever produced, so there is no risk of hitting it.
Not in a JPG. The format is defined at 8 bits per channel, so the 16-bit linear values in the .mef are mapped down to 256 levels per channel on write, and that step is one-way. If the goal is to escape a format nothing opens while keeping tonal depth, convert to TIFF instead and hold on to the .mef as the archival master. JPG is for the copies you hand out.
EXIF from the back — shutter, aperture, lens, capture date and anything else the system recorded — is written into the JPG. If the files are going to a client or a public gallery and you would rather not ship that, add the flag: convertessa shoot.mef --to jpg --strip-metadata. It affects the output only; the .mef keeps everything it always had.
Point the CLI at the folder and give it a destination:
convertessa ~/Cards/ZD_0012/*.mef --to jpg --quality high -o ~/Proofs
Every .mef in that folder is decoded and written into ~/Proofs, which is created if it does not exist. --quality takes a number from 0 to 100 or one of the presets web, balanced, high and max. Leave the flag off and you get max.
That file fails and the rest of the run continues — one bad frame off a dying card does not stop the batch. To find out why, re-run that file alone with --debug, which prints the resolved path, the engine route and the full decoder error instead of a one-line failure. The CLI also refuses to overwrite an existing JPG unless you pass --force, so re-running a half-finished batch is safe.