Cookies de statistiques et de publicité
Nous utilisons des cookies de statistiques et de publicité, tous deux destinés à Google. Si vous refusez, rien ne change visiblement pour vous.Aller à la page de confidentialité
HEIF
Le conteneur standard derrière le HEIC. La même économie et les mêmes problèmes de compatibilité.
HEIF
HEIF est un conteneur : une enveloppe pour des flux encodés par autre chose. Il stocke une grille de pixels : l’agrandir au-delà de sa propre résolution le ramollit. Il est utilisé pour les téléphones et la photographie.
L’extension est .heif et le nom complet High Efficiency Image File Format. L’un et l’autre comptent moins que ce que le fichier peut contenir, et c’est le sujet du reste de cette page.
MPEG l’a publié en 2015. La spécification est ISO/IEC 23008-12.
L’âge est utile à connaître pour une raison pratique : plus un format est ancien, plus les programmes ont eu le temps de l’apprendre.
Elle est écrite et implémentable, même si c’est l’éditeur qui décide de la version suivante. En pratique cela suffit pour que le fichier continue de s’ouvrir ; cela ne suffit pas pour en être sûr.
HEIF jette du détail pour rester petit, et ce qu’il jette ne revient pas. C’est le bon compromis pour quelque chose qu’on regarde et le mauvais pour quelque chose qu’on modifie : chaque réenregistrement prend une nouvelle bouchée.
HEIF porte une couche alpha : un logo garde ses bords doux par-dessus ce qui se trouve derrière, au lieu d’arriver dans un carré blanc.
HEIF peut enregistrer une animation plutôt qu’une image fixe. C’est bon à savoir avant de convertir : une cible qui ne tient qu’une image garde la première et laisse tomber le reste, le plus souvent sans le dire.
Jusqu’à 10 bits par canal. Il peut travailler en YCbCr, le modèle dans lequel compressent la vidéo et le JPEG et une gamme de couleurs étendue.
Plus de huit bits par canal, c’est ce qui empêche un dégradé de se casser en marches quand on le retouche : cela compte dans un fichier de travail et presque jamais dans un fichier fini.
Un fichier HEIF n’est pas limité à une page, et cela compte au moment de le convertir vers quelque chose qui l’est : une conversion produit un fichier contenant une seule page — la première, sauf si le convertisseur vous laisse choisir laquelle.
Une partie des navigateurs seulement le lit.
Là où la prise en charge est inégale, servir un second format à côté est la réponse habituelle : le navigateur prend celui qu’il comprend et personne n’est laissé dehors.
HEIF peut contenir les données EXIF, les enregistrements XMP, les profils ICC et les coordonnées GPS.
Les coordonnées GPS sont le champ auquel réfléchir avant d’envoyer un fichier où que ce soit : elles disent où la photographie a été prise, et presque rien ne vous avertit qu’elles sont toujours là.
HEIF est fait pour être transmis, pas pour travailler dedans. Modifier un tel fichier est possible et rarement agréable ; la voie raisonnable passe par la source et un nouvel export.
Les reproches qui reviennent : hors de son terrain, la prise en charge est inégale.
Rien de tout cela n’est une raison d’éviter le format. Ce sont les choses à connaître avant que l’une d’elles vous surprenne, ce qui est une affirmation différente et plus utile.
C’est la distinction qui résout la majorité de la confusion autour des deux noms. HEIF — High Efficiency Image File Format — est un standard de conteneur publié par MPEG en 2015. Il décrit comment les images, les vignettes, les métadonnées et les séquences d’images sont organisées dans un fichier ; il ne dit rien de la façon dont les pixels sont compressés.
HEIC est du HEIF contenant des images compressées en HEVC, ce que produisent les appareils Apple. Le même conteneur peut accueillir des images codées autrement, et le fait : AVIF utilise une structure apparentée avec AV1 à l’intérieur. « HEIF » décrit donc une famille, et « HEIC » décrit le membre de cette famille que vous avez probablement en main.
HEIF dérive de l’ISO base media file format — la même structure de boîtes imbriquées que MP4 et MOV utilisent. C’est un choix délibéré : les outils, les parseurs et les conventions de métadonnées existaient déjà et avaient été débogués pendant une décennie.
C’est aussi pourquoi un fichier HEIF peut contenir des choses qu’un format d’image fixe n’a aucunement le droit de contenir, comme des séquences temporelles et plusieurs images apparentées dont les relations sont décrites. Le conteneur a été conçu pour la vidéo et adapté aux images fixes, et non l’inverse. L’héritage se voit dans la structure de boîtes elle-même, qui prévoit nativement un index, des métadonnées temporelles et une cartographie d’images, là où les formats purement image doivent inventer ces notions au coup par coup.
Un seul fichier HEIF peut contenir une séquence d’images, une rafale, plusieurs expositions d’une même scène, une carte de profondeur, un canal alpha, des instructions d’édition non destructives, et des images dérivées décrites comme des transformations d’une autre image plutôt que stockées séparément.
Très peu de logiciels lisent tout cela. La capacité a été spécifiée, Apple en utilise une fraction pour les Live Photos et la profondeur du mode Portrait, et tout le reste de l’écosystème traite un HEIF comme une seule image. La conversion ignore donc en général des fonctionnalités présentes et que rien n’aurait lues de toute façon — mais cela mérite d’être su avant de supposer qu’un fichier est simple. Quelques éditeurs de photos prennent en charge les éléments d’édition non destructifs, et le sous-ensemble retenu par la fondation MPEG est volontairement plus riche que ce que les implémentations utilisent aujourd’hui, par anticipation des usages à venir.
Le chiffre habituel est qu’un HEIF à qualité visible égale fait à peu près la moitié d’un JPEG, et cela tient globalement. Le gain vient du codec à l’intérieur plutôt que du conteneur : HEVC utilise des blocs plus grands et de taille variable, une bien meilleure prédiction et un codeur entropique plus solide que ce que le design de JPEG de 1992 permettait.
Il corrige aussi des limites dont JPEG n’est jamais sorti. Dix ou douze bits par canal au lieu de huit, ce qui réduit fortement le banding dans les dégradés. Une vraie transparence. Le mode sans perte en option. Rien de tout cela n’est une fonctionnalité du conteneur non plus — mais c’est le conteneur qui a permis de les livrer ensemble.
AVIF place des images codées en AV1 dans un conteneur bâti sur les mêmes fondations. Il obtient une compression similaire ou meilleure, et son codec est libre de redevances, ce qui a décidé de son adoption.
Chaque navigateur actuel décode AVIF. Quasiment aucun ne décode HEIC, et la raison est la licence plutôt que la capacité — le pool de brevets HEVC rendait intenable la livraison d’un décodeur dans un navigateur gratuit. Ce seul fait explique pourquoi deux formats techniquement proches ont fini dans des endroits radicalement différents : HEIF sur les téléphones, AVIF sur le web.
`.heic` signifie images codées en HEVC et c’est ce qu’Apple écrit. `.heif` est l’extension générique et apparaît sur les fichiers d’autres fabricants et de logiciels qui ont préféré ne pas être spécifiques. `.hif` est utilisé par certains constructeurs, notamment Canon, pour la même chose.
La prise en charge logicielle ne suit pas toujours cette logique, car la vérification se fait souvent sur l’extension plutôt que sur le contenu. Un outil qui accepte `.heic` peut refuser un `.heif` identique, parce que le contrôle se fait sur l’extension plutôt que sur le contenu. Si un HEIF est refusé, renommer en `.heic` vaut la peine d’être tenté avant de conclure quoi que ce soit sur le fichier. C’est l’une de ces situations où le conteneur est plus standardisé que l’écosystème qui le manipule, et le désalignement dure depuis que le format a commencé à se répandre.
HEIF transporte EXIF et XMP comme le fait JPEG, donc le modèle d’appareil, l’objectif, les réglages d’exposition, l’orientation et — si les services de localisation étaient activés — les coordonnées GPS voyagent avec le fichier.
Le conteneur a aussi de la place pour les structures plus récentes de provenance et d’historique d’édition, ce qui fait partie des raisons pour lesquelles il a été retenu pour la photographie sur téléphone. La conversion vers JPEG transporte en général les champs d’exposition et peut transporter ou non la localisation, selon l’outil. Pour une photographie destinée à être publiée, cela mérite une décision délibérée plutôt qu’une conjecture optimiste. Les logiciels de retouche récents savent lire et écrire les métadonnées HEIF avec une précision qui n’a rien à envier à leurs équivalents JPEG, et la perte à la conversion est plutôt le résultat de ce que l’encodeur JPEG reçoit que du conteneur HEIF lui-même.
Des appareils photo Canon écrivant `.hif`, certains fabricants Android, quelques appareils photo professionnels proposant HEIF en option à côté du raw, et des logiciels exportant vers la forme générique. C’est une petite part de ce qui existe — l’écrasante majorité des fichiers HEIF dans le monde sont des HEIC d’Apple.
La conséquence pratique est que la prise en charge est encore plus mince que pour HEIC, parce que les outils sont généralement conçus pour le fichier du plus gros fournisseur. Un HEIF générique venant d’un boîtier Canon peut mettre en défaut un logiciel qui gère sans peine les fichiers d’iPhone. La règle empirique : si le fichier vient d’un logiciel qui n’est pas un produit Apple, l’extension est probablement `.heif` et il mérite qu’on prête attention à la prise en charge réelle avant d’y engager un travail.
| Extension | .heif |
|---|---|
| Type de média | image/heif |
| Publié par | MPEG |
| Première publication | 2015 |
| Spécification | ISO/IEC 23008-12 |