world-game/docs/ffmpeg.md
isUnknown af4d6200c6 Docs: guide de choix entre H.264 et WebM VP9
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-11 15:46:42 +01:00

1.9 KiB

Commandes FFmpeg

Compression vidéo (page d'accueil)

Compresse sans perte de résolution ni de framerate. CRF 23 = qualité par défaut libx264. faststart place l'atome moov en tête du fichier pour un démarrage immédiat en streaming.

# Desktop (1920x1080, 30fps) — 22MB → 5.8MB
ffmpeg -i Website_version.mp4 \
  -c:v libx264 -preset slow -crf 23 -an -movflags +faststart \
  Website_version_opt.mp4

# Mobile (1080x1920, 30fps) — 22MB → 4.8MB
ffmpeg -i mobile_version_texte_fixe.mp4 \
  -c:v libx264 -preset slow -crf 23 -an -movflags +faststart \
  mobile_version_opt.mp4

Encoder en WebM VP9 (alternative plus légère)

WebM est prioritaire sur MP4 dans les navigateurs modernes (sauf Safari). À placer en premier <source> dans la balise <video>.

ffmpeg -i input.mp4 \
  -c:v libvpx-vp9 -crf 33 -b:v 0 -an \
  output.webm

Quelle commande utiliser ?

Cas 1 — simple remplacement d'une vidéo existante : utiliser la compression H.264 MP4 (section du haut). C'est suffisant, compatible partout, et faststart règle le problème de streaming.

Cas 2 — on veut aller encore plus loin en poids : encoder aussi en WebM VP9 et ajouter les deux <source> dans le HTML. Le navigateur choisit automatiquement le meilleur format qu'il supporte :

<video>
  <source src="video.webm" type="video/webm" />  <!-- prioritaire (Chrome, Firefox) -->
  <source src="video.mp4"  type="video/mp4"  />  <!-- fallback (Safari) -->
</video>

WebM VP9 compresse mieux (~30-50% de moins que H.264 à qualité équivalente) mais l'encodage est beaucoup plus lent. À réserver aux vidéos qui restent longtemps en production.

Notes

  • -an : supprime la piste audio (inutile pour des vidéos muted en fond)
  • -preset slow : meilleure compression à qualité égale (encode plus lentement)
  • crf : Constant Rate Factor — plus bas = meilleure qualité. 23 = défaut libx264, 18 = quasi-lossless