Encoder une vidéo

Encoder une vidéo n’est pas une tâche compliquée en soi, ce qui l’est davantage, c’est de bien définir l’usage qui sera fait de cette séquence. Sur ce dernier point, vous savez généralement ce que vous allez faire d’une vidéo que vous souhaitez encoder. Dans l’exemple ci-dessous, nous pouvons découvrir le résultat obtenu (en terme de poids) de fichiers vidéos qui ont été encodés.

Nous expliquerons à la fin de cette ressource, comment nous avons pu obtenir une telle différence entre un fichier non compressé et un autre qui l’a été.

Quel est le rôle de l’encodage d’une vidéo ?

Pour être très pragmatique, nous pourrions répondre très simplement à cette question en affirmant : « Le rôle principal de l’encodage d’une vidéo est de diminuer le poids d’un fichier vidéo ».

Oui, mais pourquoi ?

À cette deuxième question, essayons de rester pragmatique en analysant les deux exemples suivants :

  • Imaginons une vidéo d’une minute (60 secondes) pesant 100 Mo. Quel débit (vendu par notre fournisseur d’accès à Internet) doit-on avoir pour lire la séquence sans coupure ?

Réponse : 100 Mo/60secondes = 1,6 Mo/seconde soit 12,8 Mbit/seconde.

On obtient 12,8 en multipliant 1,6 par 8 (car il y a 8 bits dans un octet).
Un débit se calcule/mesure toujours en Mbit/seconde et non Mo/seconde).

Ce rapide petit calcul nous démontre qu’un débit de 12,8 Mbit/s est nécessaire pour qu’un internaute puisse voir cette vidéo sans coupure. En d’autres termes, toutes les personnes qui ont un abonnement Internet à 2 Mbit/s, 8 Mbit/s, 10 Mbit/s ne pourront voir la vidéo sans avoir préalablement un très grand temps de préchargement (le temps de buffering ou de remplissage du buffer) et/ou des coupures lors de la consultation d’une vidéo.

  • Imaginons à présent cette même vidéo (d’une minute), mais avec un poids de 10 Mo. Sans refaire la démonstration et les calculs ci-dessus, nous pouvons affirmer qu’un débit de 160 Ko/seconde est nécessaire (soit 1,2Mbit/s).
Aujourd’hui, les débits de l’ADSL les plus faibles vont de 512 Kbit/s (64 ko/s) à 2 Mbit/s (256 Ko/s), les débits moyens vont de 8Mbit/s à 20 Mbit/s et pour les débits les plus élevés (obtenus principalement grâce à la fibre optique), on peut avoir entre 50 et 100 Mbit/s (6,25 Mo/s à 13 Mo/s) en théorie. On comprend donc qu’une vidéo qui pèse plusieurs centaines de Mo pour quelques minutes doit être allégée. C’est le rôle de l’encodage. Essayons à présent de comprendre la technique qui a permis, dans l’exemple ci-dessus, de passer de 100 Mo à 10 Mo.

 

Logique de compression d’une vidéo

Une vidéo est une suite d’images contenues dans un fichier. En théorie, pour connaître le poids d’une vidéo, il suffirait d’additionner celui de chaque image, mais dans la pratique, deux modes de compression permettent d’optimiser (diminuer) le poids d’un fichier vidéo. Retenons le mode qui consiste à ne conserver que des images intermédiaires, voici son fonctionnement.

Sur l’image ci-dessous, on découvre une séquence d’images qui présente le même contenu (l’arrière-plan ne bouge pas) sauf au niveau du bras qui change de place dans l’image.

Pour calculer le poids de cette vidéo, comme nous l’affirmions ci-dessus, nous aurions tendance à vouloir calculer le poids de chaque image pour en faire la somme totale.

En imaginant que chaque image pèse 10 Ko et puisqu’il faut 25 images pour une seconde  de vidéo, cela donnerait 250 Ko. Ne poussons pas inutilement nos calculs plus loin car nous allons tout de suite découvrir comment se fait la compression d’une vidéo.

Au moment de l’encodage d’une vidéo, on spécifie un certain nombre de paramètres (nous allons revenir sur ces derniers dans quelques instants), dont l’intervalle temps (ou le nombre d’images) entre deux images clés. Cela permet de définir le nombre d’images pour lesquelles on ne devra calculer que la différence de pixels changés par rapport à l’image clé précédente (n’oubliez pas qu’une image est définie par un ensemble de pixels allumés d’une certaine couleur avec une certaine luminosité (intensité)).

Dans l’exemple ci-dessus, on spécifie une image clé toutes les 12 images (dans la pratique, on opte pour 1 image clé toutes les secondes ou on laisse le logiciel d’encodage régler ce paramètre automatiquement, justement, en fonction du fort changement entre deux images) . En reprenant la logique évoquée ci-dessus, on calcule donc le poids de l’image 1 (10 Ko) + 11 x 2 Ko = 32 Ko au lieu de 250 K. En effet, une image comme celle qui vous est présentée ci-dessous est bien plus légère.

Grâce à cette technique qui consiste à ne retenir que les pixels qui changent entre deux images clés, on réduit ainsi le poids d’une vidéo.

Pour compresser une vidéo, il faut non seulement un logiciel, mais aussi un codec, c’est-à-dire un fichier présent sur votre ordinateur qui sera utilisé par les logiciels d’encodage et de lecture d’une vidéo. Lorsque votre ordinateur ne peut donc pas lire une vidéo, c’est qu’il ne possède pas le bon codec (il n’a pas le bon fichier).

Dans l’exemple ci-dessus, la copie d’écran démontre que 2 codecs ont été ajoutés à l’installation d’origine de l’ordinateur. Ils permettront donc de COmpresser/DECcompresser des vidéos avec ces CODECs. Le codec H264 est le plus connu à ce jour pour un usage à destination du web et du digital (appareils mobiles tels que les lecteurs vidéos portables, les lecteurs MP3 permettant de lire de la vidéo, les tablettes, les smartphones, etc.).

Paramètres pour la compression/décompression d’une vidéo

Pour compresser une vidéo, il ne suffit pas d’avoir un très bon logiciel d’encodage, mais il faut surtout savoir quels paramètres régler, et avec quelle valeur.

Si nous devions vous conseiller un logiciel pour encoder une vidéo, nous aurions tendance à vous répondre : Tout dépend de votre environnement de travail. Si vous travaillez dans le développement web avec un profil développeur, vous trouverez sûrement par vous même un bon freeware ou shareware. ffmpeg est sur Mac un très bon outil. Pour celles et ceux qui travaillent avec la suite Adobe, le logiciel Adobe Media Encoder se trouve sûrement sur votre machine. Quel que soit le logiciel, voici les paramètres que vous devrez régler.

Le format

C’est sûrement ce que vous connaissez déjà, ce qui est le plus visible, à savoir l’extension d’un fichier. Ce n’est pourtant pas le plus important. En effet, que vous optiez pour un fichier .mov, .mp4, .f4v, etc., cela n’a pas d’incidence sur l’intégration de votre vidéo dans votre composition (page web, publication DPS, montage vidéo, etc.).

Remarque : Certains logiciels (d’intégration multimédia ou de lecture de flux vidéos) ne reconnaissant que certains formats. N’hésitez pas à changer l’extension par celle qui est attendue, dans la plupart des cas, dans la mesure où vous aurez le bon codec, ce changement d’extension suffira à résoudre votre problème.

La taille de l’image

C’est un des paramètres les plus important et pourtant, les personnes qui génèrent des vidéos commettent parfois des erreurs. Lorsqu’une personne génère un fichier vidéo en 1920×1080, elle pense sûrement que ce fichier sera consulté à cette résolution (mais il se peut également qu’elle ne sache pas à quelle résolution sera exploitée la séquence, elle cherche donc à produire une vidéo à la plus grande résolution possible (il sera toujours temps de la diminuer)).

Lorsque vous aurez à choisir une dimension pour une vidéo, cherchez toujours à savoir à quelle résolution elle sera affichée dans/sur le média final (un site web, une publication digitale, une borne interactive, un DVD Vidéo, etc.). Vous pourrez ainsi définir une largeur et une hauteur.

Dans le cas du digital publishing, gardez à l’esprit que la résolution maximum de l’écran d’un iPad est de 1024×768, celles des tablettes GalaxyTab est de 1280×800 et celles  des Kindle Fire et Nook HD+ à 1920×1200. Si la vidéo doit donc être affichée en plein écran, cela ne sert à rien de dépasser ces dimensions (sauf pour une publication sur un iPad 3 qui présente une résolution de 2048×1536). Aurez-vous réellement besoin d’afficher une vidéo en plein écran ? Aurez-vous réellement besoin de produire des vidéos aux dimensions de la taille de l’écran finale ? C’est la qualité attendue qui vous indiquera quel paramètre retenir. Dans la pratique, si votre vidéo doit s’intégrer sous forme d’encart, régler la largeur et la hauteur d’export de votre vidéo aux bonnes dimensions. Dans le cas d’une vidéo plein écran, essayez de choisir une taille à l’échelle 1:1 pour de courtes vidéos (de 1 à 2 minutes) et l’échelle 1:2 pour des vidéos plus longues. Tout dépendra également du nombre de vidéos que doit contenir votre publication (qu’elle soit web ou digitale).

Le nombre d’images clés

Il s’agit des explications que nous vous avons donné un peu plus haut dans cette ressource, celles qui traitent des images de référence entre les images ne contenant qu’une partie de l’image. Si vous deviez réellement intervenir à ce niveau là, gardez à l’esprit que plus le temps ou le nombre d’images sont faibles entre deux images clés, plus vous augmenterez le poids de votre fichier vidéo. Plus une vidéo contiendra de mouvement dans l’image, plus il sera conseillé d’avoir des intervalles temps (ou un nombre d’images) faibles. En règle générale, laissez le logiciel de compression s’occuper du réglage de la valeur de ce paramètre.

Le codec

Si vous lisez les pages de ce site, c’est que vous destinez sûrement la production de vos contenus vidéos à une publication sur le web ou pour du digital. Dans ce cas, ne cherchez pas plus loin, optez pour le codec H264 (ou H265 s’il est disponible) pour la piste vidéo et AAC pour la piste son.

Le débit

Nous terminerons par ce dernier paramètre car il s’agit du réglage le plus important. Pour une diffusion consultation d’une vidéo qui sera lue sur Internet, optez pour un débit compris entre 0,5 et 0,65 Mbit/s ou 500 à 650 Kbit/s. Pour une vidéo qui sera lue off-line (digital non connecté tel que les tablettes, les ordinateurs et autres lecteurs de médias, optez pour une qualité comprise entre 1 à 2 Mo. Cette dernière valeur est très large car les microprocesseurs et les cartes graphiques ne sont pas les même dans tous les appareils. Retenez tout de même, que plus cette valeur est élevée, plus le poids du fichier augmentera. Concernant le son, optez pour un minimum de 22Khz ou 128bits. Si vous avez le choix entre une compression fixe (CBR) ou variable (VBR), optez pour une variable.

En conclusion

Lorsque vous visualiserez le résultat de votre compression/encodage, votre oeil sera seul juge pour évaluer la qualité du rendu final obtenu. De ce fait, nous vous invitons vivement à faire de nombreux tests avec des débits variables pour lire les vidéos obtenues depuis leur support final (web, tablette, etc.).

Remarque : Il vous sera peut-être demandé de définir le nombre de « pass » pour l’encodage d’une vidéo. Si vous optez pour un passage, l’encodage se fera rapidement, mais la qualité du rendu sera moins bonne qu’une compression avec deux passages.