L'AVIF est un encodage d'image fixe AV1, avec alpha, et des fichiers bien plus petits que le JPEG à qualité égale. Le JPEG est une compression avec perte réglée pour la vision humaine, et aucun canal alpha. ImageMagick se tient entre les deux, et cette page dit exactement ce qui arrive à un fichier AVIF en route vers le JPG.
Ce qui s'exécute quand un fichier AVIF devient un JPG
ImageMagick 6.9.12, sur une machine que nous louons et que nous surveillons. Votre fichier AVIF est envoyé une fois, ImageMagick s'exécute une fois, le fichier JPG revient, et aucun des deux fichiers n'est conservé. AVIF vers JPG fait partie des 3649 paires sur lesquelles ce moteur a été sondé avec un vrai fichier, et c'est pour cela que cette page existe quand celles que la sonde n'a pas su prouver n'existent pas.
Ce qui survit du fichier AVIF dans le fichier JPG
Les dimensions en pixels de votre fichier AVIF. Le JPG sort à la taille où l'AVIF est entré, parce que rien sur ce chemin ne redimensionne quoi que ce soit.
Ce que la conversion AVIF vers JPG vous coûte
La transparence. Le JPG n'a pas de canal alpha : le moteur compose donc votre image AVIF sur du blanc avant d'encoder. Sans cette étape, ImageMagick pose du noir dessous, et un logo AVIF transparent revient en rectangle noir.
Toutes les images de l'AVIF sauf la première. L'AVIF sait porter une animation, le JPG non : c'est donc la première image qui revient. L'autre solution serait un fichier JPG numéroté par image, et plus aucune réponse unique à vous remettre.
L'exactitude. Le JPG est un encodage avec perte : le fichier qui vous revient approche l'AVIF que vous avez envoyé. Les artefacts apparaissent une fois et ne repartent jamais, et c'est pourquoi reconvertir ensuite le JPG en AVIF ne restaure rien.
Si un modèle doit lire le fichier JPG
Un fichier JPG, ce sont des pixels, et les pixels coûtent cher à lire pour un modèle. Avec ce JPG entre les mains, un assistant dépense son budget à regarder l'image plutôt qu'à la lire, et il paraphrasera ce qu'il croit avoir vu. Si votre AVIF est surtout fait de mots, le geste utile est d'en extraire le texte, pas de changer le format d'image qui le porte.
AVIF vers JPG, mesuré plutôt que promis
En passant AVIF vers JPG sur le moteur réel avec un vrai fichier, ImageMagick a écrit 1 705 octets au format JPG en moins d'un dixième de seconde, machine par ailleurs au repos. C'est un fichier AVIF un jour donné et non une moyenne, et c'est pourquoi le nombre est donné avec le fichier qui l'a produit.
Le verdict AVIF vers JPG a été obtenu par une signature de format, c'est-à-dire que au moins quatre octets propres au format ont été trouvés au bon décalage. Le contrôle employé compte, parce qu'ils ne prouvent pas tous la même chose, et un code de statut 200 ne prouve strictement rien sur ce que le fichier JPG contient.
Le même fichier AVIF, envoyé ailleurs
Les autres sorties que la sonde a mesurées à partir d'un fichier AVIF, pour que le coût du choix du format JPG se lise face à quelque chose. Les tailles ne se comparent pas d'un moteur à l'autre, chaque famille ayant été sondée avec son propre fichier témoin AVIF.
AVIF vers PDF : 94 782 octets en moins d'un dixième de seconde, vérifié par une signature de format.
AVIF vers PNG : 4 453 octets en moins d'un dixième de seconde, vérifié par une signature de format.
AVIF vers WEBP : 380 octets en moins d'un dixième de seconde, vérifié par une signature de format.
AVIF vers GIF : 3 463 octets en 0,1 secondes, vérifié par une signature de format.
AVIF vers TIFF : 108 264 octets en moins d'un dixième de seconde, vérifié par une signature de format.
Les autres routes vers JPG, et ce qu'elles ont mesuré
Parmi les routes publiées vers JPG, AVIF est la cinquième plus grosse sortie des 13 mesurées. Les fichiers témoins diffèrent : ce classement porte sur la sonde et non sur votre document.
SVG vers JPG : 2 483 octets en moins d'un dixième de seconde.
PSD vers JPG : 1 568 octets en moins d'un dixième de seconde.
ICO vers JPG : 1 568 octets en moins d'un dixième de seconde.
HEIF vers JPG : 1 666 octets en moins d'un dixième de seconde.
JP2 vers JPG : 1 568 octets en moins d'un dixième de seconde.
Ce que nous ne prétendrons pas sur AVIF vers JPG
Un fichier AVIF de plus de 25 Mo est refusé avant la fin de l'envoi plutôt qu'après, pour que vous n'attendiez pas un refus.
Une conversion AVIF vers JPG qui dépasse 30 secondes est tuée, et le processus ImageMagick avec elle. Une exécution abandonnée resterait posée sur l'un des deux cœurs de la machine jusqu'à ce que quelqu'un le remarque.
Aucun texte n'est extrait de l'AVIF nulle part sur ce chemin. Convertir une image en JPG ne la transforme jamais en mots, quoi que cette image porte.
ImageMagick n'était pas saturé à seize conversions simultanées : il a tenu 47,5 par seconde pendant que la latence passait de 0,22 s à 0,34 s, et la mémoire du service n'a pas bougé de 51 Mo. C'est la marge mesurée derrière AVIF vers JPG, pas un chiffre de brochure.
Un fichier AVIF à la fois, choisi dans le navigateur. Il n'y a rien d'autre à régler et rien d'autre à proposer.
AVIF vers JPG : les questions que l'on pose
Qu'est-ce qui convertit vraiment mon fichier AVIF en JPG ?
C'est ImageMagick qui s'en charge, en 6.9.12, sur une machine que nous louons et que nous surveillons. Ni astuce de navigateur, ni service d'un tiers : le fichier AVIF est envoyé une fois, ImageMagick s'exécute une fois, le JPG revient, et aucun des deux fichiers n'est conservé ensuite.
Combien de temps prend une conversion AVIF vers JPG ?
Sur le fichier utilisé par la sonde, ImageMagick a mis moins d'un dixième de seconde et écrit 1 705 octets de JPG. C'est une mesure réelle sur un fichier AVIF réel, pas une moyenne et pas une promesse sur le vôtre : un AVIF plus gros prend plus longtemps, et au-delà de 30 secondes l'exécution est arrêtée.
Qu'est-ce que je perds en passant de l'AVIF au JPG ?
Celle qu'il faut connaître en premier : la transparence. Le JPG n'a pas de canal alpha : le moteur compose donc votre image AVIF sur du blanc avant d'encoder. Sans cette étape, ImageMagick pose du noir dessous, et un logo AVIF transparent revient en rectangle noir.
Pourquoi le fond transparent de mon AVIF est-il devenu blanc dans le JPG ?
Parce que le JPG n'a pas de canal alpha et qu'il faut bien quelque chose derrière l'image. Le moteur y met du blanc exprès. Laissé à lui-même, ImageMagick y met du noir, et un logo AVIF transparent revient en rectangle noir. Si vous tenez à la transparence, envoyez plutôt l'AVIF vers PNG ou WebP.
La conversion AVIF vers JPG est-elle gratuite ?
Il y a une franchise gratuite chaque mois, et une conversion AVIF vers JPG coûte un demi-crédit dessus. Quand la franchise est épuisée, l'outil le dit et s'arrête, plutôt que de vous remettre discrètement un JPG moins bon.