Cédric Temple

Administrateur système en logiciels libres

FFMPEG : encoder ses vidéos avec une bonne qualité

2020-03-21 » notes pour plus tard

FFMPEG : encoder ses vidéos avec une bonne qualité

Introduction

Le but ici n’est pas de faire un cours sur l’encodage vidéo mais de présenter les éléments essentiels. Je me base sur les recommandations faites par les plus importants sites hébergeant des vidéos pour le grand public (YouTube, Vimeo, Dailymotion). Ces recommandations ont été contrôlées au moment de la dernière mise à jour de l’article (merci de vérifier la date donc).

L’idée ici n’est pas de savoir ce qu’il faut faire pour encoder ses fichiers pour les faire héberger par les sites sus-mentionnés (quoique… ça marche aussi) mais surtout ce qu’il faut faire pour avoir une qualité correcte si on héberge soi-même ses vidéos.

Tableau de recommandations

Je résume ici les recommandations des principaux hébergeurs de vidéos.

Vidéo

FacteurYouTubeVimeoDailymotion
ConteneurMP4?MOV/MP4
Codec vidéoH.264H.264/Apple ProRes 422 (HQ)/H.265 (HEVC)H.264/H.265 (HEVC)
Fréquence d’images supportéestoutestoutes24, 25, 30, 50, 60
VBR ou CBRVBRVBR?
Bitrate en 1280x720p5-7,5 Mbps5-10 Mbps6-8 Mbps
Bitrate en 1920x1080p8-12 Mbps10-20 Mbps6-8 Mbps
Bitrate en 2560×1440p16-24 Mbps20-30 Mbps?
Bitrate en 3840x2160p35-68 Mbps30-60 Mbps20 Mbps

Remarques :

  1. VBR : Variable Bitrate
  2. CBR : Constant Bitrate
  3. les bitrates en rapport avec les résolutions sont indiqués en VBR, pour du H.264
  4. la valeur minimale du bitrate correspond à du 24 images par seconde, la valeur haute à du 60 images par seconde
  5. le nombre d’images par seconde doit être constant sur toute la vidéo
  6. le conteneur est indiqué dans les 2 parties audio et vidéo mais, évidemment, il n’est pas spécifique à l’audio ou à la vidéo. Il est forcément identique en audio et en vidéo.

Audio

FacteurYouTubeVimeoDailymotion
ConteneurMP4?MOV/MP4
Codec audioAAC-LCAAC-LCAAC-LC
Canaux : stéréoouiouioui ?
Canaux : 5.1ouinonnon ?
Canaux : 5.1 + stéréoouinonnon ?
Fréquence d’échantillonnage96 kHz ou 48 kHz48 kHz?
VBR ou CBRCBRCBR?
Bitrate en stéréo384 kbit/s384 kbit/s?
Bitrate en 5.1512 kbit/sxx

Remarques :

  1. VBR : Variable Bitrate
  2. CBR : Constant Bitrate
  3. le conteneur est indiqué dans les 2 parties audio et vidéo mais, évidemment, il n’est pas spécifique à l’audio ou à la vidéo. Il est forcément identique en audio et en vidéo.

Mes recommandations

Au vu de ces tableaux, après quelques tests dans un contexte professionel (hébergement de vidéos sur des oeuvres artistiques et hébergement de vidéos de cours à destination d’étudiants) comme dans un contexte personnel (vidéos familiales) je recommande :

  1. ne jamais agrandir une vidéo
  2. ne jamais changer la définition d’une vidéo dans une plus petite si le form factor n’est pas compatible (par exemple du 4/3 vers 16/9 : interdit)
  3. choisir la fréquence d’images en fonction du type de vidéo : cinéma (24 ou 25 i/s), beaucoup de mouvements rapides/action (48, 50 ou 60 i/s)
  4. le 120 i/s est pour l’enregistrement afin de faire des ralentis, pas pour le visualiser sur un écran
  5. VBR pour la vidéo mais CBR pour le son
  6. si j’ai suffisamment de débit, je prend la valeur haute recommandée par Vimeo
  7. toujours en progressif, jamais en entrelacé

Vraies questions non encore tranchées :

  1. peut-on déjà tout encoder en H.265 ou doit-on attendre ?
  2. quand pourra-t-on arrêter de fournir un fichier MP4+H.264/H.265 et un WEBM+VP8/VP9 ?