Blog Zenika

#CodeTheWorld

GreenOpen source

Shrink my video : une expérimentation de sobriété numérique

Résumé : L’outil “Shrink my video” permet de facilement limiter la taille des vidéos et offre la possibilité d’appliquer des méthodes de réduction plus radicales.


Sobriété numérique à l’heure de la TV 8K et de la 5G

Aujourd’hui, on parle de devoir réduire notre impact environnemental d’un facteur 4 (monde) ou 6 (France) (source) pour atteindre un mode de vie durable. Le numérique participe à cet impact à hauteur d’environ 4%, une part non négligeable et supérieure à celle de l’aviation civile. Or, on prédit que l’impact du numérique va continuer de croître avec l’augmentation des débits, résolutions, des capacités de stockage, des puissances de calcul, du nombre d’appareils, etc. qui semble inarrêtable.

Dans les recommandations du rapport “iNUM : impacts environnementaux du numérique en France” publié par le collectif GreenIT.fr en 2020, on peut y trouver la recommandation suivante :

ÉCOCONCEVOIR LES SERVICES NUMÉRIQUES pour réduire leurs besoins en ressources numériques et ainsi favoriser l’allongement de la durée de vie des appareils ainsi que leur réemploi.

Le point important ici est de favoriser l’allongement de la durée de vie des appareils.

Car comme le rappelle le collectif dans son rapport, la fabrication des terminaux utilisateurs (PC, smartphones, etc.) jouent un rôle prépondérant dans la consommation d’énergie primaire, l’émission de GES, la consommation d’eau et la consommation de ressources abiotiques (voir graphique ci-dessous, extrait du rapport).

Dit autrement, lorsque vous recevez un nouveau smartphone, la majorité des impacts ont déjà été faits avant même que vous ne l’allumiez. C’est donc sur ce point que les efforts de réduction auront le plus d’impact. 

La vidéo en ligne

D’après le rapport “CLIMAT : L’INSOUTENABLE USAGE DE LA VIDÉO EN LIGNE” publié par The Shift Project en 2019, les flux vidéos représentent 80% du trafic mondial sur Internet. The Shift Project a joint à son rapport un guide pour diminuer la taille des vidéos afin de limiter leur impact, écrit par Gauthier Roussilhe.

Là encore, l’objectif n’est pas tant de limiter la consommation électrique des équipements servant à stocker, acheminer et lire cette vidéo (phase d’utilisation), mais avant tout de prolonger la durée de vie de ces équipements (phase de fabrication) en limitant les ressources nécessaires pour récupérer la vidéo et la lire, et en évitant de dégrader l’expérience utilisateur pour des raisons techniques. C’est également pour concentrer le propos sur les impacts sur la phase de fabrication que je n’ai volontairement pas intégré de données chiffrées liées au visionnage de vidéos en ligne à cet article. Vous trouverez ces chiffres dans les différents rapports cités.

Ce guide explique comment télécharger l’outil Handbrake et comment le configurer afin de diminuer la taille de nos vidéos tout en préservant une bonne qualité. Les étapes sont claires et il ne faut pas plus de 5 minutes pour aller au bout de la procédure (comme l’indique le titre du guide). On peut cependant imaginer que pour bon nombre de personnes qui ne sont pas à l’aise avec le numérique, télécharger un logiciel et modifier des paramètres dont on ne comprend pas forcément la signification (“constant framerate”, “h264”, “bitrate”, etc.) est encore une marche trop haute à franchir.

Faciliter (encore plus) le changement

C’est en découvrant le projet FFMPEG.WASM que m’est venu l’idée de créer un convertisseur qui puisse appliquer automatiquement les réglages préconisés dans le guide, et ce directement dans le navigateur. FFMPEG.WASM est une version de FFMPEG, la suite de logiciels libres destinés au traitement de flux audio ou vidéo (https://ffmpeg.org/), compilée en Web Assembly pour pouvoir s’exécuter dans le navigateur.

C’est ainsi qu’est né “Shrink my video”, un outil que vous pouvez trouver à l’adresse suivante : https://acailly.github.io/shrink-my-video/

Bonus : c’est une Progressive Web App (PWA), vous pourrez donc l’installer sur votre smartphone ou votre ordinateur (presque) comme si c’était une application native, puis l’utiliser quand vous le souhaitez même sans connexion à internet.

J’ai ainsi pu tester rapidement l’effet de ces réglages sur une vidéo d’une de mes conférences passées. Je suis passé de 86 Mo (ici) à 72 Mo (ici). La vidéo était déjà supposée être optimisée pour la diffusion en ligne, le gain de taille n’est donc logiquement pas très élevé, mais il existe. Il sera beaucoup plus important pour une vidéo qui n’a pas été optimisée pour la diffusion en ligne.

Réduire encore

Le guide de The Shift Project propose des réglages qui préservent la qualité de la vidéo. J’ai voulu aller plus loin quitte à dégrader cette qualité du moment que l’essentiel de l’information était transmise.

Il y a quelques années j’ai découvert la technique du dithering appliquée aux images, vous pouvez voir des exemples ici : Dither it!. Cette technique consiste à réduire la palette de couleurs utilisées afin de réduire drastiquement la taille de l’image tout en préservant la lisibilité de son message. Elle est utilisée sur plusieurs site “Low Tech” :

Cette approche m’a inspiré pour expérimenter les techniques de réduction que je vais présenter ci-dessous.

  • Pour commencer, la plus évidente des techniques pour réduire d’avantage la taille de la vidéo consiste à diminuer un peu plus la résolution vidéo (480p) et le débit audio (56 kbits/s). Sans surprise les gains sont importants, on passe de 86 Mo pour la vidéo originale à 35 Mo (ici).
  • Ensuite j’ai essayé de passer la vidéo en noir et blanc. La vidéo passe de 35 Mo à 32 Mo (ici), le gain de taille n’est pas très important. J’ai cependant laissé ce réglage disponible car il peut servir un autre objectif rentrant aussi dans le giron du numérique responsable : celui de s’assurer que la vidéo est compréhensible sans couleur et ainsi par la population souffrant de daltonisme (4% de la population française, 8% des hommes).
  • Après avoir posté l’outil sur HackerNews, un des utilisateurs m’a suggéré d’augmenter le Constant Rate Factor (CRF) pour diminuer la qualité et la taille du fichier. En appliquant la valeur maximale suggérée pour le codec utilisé (28 au lieu de 22 dans les réglages de The Shift Project), la vidéo passe de 35 Mo à 22 Mo (ici).
  • En regardant le replay d’une conférence, une autre idée m’est venue : celle de réduire le nombre de frames par secondes (FPS) à une image toutes les 5 secondes ! Après tout, il est rare que les diapos d’une conférence défilent plus vite (et tant pis pour les gifs animés 😉).

Le résultat sur la vidéo exemple est sans équivoque : on passe de 22 Mo à 13 Mo ! Soit plus de 4 fois moins qu’avec les réglages conseillés par The Shift Project (72 Mo pour rappel). À vous de juger de la lisibilité du résultat, ici.

Si vous pensez à d’autres techniques originales et/ou radicales pour diminuer la taille d’une vidéo, faites le moi savoir sur twitter @AntoineCailly.

Conclusion

L’outil Shrink my video vise avant tout à faciliter l’application des recommandations de The Shift Project pour les personnes qui ne seraient pas à l’aise avec des outils comme Handbrake, même avec un guide.

C’est aussi un terrain d’expérimentation pour une approche plus radicale, permettant d’aller beaucoup plus loin dans la réduction tout en préservant l’essentiel.

ExpérimentationRéglages appliquésTaille obtenueLien
Vidéo originaleAucun86 Mo (100%)
ici
Bonne qualité“Apply settings from The Shift Project”72 Mo (83%)
ici
Basse résolution“Lower video resolution” + “Lower audio bitrate”35 Mo (41%)
ici
Noir et blanc“Lower video resolution” + “Lower audio bitrate” + “Black and white”32 Mo (37%)
ici
Basse qualité“Lower video resolution” + “Lower audio bitrate” + “Lower video quality”22 Mo (26%)
ici
1 image toutes les 5 secondes“Lower video resolution” + “Lower audio bitrate” + “One image every 5 seconds”13 Mo (15%)
ici

Les enjeux du numérique ne se limitent pas à réduire la taille de nos vidéos et je ne pouvais pas terminer cet article sans élargir le sujet et vous renvoyer vers le hors série Kaizen-Zenika sur le numérique responsable auquel j’ai participé ainsi que plusieurs de mes collègues.


Formations :
GreenIT : État de l’art
Éco-conception de services numériques


Auteur/Autrice

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.