Export supported HEIC images as genuine PNGs with alpha and exact verification against the intended decoded 8-bit pixel buffer.
Drag and drop one or more files, or choose files from your device.
Supported: .heic, .heif · up to 10 sources · 20 MiB per source. Existing codec, duration, pixel and memory limits apply.
Enter your values locally; no inputs are uploaded.
Check validation feedback before reviewing the browser-generated result.
Review the explanation, copy supported outputs or reset the workspace.
Choose a supported source container, review detected images and dimensions, adjust the applicable output settings, then convert and inspect the verified result before downloading.
Export supported HEIC images as genuine PNGs with alpha and exact verification against the intended decoded 8-bit pixel buffer. Local libheif 1.23.5 WebAssembly supports tested HEVC still images and top-level image collections, including supported alpha. It does not provide universal HEIF support: other codecs, sequences, unsupported profiles/color models and ambiguous collection orientation are rejected. Container rotation/mirroring/clean-aperture metadata is handled by libheif; EXIF-only orientation is applied once when there is no container transform. RGB ICC profiles use the browser PNG color pipeline; supported Display-P3 SDR NCLX values are converted to sRGB with possible gamut clipping. 10-bit SDR can reduce to 8-bit with a warning; HDR PQ/HLG is rejected because verified tone mapping is unavailable. Source EXIF/ICC metadata is not copied. Auxiliary depth/gain maps are identified but not independent output images. iPhone-camera provenance and genuine high-bit-depth/HDR HEIC fixture coverage are unverified; common HEVC sample decoding is verified. PNG is lossless relative to the intended decoded/color-normalized 8-bit RGBA buffer, not the original compressed HEIC/AVIF file. JPEG is lossy even at high quality. PDF embeds lossless PNG pixels and is raster-image-based; original-size pages use 96 DPI while retaining all source pixels. Default conversion does not resize or add a tool-driven crop/rotation. Limits: 20 MiB compressed input, 16 MP and 8192 pixels per edge, 12 exportable HEIC images, 40 million aggregate decoded pixels, 48 MiB output, a 60-second disposable Worker and a 75-second whole-operation timeout. Libheif native allocation limits are set before parsing (160 MiB per block, 384 MiB accounted total).
Files, filenames and decoded pixels stay in browser memory and are not uploaded to a conversion endpoint, saved by this tool or included in analytics. Reset and unmount cancel workers and revoke owned preview URLs. Downloads require explicit actions; ordinary page requests may still be logged.
No such claim is made. PNG is lossless relative to the intended decoded and color-normalized 8-bit RGBA buffer. The HEIC source may already be lossy, and bit-depth, gamut or metadata conversion can change its representation.
Yes, when the local HEVC decoder supports the file’s alpha image. Decoded alpha is retained in RGBA output. The PNG is decoded again and all intended channel bytes are checked before download.
Yes. All top-level exportable images are counted and displayed before conversion. A blank selection exports all, and explicit image numbers/ranges control selection and order. The converter does not silently choose only the first image.
The displayed dimensions include the file’s supported rotation, mirroring and clean-aperture metadata. These are source display instructions rather than an arbitrary resize. Unsupported or ambiguous transformations return an error.
Supported SDR input is normalized to 8-bit sRGB. RGB ICC and Display-P3 conversions can clip colors outside sRGB; high-depth SDR can lose precision and is warned about. HDR tone mapping is not implemented, so HDR PQ/HLG is rejected. Genuine high-depth/HDR HEIC fixture coverage is unverified.
Compressed input is limited to 20 MiB, each image to 16 MP and 8192 pixels per edge, exportable images to 12 and aggregate pixels to 40 million. Native libheif allocation limits are configured before parsing, and a disposable Worker can be cancelled or times out.
Export supported HEIC images as genuine PNGs with alpha and exact verification against the intended decoded 8-bit pixel buffer.
Local libheif 1.23.5 WebAssembly supports tested HEVC still images and top-level image collections, including supported alpha. It does not provide universal HEIF support: other codecs, sequences, unsupported profiles/color models and ambiguous collection orientation are rejected. Container rotation/mirroring/clean-aperture metadata is handled by libheif; EXIF-only orientation is applied once when there is no container transform. RGB ICC profiles use the browser PNG color pipeline; supported Display-P3 SDR NCLX values are converted to sRGB with possible gamut clipping. 10-bit SDR can reduce to 8-bit with a warning; HDR PQ/HLG is rejected because verified tone mapping is unavailable. Source EXIF/ICC metadata is not copied. Auxiliary depth/gain maps are identified but not independent output images. iPhone-camera provenance and genuine high-bit-depth/HDR HEIC fixture coverage are unverified; common HEVC sample decoding is verified.
PNG is lossless relative to the intended decoded/color-normalized 8-bit RGBA buffer, not the original compressed HEIC/AVIF file. JPEG is lossy even at high quality. PDF embeds lossless PNG pixels and is raster-image-based; original-size pages use 96 DPI while retaining all source pixels. Default conversion does not resize or add a tool-driven crop/rotation. Limits: 20 MiB compressed input, 16 MP and 8192 pixels per edge, 12 exportable HEIC images, 40 million aggregate decoded pixels, 48 MiB output, a 60-second disposable Worker and a 75-second whole-operation timeout. Libheif native allocation limits are set before parsing (160 MiB per block, 384 MiB accounted total).
Start with the original source container. Review displayed dimensions and all exportable images rather than assuming the first image is the only photo. Preserve default dimensions when you need source detail. Inspect transparent edges, fine text and color gradients in the before/after previews. For documents, choose a page size and inspect fitting/margins before downloading.
No such claim is made. PNG is lossless relative to the intended decoded and color-normalized 8-bit RGBA buffer. The HEIC source may already be lossy, and bit-depth, gamut or metadata conversion can change its representation.
Yes, when the local HEVC decoder supports the file’s alpha image. Decoded alpha is retained in RGBA output. The PNG is decoded again and all intended channel bytes are checked before download.
Yes. All top-level exportable images are counted and displayed before conversion. A blank selection exports all, and explicit image numbers/ranges control selection and order. The converter does not silently choose only the first image.
The displayed dimensions include the file’s supported rotation, mirroring and clean-aperture metadata. These are source display instructions rather than an arbitrary resize. Unsupported or ambiguous transformations return an error.
Supported SDR input is normalized to 8-bit sRGB. RGB ICC and Display-P3 conversions can clip colors outside sRGB; high-depth SDR can lose precision and is warned about. HDR tone mapping is not implemented, so HDR PQ/HLG is rejected. Genuine high-depth/HDR HEIC fixture coverage is unverified.
Compressed input is limited to 20 MiB, each image to 16 MP and 8192 pixels per edge, exportable images to 12 and aggregate pixels to 40 million. Native libheif allocation limits are configured before parsing, and a disposable Worker can be cancelled or times out.
Conversion uses local browser memory and bounded disposable Workers. File contents and filenames are not sent to analytics or saved in storage. Reset releases pending work and preview URLs. Browser color/codec support and the documented fixture coverage define the supported path; universal format compatibility is not promised.