Je me demande comment se situe YOGA par rapport à ces outils.
Pour les PNG:
Je me souviens que mes tests montraient que YOGA était un peu plus efficace qu'optipng, tout en étant beaucoup plus rapide. Mais il faudrait refaire un benchmark pour s'en assurer…
Pour les JPEG:
Pour le moment YOGA fait de la compression à perte (sans que ça ne soit perceptible si l'on reste sur un paramètre de qualité raisonnable comme ~94%). Je pense qu'il sera plus efficace que jpegoptim, par contre il faut savoir qu'il sera beaucoup plus lent et plus lourd (en termes de CPU et de RAM).
Actuellement YOGA optimise les JPEGs en utilisant d'abord une version patchée de la bibliothèque Guetzli, puis en appliquant des optimisations supplémentaires (sans perte cette fois-ci) en provenance de la bibliothèque MozJPEG.
J'ai pour projet de fournir une seconde option d'optimisation qui serait beaucoup plus rapide, et sans perte dans le cas où l'on a déjà un JPEG en entrée, mais je ne saurais dire quand ça sortira. :)
(attention : commande qui optimise ET supprime les métadonnées également)
YOGA supprime également toutes les méta données des images.
Par ailleurs je note sur ton site que
converting a JPEG to a lossy WebP can reduce image size to a half and converting a PNG to a lossy WebP can save you 35 % on average
ce qui est bon à savoir du coup ! Par contre je me demande s'il n'est pas trop tôt, en termes de compatibilité, pour passer les images de mon blogue en WebP..?
Bon bah pour commencer je note que j'ai fait une erreur, il faut lire « converting a PNG to a LOSSLESS WebP » et pas « LOSSY WebP »… Je viens de corriger ça… :)
Le WebP est un format qui est maintenant supporté par tous les navigateurs actuels. Le dernier qui posait problème était Safari, pour ses versions datant d'avant macOS Big Sur (2020). Vous pouvez consulter le support du WebP dans les navigateurs sur le site suivant :
Comme d'autres maintainer d'extensions, ils m'avaient contacté il y a peut être 2 ans. On avait un peu discuté mais on était pas allé très loin par manque de temps. La conclusion était que de toute façon, l'API qu'utilisait Nautilus Terminal à l'époque n'était pas adaptée (je rappelle qu'en l'état, Nautilus Terminal est un énorme bricolage), et que si on voulait faire les choses correctement, de nouvelles APIs seraient nécessaires.
Je ne pense pas qu'ils soient fermés à ajouter des API pour de nouveaux types d'extensions ; le seul souci c'est que je manque de temps et d'énergie pour mener moi-même cette discussion.
Malheureusement, Python n'est pas en cause dans la lenteur de l’optimisation:
Guetzli (encodeur JPEG): C++
MozJPEG (encodeur JPEG utilisé en complément de Guetzli): C
Zopfli (Compression deflate) et ZopfliPNG (encodeur PNG): C++
Pillow (utilisé pour décoder et pour redimensionner les images): C (pour les parties qui font les calculs)
libwebp (utilisée pour l'encodage des webp à travers Pillow): C
En dehors d'un peu de code pour certains PNG récalcitrants (et qui n'est pas spécialement long à l'exécution), toutes les parties qui font du traitement sur les images sont en C ou en C++.
Python gère l'interface graphique (qui est en Gtk, donc encore du C) et orchestre les optimisations, il ne sert que de glue en quelque sorte :)
Bah le problème c'est que déjà je ne connaissais pas cette possibilité… Et je viens de regarder et je n'ai pas d'entrée « Tous les événements » dans le menu affichage (Thunderbird 91.12). :(
Tu as parfaitement bien comprit : normalement chaque acteur ne peut lire que ses propres cookies, mais récupèrent le même quel que soit le site que tu visite. À présent ils seront en plus isolés par site que tu visites. :)
Pour ce qui est de l'envoie du message, c'est configurable dans « Édition → Préférences → Rédaction », puis dans la section « Style HTML », cliquer sur « Options d'expédition… ». Il est alors possible de cocher la case « [x] Envoyer les messages au format texte lorsque cela est possible ».
Pour la lecture des messages en texte brut plutôt qu'en HTML, il suffit d'aller dans « Affichage → Corps du message en → Texte seul ».
À la base YOGA optimise des modèles 3D…. Et des images (comme elles sont utilisées pour les textures desdits modèles). Donc le support du SVG n'est pas une priorité dans YOGA (il y a actuellement encore énormément de travail à faire sur les formats matriciels).
Les optimisations des SVGs proposées par scour sont très performantes, mais clairement il y a beaucoup de paramètres en fonction de ce qu'on s'autorise à perdre comme précision / les contournements pour certains cas d'usages ou bibliothèques spécifiques, etc. → Bref, il faut une GUI très complète (comme celle que propose Inkscape) pour vraiment tirer parti de tout le potentiel de scour, là où YOGA veut rester relativement simple (pas plus d'une ou 2 options par format).
Comme je l'ai dit, yoga image permet de convertir d'un format vers n'importe quel autre, et je n'ai pas vraiment envie de complexifier ceci en rajoutant des restrictions. :)
Au final:
scour propose déjà une CLI et une API Python tout à fait complète : donc peu d'intérêt de réintégrer la même chose dans YOGA lui-même (je parle ici de la lib dernière YOGA Image Optimizer).
La seule chose qu'il manque peut-être, c'est une bonne GUI pour scour dans laquelle on pourrait optimiser en masse des SVG. Il serait peut-être intéressant de s'y pencher en tant que projet à part entière. :)
PS: désolé pour le temps de réponse, j'avais raté le message ^^'
Mais pour YOGA je vais rester sur des formats matriciels : étant donné que YOGA peut effectuer des conversions entre les formats, ça va beaucoup compliquer les choses si on ne peux pas convertir n'importe quel format en n'importe quel autre :)
Il s'agit d'une fonctionnalité qui dépasse le scope de YOGA, je ne pense donc pas l'implémenter.
Ceci dit, étant donné que YOGA est aussi un outil en CLI et une bibliothèque Python, il est tout à fait possible d'écrire un script ou un outil qui s’appuierait sur YOGA pour effectuer ce genre d'opération.
Aussi, comme l'a mentionné @Glandos dans un commentaire un peu plus haut, il existe un outil nommé Leanify qui semble faire exactement ce que vous souhaitez. :)
Pour commencer, je n'ai pas envie de rajouter encore des développements spécifiques pour cette plateforme (le portage Windows m'a déjà demandé un bon mois de travail pour contourner tous les problèmes de conception de cet OS).
Ensuite, la sélection automatique d'un thème sombre ou clair n'est pas vraiment le problème. L'application n'a actuellement pas une apparence « native » sur cet OS, et je préfère laisser le choix à l'utilisateur du thème qui lui convient le mieux, que ce soit pour des raisons esthétiques ou d'accessibilité (sélection d'un thème à haut contraste par exemple).
J'ai incorporé dans la version Windows un thème « Windows10 » permettant de donner une apparence plus proche d'une application native de l'OS, mais je ne l'ai pas activé par défaut dans YOGA Image Optimizer v1.1 car je ne suis pas satisfait de sa qualité (il y a quelques « bugs » visuels et je ne veux donc pas mettre ce thème par défaut sans les avoir corrigés, si un jour j'en ai le temps et la motivation).
Oui je sais, mais je n'ai aucun intérêt à ajouter du code pour masquer une partie de l'UI dans le but de rendre une fonctionnalité inaccessible à certains système.
Je préfère que le logiciel soit identique pour tout le monde, sinon un jour je vais avoir une issue du style « je trouve pas l'option pour mettre le thème sombre ». :)
Si tu utilises YOGA Image Optimizer sous Linux, effectivement, cette option est très peu utile puisqu'on peut déjà choisir son thème globalement et il n'y a pas grand intérêt à avoir un thème différent pour une application spécifique.
J'ai surtout ajouté cette option pour le portage Windows du logiciel (oui, j'ai été assez fou pour porter une application Python/GTK sur cet OS… ^^'). Sous Windows ils n'ont pas la possibilité de sélectionner globalement un thème GTK… puis comme tout est compilé et distribué statiquement, les options de thème d'une application ne seraient de toute façon pas prises en compte par une autre…
La majorité des png que j'ai son des captures d'écran
Actuellement je travaille à ajouter une optimisation à perte pour les PNGs (réduction du nombre de couleurs) → il se peut que ça soit une option très efficace pour les captures d'écran (si on accepte de perde un peu en qualité lorsque des dégradés sont présents).
Par contre je ne le trouve pas très rapide. Les traitement sur les png sont coûteux ou tu n'a pas encore pris le temps de regarder ce coté là ?
Effectivement, le but premier de YOGA est de réduire au maximum le poids des images, et le coût pour y parvenir peut être élevé. Et encore pour les PNGs ça reste raisonnable, le traitement des JPEGs est bien plus lourd.
Si tu veux en savoir plus à ce sujet, j'avais écrit un passage sur les coûts d'optimisation dans un précédent article :
Oui, mais la « principale » lib sur laquelle je m'appuie pour l'optimisation des JPEGs, c'est Guetzli. MozJPEG est utilisée en complément pour gratter quelques % supplémentaires. C'est pour ça que je n'utilise qu'une partie des optimisations de MozJPEG (celles sans pertes).
Il faudrait trouver le temps de faire un véritable benchmark de MozJPEG vs Guetzli. En comparant la qualité perçu des images (le problème c'est qu'il existe plusieurs modèles de comparaison).
J'avancerais une suggestion : nettoyage des métadonnées.
En fait c'est déjà le cas, YOGA supprime toutes les métadonnées des fichiers. Dans les faits, il serait même plus compliqué de les conserver que de les enlever. :)
il faudrait peut-être garder quand même dans ce cas les données exif sur l'orientation de l'image, puisque tu t'en sers pour afficher l'image correctement
En fait, même celle-là est supprimée : lorsque YOGA rencontre cette métadonnée en entrée, il applique directement la transformation, comme ça l'image reste droite, malgré la suppression des métadonnées.
Pour ce qui est de jpeg-recomrpess et de imageOtpim, il faut encore que je me penche un peu dessus pour voir ce que je pourrais en tirer.
Du côté des JPEGs je pense pas être tellement en mesure de gagner quelque chose (mais ça vaut toujours le coup de se renseigner et de tester des trucs).
Pour les PNGs par contre je pense qu'il y a encore une petite marge d'évolution pour la compression sans perte, et une grosse avec la compression à perte (réduction de couleurs). Je suis d'ailleurs en ce moment en train de travailler sur des bindings Python pour libimagequant (la bibliothèque utilisée derrière pngquant). :)
Sinon bravo pour le boulot, quels progrès depuis la dernière fois ! et puis je vois que tu soignes l'interface, c'est top.
Merci ! Effectivement je souhaite que l'interface reste agréable et simple à utiliser malgré le nombre d'options qui va forcément un peu augmenter.
Je pense encore rajouter 2 ou 3 trucs dedans pour la prochaine version, mais je vais surtout me concentrer sur la compression maintenant. :)
[^] # Re: Safari
Posté par FLOZz (site web personnel, Mastodon) . En réponse au lien Petite introduction à WebAssembly. Évalué à 1.
D'après le site caniuse c'est censé fonctionner sans souci, mais je n'ai pas de Mac pour vérifier.
La liste blanche c'était pas pour les Applets Java avant qu'ils ne les suppriment définitivement ?
[^] # Re: YOGA
Posté par FLOZz (site web personnel, Mastodon) . En réponse au lien Point projets : un lifting pour YOGA, la fin de Nautilus Terminal, màj pour CalCleaner et Rivalcfg. Évalué à 3.
Pour les PNG:
Je me souviens que mes tests montraient que YOGA était un peu plus efficace qu'optipng, tout en étant beaucoup plus rapide. Mais il faudrait refaire un benchmark pour s'en assurer…
Pour les JPEG:
Pour le moment YOGA fait de la compression à perte (sans que ça ne soit perceptible si l'on reste sur un paramètre de qualité raisonnable comme ~94%). Je pense qu'il sera plus efficace que jpegoptim, par contre il faut savoir qu'il sera beaucoup plus lent et plus lourd (en termes de CPU et de RAM).
Actuellement YOGA optimise les JPEGs en utilisant d'abord une version patchée de la bibliothèque Guetzli, puis en appliquant des optimisations supplémentaires (sans perte cette fois-ci) en provenance de la bibliothèque MozJPEG.
J'ai pour projet de fournir une seconde option d'optimisation qui serait beaucoup plus rapide, et sans perte dans le cas où l'on a déjà un JPEG en entrée, mais je ne saurais dire quand ça sortira. :)
YOGA supprime également toutes les méta données des images.
Bon bah pour commencer je note que j'ai fait une erreur, il faut lire « converting a PNG to a LOSSLESS WebP » et pas « LOSSY WebP »… Je viens de corriger ça… :)
Le WebP est un format qui est maintenant supporté par tous les navigateurs actuels. Le dernier qui posait problème était Safari, pour ses versions datant d'avant macOS Big Sur (2020). Vous pouvez consulter le support du WebP dans les navigateurs sur le site suivant :
[^] # Re: Nautilus Terminal va me manquer
Posté par FLOZz (site web personnel, Mastodon) . En réponse au lien Point projets : un lifting pour YOGA, la fin de Nautilus Terminal, màj pour CalCleaner et Rivalcfg. Évalué à 8. Dernière modification le 02 novembre 2022 à 18:02.
Comme d'autres maintainer d'extensions, ils m'avaient contacté il y a peut être 2 ans. On avait un peu discuté mais on était pas allé très loin par manque de temps. La conclusion était que de toute façon, l'API qu'utilisait Nautilus Terminal à l'époque n'était pas adaptée (je rappelle qu'en l'état, Nautilus Terminal est un énorme bricolage), et que si on voulait faire les choses correctement, de nouvelles APIs seraient nécessaires.
Je ne pense pas qu'ils soient fermés à ajouter des API pour de nouveaux types d'extensions ; le seul souci c'est que je manque de temps et d'énergie pour mener moi-même cette discussion.
[^] # Re: Nickel
Posté par FLOZz (site web personnel, Mastodon) . En réponse au lien YOGA Image Optimizer v1.2.0 est sorti, avec une interface et une expérience utilisateur améliorée !. Évalué à 5.
Malheureusement, Python n'est pas en cause dans la lenteur de l’optimisation:
En dehors d'un peu de code pour certains PNG récalcitrants (et qui n'est pas spécialement long à l'exécution), toutes les parties qui font du traitement sur les images sont en C ou en C++.
Python gère l'interface graphique (qui est en Gtk, donc encore du C) et orchestre les optimisations, il ne sert que de glue en quelque sorte :)
[^] # Re: Es-tu sur une autre plateforme de dons ?
Posté par FLOZz (site web personnel, Mastodon) . En réponse au lien Sortie de Rivalcfg, l'outil de configuration pour les souris SteelSeries, en version 4.6.0. Évalué à 1.
Bien reçu, merci beaucoup :)
[^] # Re: ports internes
Posté par FLOZz (site web personnel, Mastodon) . En réponse au lien Booter Proxmox sur un HP ProLiant DL380p G8 récalcitrant. Évalué à 1.
Merci pour toutes ces précisions :)
[^] # Re: Es-tu sur une autre plateforme de dons ?
Posté par FLOZz (site web personnel, Mastodon) . En réponse au lien Sortie de Rivalcfg, l'outil de configuration pour les souris SteelSeries, en version 4.6.0. Évalué à 3.
Bonjour,
Tout d'abord, merci d’apprécier mes projets, ça fait toujours plaisir, surtout que j'y passe beaucoup (trop) de temps :)
Effectivement j'ai aussi une URL de don PayPal → https://www.paypal.me/0xflozz
# Article en anglais
Posté par FLOZz (site web personnel, Mastodon) . En réponse au lien Sortie de Rivalcfg, l'outil de configuration pour les souris SteelSeries, en version 4.6.0. Évalué à 1.
Zut je suis allé trop vite, j'ai oublié de marquer que le lien était en anglais /o\
[^] # Re: Merci
Posté par FLOZz (site web personnel, Mastodon) . En réponse au lien CalCleaner : J'ai développé un petit outil pour supprimer les vieux événements des calendriers. Évalué à 2.
Ayé trouvé ! C'est bien planqué commefonctionnalité… 😅️
[^] # Re: Merci
Posté par FLOZz (site web personnel, Mastodon) . En réponse au lien CalCleaner : J'ai développé un petit outil pour supprimer les vieux événements des calendriers. Évalué à 1.
Bah le problème c'est que déjà je ne connaissais pas cette possibilité… Et je viens de regarder et je n'ai pas d'entrée « Tous les événements » dans le menu affichage (Thunderbird 91.12). :(
[^] # Re: euh ça se passait comment jusqu'ici?
Posté par FLOZz (site web personnel, Mastodon) . En réponse au lien Vie privée : Mozilla va activer l'isolation des cookies par défaut dans Firefox. Évalué à 3.
Tu as parfaitement bien comprit : normalement chaque acteur ne peut lire que ses propres cookies, mais récupèrent le même quel que soit le site que tu visite. À présent ils seront en plus isolés par site que tu visites. :)
[^] # Re: Etape suivante : fusionner avec Delta Chat !
Posté par FLOZz (site web personnel, Mastodon) . En réponse au lien Android : K-9 Mail va devenir Thunderbird. Évalué à 3.
Pour ce qui est de l'envoie du message, c'est configurable dans « Édition → Préférences → Rédaction », puis dans la section « Style HTML », cliquer sur « Options d'expédition… ». Il est alors possible de cocher la case « [x] Envoyer les messages au format texte lorsque cela est possible ».
Pour la lecture des messages en texte brut plutôt qu'en HTML, il suffit d'aller dans « Affichage → Corps du message en → Texte seul ».
(j'utilise Thunderbird v91.10)
[^] # Re: SVG ?
Posté par FLOZz (site web personnel, Mastodon) . En réponse à la dépêche YOGA Image Optimizer v1.1 : résultats des travaux de l'été. Évalué à 3.
Les problèmes avec les SVG sont les suivants :
À la base YOGA optimise des modèles 3D…. Et des images (comme elles sont utilisées pour les textures desdits modèles). Donc le support du SVG n'est pas une priorité dans YOGA (il y a actuellement encore énormément de travail à faire sur les formats matriciels).
Les optimisations des SVGs proposées par scour sont très performantes, mais clairement il y a beaucoup de paramètres en fonction de ce qu'on s'autorise à perdre comme précision / les contournements pour certains cas d'usages ou bibliothèques spécifiques, etc. → Bref, il faut une GUI très complète (comme celle que propose Inkscape) pour vraiment tirer parti de tout le potentiel de scour, là où YOGA veut rester relativement simple (pas plus d'une ou 2 options par format).
Comme je l'ai dit,
yoga imagepermet de convertir d'un format vers n'importe quel autre, et je n'ai pas vraiment envie de complexifier ceci en rajoutant des restrictions. :)Au final:
scour propose déjà une CLI et une API Python tout à fait complète : donc peu d'intérêt de réintégrer la même chose dans YOGA lui-même (je parle ici de la lib dernière YOGA Image Optimizer).
La seule chose qu'il manque peut-être, c'est une bonne GUI pour scour dans laquelle on pourrait optimiser en masse des SVG. Il serait peut-être intéressant de s'y pencher en tant que projet à part entière. :)
PS: désolé pour le temps de réponse, j'avais raté le message
^^'[^] # Re: SVG ?
Posté par FLOZz (site web personnel, Mastodon) . En réponse à la dépêche YOGA Image Optimizer v1.1 : résultats des travaux de l'été. Évalué à 2.
Je connais scour, ça marche vachement bien ! :D
Mais pour YOGA je vais rester sur des formats matriciels : étant donné que YOGA peut effectuer des conversions entre les formats, ça va beaucoup compliquer les choses si on ne peux pas convertir n'importe quel format en n'importe quel autre :)
[^] # Re: Optimisation présentations et fichiers textes
Posté par FLOZz (site web personnel, Mastodon) . En réponse à la dépêche YOGA Image Optimizer v1.1 : résultats des travaux de l'été. Évalué à 1.
Bonjour,
Il s'agit d'une fonctionnalité qui dépasse le scope de YOGA, je ne pense donc pas l'implémenter.
Ceci dit, étant donné que YOGA est aussi un outil en CLI et une bibliothèque Python, il est tout à fait possible d'écrire un script ou un outil qui s’appuierait sur YOGA pour effectuer ce genre d'opération.
Aussi, comme l'a mentionné @Glandos dans un commentaire un peu plus haut, il existe un outil nommé Leanify qui semble faire exactement ce que vous souhaitez. :)
[^] # Re: Petite remarque sur l'UI
Posté par FLOZz (site web personnel, Mastodon) . En réponse à la dépêche YOGA Image Optimizer v1.1 : résultats des travaux de l'été. Évalué à 5.
Pour commencer, je n'ai pas envie de rajouter encore des développements spécifiques pour cette plateforme (le portage Windows m'a déjà demandé un bon mois de travail pour contourner tous les problèmes de conception de cet OS).
Ensuite, la sélection automatique d'un thème sombre ou clair n'est pas vraiment le problème. L'application n'a actuellement pas une apparence « native » sur cet OS, et je préfère laisser le choix à l'utilisateur du thème qui lui convient le mieux, que ce soit pour des raisons esthétiques ou d'accessibilité (sélection d'un thème à haut contraste par exemple).
J'ai incorporé dans la version Windows un thème « Windows10 » permettant de donner une apparence plus proche d'une application native de l'OS, mais je ne l'ai pas activé par défaut dans YOGA Image Optimizer v1.1 car je ne suis pas satisfait de sa qualité (il y a quelques « bugs » visuels et je ne veux donc pas mettre ce thème par défaut sans les avoir corrigés, si un jour j'en ai le temps et la motivation).
:)
[^] # Re: Un grand merci et un OS de plus
Posté par FLOZz (site web personnel, Mastodon) . En réponse à la dépêche YOGA Image Optimizer v1.1 : résultats des travaux de l'été. Évalué à 2.
Ok, bon à savoir, merci pour le retour ! :)
[^] # Re: Un grand merci et un OS de plus
Posté par FLOZz (site web personnel, Mastodon) . En réponse à la dépêche YOGA Image Optimizer v1.1 : résultats des travaux de l'été. Évalué à 4.
Tu veux dire que l'interface graphique en GTK fonctionne « out-of-the-box » sous MacOS ? 🤯️
[^] # Re: Petite remarque sur l'UI
Posté par FLOZz (site web personnel, Mastodon) . En réponse à la dépêche YOGA Image Optimizer v1.1 : résultats des travaux de l'été. Évalué à 2.
Oui je sais, mais je n'ai aucun intérêt à ajouter du code pour masquer une partie de l'UI dans le but de rendre une fonctionnalité inaccessible à certains système.
Je préfère que le logiciel soit identique pour tout le monde, sinon un jour je vais avoir une issue du style « je trouve pas l'option pour mettre le thème sombre ». :)
[^] # Re: Petite remarque sur l'UI
Posté par FLOZz (site web personnel, Mastodon) . En réponse à la dépêche YOGA Image Optimizer v1.1 : résultats des travaux de l'été. Évalué à 1. Dernière modification le 13 septembre 2021 à 11:43.
Si tu utilises YOGA Image Optimizer sous Linux, effectivement, cette option est très peu utile puisqu'on peut déjà choisir son thème globalement et il n'y a pas grand intérêt à avoir un thème différent pour une application spécifique.
J'ai surtout ajouté cette option pour le portage Windows du logiciel (oui, j'ai été assez fou pour porter une application Python/GTK sur cet OS…
^^'). Sous Windows ils n'ont pas la possibilité de sélectionner globalement un thème GTK… puis comme tout est compilé et distribué statiquement, les options de thème d'une application ne seraient de toute façon pas prises en compte par une autre…[^] # Re: Bravo !
Posté par FLOZz (site web personnel, Mastodon) . En réponse à la dépêche YOGA Image Optimizer v1.1 : résultats des travaux de l'été. Évalué à 2.
Actuellement je travaille à ajouter une optimisation à perte pour les PNGs (réduction du nombre de couleurs) → il se peut que ça soit une option très efficace pour les captures d'écran (si on accepte de perde un peu en qualité lorsque des dégradés sont présents).
Effectivement, le but premier de YOGA est de réduire au maximum le poids des images, et le coût pour y parvenir peut être élevé. Et encore pour les PNGs ça reste raisonnable, le traitement des JPEGs est bien plus lourd.
Si tu veux en savoir plus à ce sujet, j'avais écrit un passage sur les coûts d'optimisation dans un précédent article :
[^] # Re: encore des compléments et des compliments
Posté par FLOZz (site web personnel, Mastodon) . En réponse à la dépêche YOGA Image Optimizer v1.1 : résultats des travaux de l'été. Évalué à 1.
Oui, mais la « principale » lib sur laquelle je m'appuie pour l'optimisation des JPEGs, c'est Guetzli. MozJPEG est utilisée en complément pour gratter quelques % supplémentaires. C'est pour ça que je n'utilise qu'une partie des optimisations de MozJPEG (celles sans pertes).
Il faudrait trouver le temps de faire un véritable benchmark de MozJPEG vs Guetzli. En comparant la qualité perçu des images (le problème c'est qu'il existe plusieurs modèles de comparaison).
[^] # Re: Leanify
Posté par FLOZz (site web personnel, Mastodon) . En réponse à la dépêche YOGA Image Optimizer v1.1 : résultats des travaux de l'été. Évalué à 5.
Après, si tu préfères la ligne de commande ou que tu as besoin de scripter, YOGA dispose également d'une CLI complète :
:)
[^] # Re: encore des compléments et des compliments
Posté par FLOZz (site web personnel, Mastodon) . En réponse à la dépêche YOGA Image Optimizer v1.1 : résultats des travaux de l'été. Évalué à 6.
En fait c'est déjà le cas, YOGA supprime toutes les métadonnées des fichiers. Dans les faits, il serait même plus compliqué de les conserver que de les enlever. :)
En fait, même celle-là est supprimée : lorsque YOGA rencontre cette métadonnée en entrée, il applique directement la transformation, comme ça l'image reste droite, malgré la suppression des métadonnées.
[^] # Re: encore des compléments et des compliments
Posté par FLOZz (site web personnel, Mastodon) . En réponse à la dépêche YOGA Image Optimizer v1.1 : résultats des travaux de l'été. Évalué à 7.
Pour ce qui est de jpeg-recomrpess et de imageOtpim, il faut encore que je me penche un peu dessus pour voir ce que je pourrais en tirer.
Du côté des JPEGs je pense pas être tellement en mesure de gagner quelque chose (mais ça vaut toujours le coup de se renseigner et de tester des trucs).
Pour les PNGs par contre je pense qu'il y a encore une petite marge d'évolution pour la compression sans perte, et une grosse avec la compression à perte (réduction de couleurs). Je suis d'ailleurs en ce moment en train de travailler sur des bindings Python pour libimagequant (la bibliothèque utilisée derrière pngquant). :)
Merci ! Effectivement je souhaite que l'interface reste agréable et simple à utiliser malgré le nombre d'options qui va forcément un peu augmenter.
Je pense encore rajouter 2 ou 3 trucs dedans pour la prochaine version, mais je vais surtout me concentrer sur la compression maintenant. :)