Codec, mon amour !
Pierre-Alain Dorange - août 2001 - mis à jour le 1/04/2004

Une séquence vidéo complète représente une quantité d’information énorme. Ainsi une séquence médiocre diffusable en plein écran TV (format 352x288 à 25 images par secondes avec du son qualité CD en stéréo) représente un flux de données d’environ 8 Mo par seconde. Soit, pour une séquence de 5 minutes, plus de 2 Go !

Afin de réduire ces quantités et permettre une diffusion normal, on fait appel à la compression qui permet de réduire la quantité d'informations.

Débits

Pour exprimer la quantité d’informations nécessaire on parle de débits, exprimés soit en octets (Bytes) ou en bits (bits ; 8 bits = 1 octect) par secondes.

Ainsi notre exemple à un débit de 8 Mo/s ou 64 Mb/s.

Attention aux notation anglo-saxonnes qui notent Mo/s en MB/s (octect = byte) ne pas confondre avec les mb/s (8 fois plus important mais qui représente au final la même chose).

Ce genre de débits réclament que la séquence soit sur un support qui permet des débits au moins supérieur, soit un disque dur dans notre exemple. Un lecteur de CD classique (24x) supporte un débit maximum de 2,1 Mo/s, et donc ne pourrait pas jouer le film correctement avec ce débit non compressé de 8 Mo/s.

De plus un CD ne peut contenir qu’environ 650 Mo, soit seulement 1 minute 30 seconde de notre film...

La situation est pire sur internet ou les débits sont encore plus faible (modem : 5 Ko/s, adsl : 16 Ko/s)

Les débits réclamés en vidéo et audio sont tellement important qu’il est absolument nécessaire de compresser les données sur le support de stockage et de les décompresser lors de la lecture.

Il convient bien sur que la décompression puisse être suffisement rapide pour ne pas ralentir le flux (ici il faut pouvoir décompresser 25 images par secondes, ainsi que le son stéréo).

La durée de compression est moins importante, car on peut très bien réaliser la compression du film original en plusieurs heures si nécessaire...

Lorsque les durées de compressions et de décompressions sont très différentes on parle de codec asymétrique.

Codecs

Les systèmes de COmpression/DECompression (codec) ont pour but de réduire suffisamment le flux de données pour permettre à la séquence de passer au travers du support prévu. Chaque Codec a ces particularités qui le rend plus ou moins bien adapté aux supports visés.

On distingue 2 grandes familles de codec :

  • Sans perte (lossless), les données sont compressés mais à la restitution on retrouve exactement l’original sans aucune altération; ce type de compression est assez peu efficace en vidéo ou en audio
  • Avec perte (lossy), les données sont compressés mais lors de la restitution on obtient une dégradation (légère en général) car l’original a été altéré définitivement. Ce type de compression permet de fort taux de réduction de données. Bien réglé, les déformations ne sont pas trop visible ou audible.
Compression des images

Au niveau de la compression vidéo, il existe 2 approches complémentaires :

  • Compression spatiale (intraframe), le codec analyse chaque image qui compose la séquence indépendemment et chaque image est donc compressé comme une image fixe. Le format d’image fixe JPEG en fait partie par exemple.
  • Compression temporelle (interframe), dans ce cas la compression utilise l’enchainement des images pour en déduire seulement les changements (sur un plan fixe il y a peu de changements) afin de ne pas encoder des informations inutiles. Pour la compression temporelle, le codec utilise des images clés (keyframe) qui servent de référence pour les suivantes. Il convient de disposer régulièrement de ces images clés pendant le film afin de ne pas trop dégrader la qualité.
Compression des couleurs

La compression vidéo met aussi en œuvre des astuces au niveau de la gestion de couleurs.

De base un film de qualité code les couleurs de chaque points (pixels) avec 3 octets : une valeur pour le Rouge, une autre pour le Vert et une dernière pour le Bleu : RVB; ce qui permet une palette de couleurs de plus de 16 millions de nuances. L’oeil ou le support de restitution (écran) ne permet pas toujours de distinguer réellement autant de nuances, on peut donc coder ces données RVB sur 2, voir 1 seul octet; ce qui réduit d’autant les quantités d’informations.
C'est la profondeur d'image noté en bits.

Codage YUV

Historiquement (et techniquement) les signaux vidéos analogique sont transportés dans un autre mode de représentation des couleurs que le RVB, on utilise un système nommé YUV. Ou Y représente la luminescence et U,V les composantes Rouge et Bleu. Ces 3 informations permettent de restituer au final les composantes RVB et apporte l’avantage de permettre une meilleur compression des couleurs et de fiabiliser le transport du signal vidéo au sein de câbles électrique.

voir l’article “Bien comprendre le codage des couleurs YUV”.

L’utilisation conjointe (ou pas) de ces 3 techniques (spatial, temporel et couleur) permet aux codecs vidéo de réduire le débit d’une séquence à ce que peut supporter le support de transfert.

L’audio

L’audio, bien que moins gourmand en débit mais reste pénalisant.

Ainsi une musique en stéréo (2 canaux) de qualité CD (echantillonnage à 44,1 kHz sur 16 bits) non compressé représente un débit de 172 Ko/s (1378 Kb/s).

Les codecs Audio permettent de réduire ce débit de base. Ainsi un codec très célèbre, le MP3, permet d’encoder de la musique à des débits de 96 Kb/s sans que la qualité sonore soit trop dégradé pour un rapport de compression moyen de 12:1. Pour assurer une qualité correcte il convient toutefois de préférer des débits de 128 ou 160 ko/s en MP3.

Rapport de compression

On mesure l’efficacité d’un codec à son rapport de compression, exprimé sous la forme 16:1 par exemple; ce qui signifie que le flux compressé représente 1 pour 16 de l’original (ou 1/16 ème).

Ainsi pour un débit original de 64 Mbps compressé à 16:1 devient un débit de 4 Mbps.

A titre indicatif le rapport pour le codec DV est de 5:1.

Choix d’un codec

Le choix d’un codec va dépendre de l’utilisation de la séquence.

On privilégie les codec sans perte ou à très faible perte pour l’archivage de rushs ou pour l’édition afin d’éviter que les compressions/recompressions successives ne dégradent l’image.

Les codecs à forte compression (lossy) sont plutot utiliser pour la génération finale de la séquence en vue d’une diffusion. On choisira le codec le plus approprié au type de support (CD, internet, réseau…) ainsi qu’à la séquence.

Un codec spécialisé pour la vidéo ne donnera pas de bon résultats avec un film dessinés d’animation par exemple. Une vidéo est en effet très bruitée alors qu’un film d’animation comporte de larges aplats de couleurs.

Vous trouverez ci-dessous, 2 liens vers des tableaux qui reprennent les spécifications et avantages/inconvénients de chaque codecs et supports.

Tournage et astuces pour assurer un faible débit

Dans le cas d’une vidéo, il peut aussi être important de soigner le tournage et d’utiliser quelques trucs lorsque l’on connait le codec qui saura utiliser au final pour la diffusion. Il ne faut non plus s'imposer ces astuces techniques au détriment de la narration.

De manière général, les codecs aiment bien :

  • plan fixe (peu de mouvements de caméras)
  • mouvements de caméra lents
  • les images de bonne qualité (bon piqué donc bon éclairage)

et n’aiment pas :

  • les plans bougés (utilisez un pied : tripod)
  • les conditions d’éclairage difficile (sombre ou saturé)
  • les fonds complexes et changeants (pour une interview privilégier un fond uniforme par exemple)

De plus faites le plus tôt possible des tests de compression sur vos premiers rushs afin de valider le codec de diffusion final avant d’avoir fini, cela pourra vous éviter de tout recommencer plusieurs fois.

Pour terminer pensez à travailler à des formats plus grand que le film final à diffuser. Par exemple pour une diffusion en VCD (352x288) utilisez plutot des rushs à 708x576 pour améliorer le piqué de l’image.

haut de la page - © Le garage de la vidéo - reproduction interdite