Supported formats
Useful support. Clear limits.
The converter checks file signatures and actual decoding. Native JPEG, PNG and WebP encoding are checked at runtime. Self-hosted WASM supplies AVIF encoding and a WebP fallback. Codecs load only when a conversion needs them.
| Format | Input | Output | Behavior |
|---|---|---|---|
| JPG / JPEG | Core | Core | Quality adjustable. Transparency flattened. |
| PNG | Core, still images | Core | Lossless encoding of developed 8-bit pixels. Alpha preserved. |
| WebP | Core, still images | Native or local WASM | Lossy encoding. Alpha preserved. Animation rejected. |
| DNG / Apple ProRAW | Experimental, three camera samples tested | No RAW output | Automatic LibRaw development to JPG, PNG or WebP. No preview extraction. |
| HEIC / HEIF (HEVC) | Verified still-image subset | Unsupported | Native decoding where reliable; lazy local WASM fallback. JPG, PNG and WebP output. Other HEIF codecs are unsupported. |
| AVIF | Verified SDR still images | Local WASM; up to 16 MP within memory limits | Native decoding with a WASM fallback. Lossy 8-bit sRGB output; supported alpha preserved. Animation rejected. |
| BMP / GIF / TIFF | Unsupported | Unsupported | TIFF signatures are accepted only when valid DNG tags are present. |
| CR2 / CR3 / NEF / ARW / RAF / ORF / RW2 | Unsupported | Unsupported | Not enabled or tested in this release. |
HEIC, HEIF and AVIF color limits
HEIF is a container family: the verified subset uses HEVC still images, including 12 MP iPhone photos and a 24.5 MP iPhone 15 Pro sample. Generic mif1/HEVC containers are tested; JPEG 2000, VVC, AVC and uncompressed HEIF are not enabled. Multi-photo files and sequences are rejected. Auxiliary gain maps, depth, thumbnails and Live Photo video are not included.
Recognized Apple Display P3 profiles are converted consistently to SDR sRGB, with out-of-gamut colors clipped. Native decoding handles other supported color profiles; unknown ICC and HDR variants may fail or look different between browsers. Untagged or unspecified SDR color is treated as sRGB. A real 10-bit SDR AVIF fixture is tested, but every output is 8-bit: HDR, wide-gamut precision and original ICC/EXIF/GPS metadata are not preserved. Keep originals.
AVIF encoding is single-threaded, can take longer, and has a 16 MP output cap plus a separate device memory budget. JPG, PNG and WebP to AVIF are verified. HEIC/HEIF output encoding is not enabled. Codec licenses and source availability are provided with the self-hosted assets.
What DNG development means
DNG is a container for camera RAW data and processing metadata. Apple ProRAW uses DNG to combine computational photography with an editable RAW workflow. RAW pixels need development: decoding, demosaicing when applicable, white balance and a color transform before they become a usable image.
The experimental engine uses LibRaw, camera white balance, full-resolution processing and sRGB output. It does not use a JPEG preview. Not every camera, DNG variant or compression codec is compatible. Apple Photos and Lightroom can apply different tone mapping, lens corrections and color rendering.
Output is a developed image
JPEG is lossy and flattens transparency. PNG preserves processed pixels with lossless encoding. Neither preserves the original RAW sensor data or its full dynamic range. All output in this app is 8-bit; 16-bit TIFF and HDR output are not available.
Device and browser requirements
Use a current browser with Web Workers, ImageBitmap and OffscreenCanvas. Support must still be tested for your device. Standard inputs are limited to 50 MP on desktop or 16 MP on mobile and low-memory devices. RAW allows up to 50 MP on desktops reporting an 8 GB or higher memory hint, 26 MP when the desktop hint is unavailable, and 12.5 MP on mobile or low-memory devices. A separate memory budget may reject smaller files. One iPhone 14 Pro ProRAW sample has been verified at its stored 7712 × 5784 resolution; broader camera/codec coverage remains unverified. Images may be no larger than 16,384 pixels on either side.
Standard files may be 100 MB and DNG files 256 MB, with at most 24 files and 256 MB per batch. Retained outputs have a 256 MB limit. One worker processes one file at a time, with a 120-second standard timeout or a 300-second RAW timeout. Browser memory hints do not measure available RAM. Large RAW files can still exceed a browser’s available memory.