← L'édition
IANouveau2 min de lecture

Générer un compresseur vidéo WebAssembly avec Claude Code

Simon Willison a utilisé le modèle Claude Fable 5.1 au sein de l'outil Claude Code pour le web afin de créer un compresseur vidéo sur mesure. L'application générée s'appuie sur la version WebAssembly de FFMPEG pour optimiser des médias directement depuis le navigateur.

Fil « Création d'applications web légères par 'vibe coding' avec des agents IA »

Illustration de l'article — simonwillison.net
Image : simonwillison.net

Simon Willison a partagé la réalisation d'un utilitaire de compression vidéo développé avec l'aide de l'intelligence artificielle. Après avoir enregistré sur son téléphone une démonstration vidéo de son animation « Equal Earth », l'auteur souhaitait publier une version optimisée et allégée de ce fichier sur son blog personnel.

Pour concevoir cet outil, il a sollicité Claude Fable 5.1 (un modèle de langage spécialisé dans la génération de code) à travers l'interface Claude Code pour le web (un environnement de développement basé sur des agents de programmation accessibles depuis un navigateur). L'IA a généré l'intégralité de l'application web à partir des consignes fournies.

Traitement média dans le navigateur grâce à WebAssembly

Sur le plan d'architecture, l'outil s'appuie sur l'adaptation en WebAssembly (un format d'instruction binaire permettant d'exécuter du code compilé à haute performance directement dans le navigateur) de FFMPEG (un outil en ligne de commande populaire pour l'encodage, la conversion et le traitement de fichiers vidéo et audio).

Cette configuration permet de réaliser la compression entièrement côté client, sans nécessiter d'envoi du fichier vidéo vers un serveur distant. Voici un exemple du type de commande FFMPEG sous-jacente que l'application WebAssembly exécute dans le navigateur :

# Exemple conceptuel d'optimisation exécutée par FFMPEG
ffmpeg -i input-phone-video.mov -vcodec libx264 -crf 28 output-optimized.mp4

Un cas d'usage concret pour les utilitaires légers

Cette démonstration illustre l'évolution des pratiques de développement d'outils internes et d'utilitaires web légers :

  • Génération par agent : assemblage rapide d'une interface web et d'une bibliothèque complexe via des consignes en langage naturel.
  • Exécution locale : utilisation de portages WebAssembly pour traiter des tâches lourdes (comme la vidéo) directement chez l'utilisateur.
  • Gain de temps : création d'un outil sur mesure répondant à un besoin ponctuel de publication de contenus sur le Web.