Urgent.News

What's breaking now, across thousands of outlets.

Tech

Pillow fades a P3 photo, sharp clips it: picking the JPEG default per target

The same Display P3 image went through Pillow 11.3 and sharp 0.34.5 with no color options set, and the two JPEGs went wrong in opposite directions. Pillow's copy came out washed out. sharp's copy was right for everyday colors and quietly flattened the most saturated ones. Neither library has a bug here. Each one simply defaults to a different target, and an image pipeline inherits that target…

When comparing Pillow 11.3 and sharp 0.34.5 when given an image in Display P3 color space, the two libraries produced different results. Pillow's output was washed out, while sharp's output was accurate for everyday colors but flattened the most saturated ones. Neither library had a bug – they simply defaulted to different color targets, and an image pipeline follows that target unless explicitly overridden.

The test used two HEIC files from macOS sips, a synthetic color chart, and a CC0 photo from Wikimedia Commons, all encoded in Display P3 with a 536-byte profile. Both libraries decoded the JPEG from a PNG that carried the P3 pixel values and profile. Pillow kept the P3 numbers but lost the profile, while sharp converted to sRGB and dropped the tag.

Keeping the P3 profile as the default results in less color shift and smaller file sizes. However, if the JPEG might be ignored or stripped of profiles by the destination, converting to sRGB is a safer choice, even if it incurs a slight color shift.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

The Matrix Blue-Pill Syndrome

What if an artificial intelligence, while trying to protect us from danger, unintentionally helped bring that very danger about? It's been a while since I last wrote something.

  • AI amplifying misinformation poses dangers
  • Feedback loops turn minor errors into distortions
  • AI-generated fabrications hard to distinguish

Your Agent's Command Printed Nothing for 2 Minutes. stdout Wasn't a Terminal

Book: AI That Acts The series: AI in TypeScript — 5 books, from your first LLM call to agents in production — all five here My project: Hermes IDE | GitHub — an IDE for developers who ship with Claude…

  • Claude Code's Bash tool streams command output to a file
  • Two-minute timeout moves command to background
  • Block-buffered commands may have empty output file

Three color checkpoints for HEIC to JPEG, and why sips -g profile isn't one

Why do some HEIC-to-JPEG conversions come out washed out? The measurements I ran on 2026-11-06 pointed to three checks rather than to a library.

  • Three color checkpoints cause washed-out HEIC-to-JPEG conversions
  • ICC profile must be read, carried, or converted by pixels
  • Mixing formats leads to color discrepancies

More from Saturday 7 November →