High Efficiency Image File Format: Difference between revisions

Content deleted Content added
Tags: Mobile edit Mobile web edit Advanced mobile edit
 
(13 intermediate revisions by 10 users not shown)
Line 34:
On some systems, pictures stored in the HEIC format are converted automatically to the older JPEG format when they are sent outside of the system, although incompatibility has led to problems such as US [[Advanced Placement]] test takers failing due to their phones uploading unsupported HEIC images by default,<ref name=":1">{{cite web |url=https://www.theverge.com/2020/5/20/21262302/ap-test-fail-iphone-photos-glitch-email-college-board-jpeg-heic |date=2020-05-02 |access-date=2022-08-25 |title=Students are failing AP tests because the College Board can't handle iPhone photos |publisher=[[The Verge]] |author= Monica Chin}}</ref> leading the [[College Board]] to request students change the settings to send only JPEG files.<ref>{{cite tweet |user=CollegeBoard |number=1260208235132436480 |title=If you want to submit a photo of a handwritten AP Exam answer from an iPhone or iPad, make sure to change your camera settings so your photos are saved as JPEGs, not HEICs.}}</ref>
 
Although HEIC is gaining in popularity, thereit areis issuesnot withuniversally compatibilitysupported; [[Adobe Photoshop]] is an example of a popular image editing software that only supports 8-bit HEIC and not 10-bit or 12-bit HEIC yet.<ref>{{Cite web |title=File formats in Adobe Photoshop |url=https://helpx.adobe.com/au/photoshop/using/file-formats.html}}</ref>
 
Camera hardware (including mobile devices) are increasingly supporting outputting HEIC files and with color depth often higher than 8-bit color.<ref>{{Cite web |title=A bit confused: what's a HEIF and why do we need 10-bit stills and video? |url=https://www.dpreview.com/learn/6184595294/10-bit-stills-a-look-at-raw-log-and-the-future-of-photography |access-date=2023-11-11 |website=DPReview}}</ref>
Line 45:
; Image sequences:Storage of multiple time-related and/or temporally predicted images (like a [[burst mode (photography)|burst-photo shot]] or [[cinemagraph]] animation), their properties and thumbnails. Different prediction options can be used in order to exploit the temporal and spatial similarities between the images. Hence, file sizes can be drastically reduced when many images are stored in the same HEIF file.
; Auxiliary image items: Storage of image data, such as an [[alpha channel|alpha plane]] or a [[depth map]], which complements another image item. These data are not displayed as such, but used in various forms to complement another image item.
; Image metadata: Storage of [[Exif|EXIF]], [[Extensible Metadata Platform|XMP]] and similar metadata which accompany the images stored in the HEIF file.
 
== Encodings inside the container ==
The HEIF container can store the following encodings:
<!-- Improve the below paragraph as it doesn't adhere to Wikipedia's standards. -->HEIF container specification describes various encodings that can be stored inside:
 
* JFIF (JPEG)
Line 54:
* HEVC
 
These leads to confusion, asAs users cannot easily tell what kindencoding ofand encoding hasparameters beenan used.image Simplywas sayingstored thatin, “HEIFthe isHEIF bettercontainer thanformat JPEG”can asbe promotionalconfusing materialand doesn'tmakes meancomparison anythingstatements tolike the“HEIF is better than JPEG” vague and userinaccurate.
 
Simply knowing a file is in the HEIF container does not reveal much information, as it could be:
Inside the HEIF container, JFIF (JPEG) can be stored. It can also contain AV1 encoding. The user would also need to know the encoding parameters in which the encoding happened (e.g., color quality "q", if delta in chroma planes were used, if some advanced tuning for ssim/psnr was used, or what quantization mode was applied).
 
If a user creates a ".HEIF" photo with their phone, the user or the receiver of the photo cannot determine which image format inside the file was used. It could be:
 
* a JFIF (JPEG);
Line 65 ⟶ 63:
* an HEVC with poor quality parameters; or
* an HEVC with high quality parameters.
 
Hence, simply stating in promotional materials that “HEIF is better” doesn't mean anything at all, as HEIF is just a container specification. What is contained inside the container must be described.
 
It's impossible to easily determine exactly what you receive in HEIF container. At best, users can use graphics magic to determine if it's impossible by visual inspection (gradients transitions are broken in 8-bit photos) to tell if the photo is 12-bit or 10-bit per channel, or 8-bit.
 
{{anchor|MIAF}}{{anchor|MPEG-A}}
Line 141 ⟶ 135:
* [[Ubuntu]] 20.04 and later (HEIC)<ref>{{cite web|title=software recommendation - Any app on Ubuntu to open and/or convert HEIF pictures (.HEIC, High Efficiency Image File Format)?|url=https://askubuntu.com/questions/958355/any-app-on-ubuntu-to-open-and-or-convert-heif-pictures-heic-high-efficiency-i|access-date=2020-10-09|website=Ask Ubuntu|archive-date=2020-11-11|archive-url=https://web.archive.org/web/20201111221257/https://askubuntu.com/questions/958355/any-app-on-ubuntu-to-open-and-or-convert-heif-pictures-heic-high-efficiency-i|url-status=live}}</ref>
* [[Debian]] 10.13 ("buster") or later<ref>{{cite web|url=https://tracker.debian.org/pkg/libheif|title=Libheif - Debian Package Tracker }}</ref>
* [[Fedora Linux|Fedora]] 36 or later<ref>{{cite web|url=https://packages.fedoraproject.org/pkgs/libheif/libheif/|title=Libheif - Fedora Packages }}</ref>
 
=== Web browsers ===
Line 159 ⟶ 154:
* [[Digikam]] (supports 10-bit HEIC)
* [[GraphicConverter]]
* [[gThumb]]
* [[ImageMagick]]
* [[Krita]]<ref>{{Cite news |title=Krita 4.1 Release Notes |url=https://krita.org/en/krita-4-1-release-notes |url-status=live |access-date=2018-11-19 |archive-url=https://web.archive.org/web/20181119214332/https://krita.org/en/krita-4-1-release-notes/ |archive-date=2018-11-19}}</ref>
Line 173 ⟶ 169:
* [[FFmpeg]]
* [https://github.com/Xelitan/AVIF-and-HEIC-for-Delphi-Lazarus AVIF and HEIC unit] - Delphi/Lazarus wrapper for libavif
* [https://www.idrsolutions.com/jdeli/ JDeli] - Java Image library with HEIC support
* [https://github.com/nokiatech/heif?tab=License-1-ov-file Nokiatech] - Nokia's HEIF library with Java wrapper
 
=== Hardware ===
Line 188 ⟶ 186:
* [[Facebook]] supports the upload of HEIC but converts to JPEG or WEBP on display.<ref>{{cite web|last=Gallagher|first=William|date=2018-11-16|title=How to work with, edit, and share HEIC images without data loss|url=https://appleinsider.com/articles/18/11/16/how-to-work-with-edit-and-share-heic-images-without-data-loss|access-date=2020-08-14|publisher=[[Apple Insider]]|archive-date=2020-08-13|archive-url=https://web.archive.org/web/20200813211920/https://appleinsider.com/articles/18/11/16/how-to-work-with-edit-and-share-heic-images-without-data-loss|url-status=live}}</ref>
* [[Discord]] does not support HEIC at all.<ref>{{cite web |last=Technik |date=2019-10-27 |title=Feature Request: Support for HEIF images - Discord Support Community |url=https://support.discord.com/hc/en-us/community/posts/360054609851-Feature-Request-Support-for-HEIF-images |website=Discord Support Community}}</ref>
* [[Wikimedia Commons]] does not support HEIC.<ref>{{Cite web |title=Commons:File types - Wikimedia Commons |url=https://commons.wikimedia.org/wiki/Commons:File_types |access-date=2025-07-12 |website=commons.wikimedia.org |language=en}}</ref>
 
== Patent licensing ==
{{Further|High Efficiency Video Coding#Patent holders}}
 
HEIF itself is a container that may not be subject to additional royalty fees for commercial ISOBMFF licensees. Note however that Nokia also grants its patents on a royalty-free basis for non-commercial purposes.<ref name="nokiaheiflicense">{{cite web |title=Nokia High-Efficiency Image File Format (HEIF) License |website=[[GitHub]] |url=https://github.com/nokiatech/heif/blob/master/LICENSE.TXT |access-date=2020-05-07 |archive-date=2020-11-12 |archive-url=https://web.archive.org/web/20201112020815/https://github.com/nokiatech/heif/blob/master/LICENSE.TXT |url-status=live }}</ref> When containing images and image sequences encoded in a particular format (e.g., HEVC or AVC) its use becomes subject to the licensing of patents on the coding format.<ref name="ars">{{cite web |title=macOS High Sierra tech preview: A quick look at the stuff you can't see |url=https://arstechnica.com/apple/2017/06/macos-high-sierra-tech-preview-a-quick-look-at-the-stuff-you-cant-see/ |access-date=2017-07-04 |date=2017-06-19 |quote=If there's one major downside to both HEVC and HEIF, it's that they're covered by patents that may need to be licensed for use in various apps and services. |archive-date=2017-06-20 |archive-url=https://web.archive.org/web/20170620001037/https://arstechnica.com/apple/2017/06/macos-high-sierra-tech-preview-a-quick-look-at-the-stuff-you-cant-see/ |url-status=live }}</ref><ref name="jpgtoheif">{{cite web |title=Converting a JPEG to the new HEIF format |url=http://jpgtoheif.com/ |access-date=2017-07-04 |quote=HEIF and HEVC are extensively covered by patents, which means there could be legal implications to implementing HEIF support, particularly in paid software or a hardware product. |archive-date=2017-07-07 |archive-url=https://web.archive.org/web/20170707214211/http://jpgtoheif.com/ |url-status=live }}</ref><ref name="beamr-on-licensing">{{cite web |title=Apple Endorses New Image Format, HEIF |url=https://www.linkedin.com/pulse/apple-endorses-new-image-format-heif-jan-ozer |access-date=2017-10-31 |date=2017-06-12 |first1=Jan |last1=Ozer |first2=Dror |last2=Gill |archive-date=2019-03-21 |archive-url=https://web.archive.org/web/20190321220755/https://www.linkedin.com/pulse/apple-endorses-new-image-format-heif-jan-ozer |url-status=live }}</ref>
 
== See also ==