Back to feed
Dev.to
Dev.to
6/15/2026
HEIC to JPEG on macOS in Rust — Using sips Without Reinventing the Wheel

HEIC to JPEG on macOS in Rust — Using sips Without Reinventing the Wheel

Short summary

For HEIC-to-JPEG conversion on macOS in Rust, use the built-in sips command-line tool instead of bundling native libraries—it ships with every Mac, handles all HEIC variants natively, and produces Apple-quality output. Wrap execution in spawn_blocking for async Tauri commands. Use a 4-process Semaphore for parallel batch conversions—more than 6 concurrent processes shows diminishing returns on typical hardware.

  • sips is a macOS built-in command-line tool—requires zero bundling and works on Intel and Apple Silicon
  • Skip Rust crates for HEIC decoding; sips handles all variants better and adds no binary weight
  • Wrap in spawn_blocking for async code; use 4-process Semaphore for batching without diminishing returns

Generated with AI, which can make mistakes.

Is this a good recommendation for you?

Explore more