Encodage:Généralités
Codecs et normes
Un codec, pour COder/DECoder, est un algorithme qui permet de :
- transformer une donnée brute, prenant beaucoup de place, en une donnée compressée, prenant moins de place.
- décompresser rapidement ces données afin de vous les afficher.
Il en existe de deux sortes, certains pouvant être l'un et l'autre selon les paramètres utilisés :
- avec perte : il existe une différence notable enter l'origine et le résultat
- sans perte : l'origine et le résultat donnent le même chose
Les trois domaines principaux dans lesquels nous les utilisons sont :
- l'image
- l'audio
- la vidéo
Afin que tous les programmeurs ne créent pas des milliers de codecs, tous incompatibles les uns avec les autres, on a décidé de normer les choses.
Il ne faut pas confondre le codec, qui est le logiciel ou matériel réalisant l'opération, avec la norme, qui est la spécification de ce que l'on donne en entrée au codec et de ce que ce codec doit fournir.
Exemple :
- MPEG4 - H264 est une norme
- x264 est un codec libre et NVENC (de nVidia) est un codec propriétaire
ou encore
- MPEG-2 Audio Layer III est une norme (mieux connue sous le nom MP3)
- LAME est un codec libre et Fraunhofer est un codec propriétaire
Et, bien entendu, chaque encodeur a ses raisons d'êtres, ses forces et ses faiblesses.
En quoi est-ce important ?
Aux USA, là où sont créées les normes, il est possible de breveter une norme, même s'il n'existe pas encore de codec pour réaliser l'opération.
Toute utilisation de la norme H264 est payante. Cela veut dire que si un site (p.ex. YouTube) ou un logiciel (Adobe Premiere) ou un téléphone (tous...) ou un matériel (carte graphique, télévision...) décide d'inclure la possibilité de décoder ou encoder du h264 directement dans son produit, il doit reverser une somme par utilisation...
Cela est dû au fait qu'il s'agit de produits payants dont les USA sont des clients. A partir du moment où les USA sont clients, le produit doit respecter tous les brevets, même si le produit est créé en dehors de USA, où d'autres législations s'appliquent.
En Europe les brevets logiciels tels qu'appliqués aux USA ne sont pas valables et dès qu'une norme se crée, le monde du Libre créé un codec libre, open-source et gratuit dont le but est de fournir la meilleure qualité possible avec cette norme. Il faut remercier l'équipe de VLC, des français, pour la création de ces codecs.
C'est bien puisque c'est ce qui permet d'avoir des films en qualité BluRay prenant un dixième de la place à qualité équivalente mais au prix d'un processus long de traitement vidéo.
Mais ce n'est pas intéressant du tout pour la majorité des industries qui ont avant tout besoin que le traitement soit rapide, quitte à perdre en qualité.
Par exemple, les cartes graphiques nVidia permettent d'enregistrer l'écran en très haute qualité, directement en h265, tout en enregistrant le son en très haute qualité également.
Pour cela, ils ont créé leur propre codec h264 : NVENC. Celui-ci est connu pour être un des plus rapides mais avec une qualité plus qu'approximative.
Donc deux codecs pour la même norme ne donneront pas le même résultat ?
En effet. Même avec les mêmes paramètres et un fichier final de taille équivalente.
C'est également la raison pour laquelle les codecs évoluent.
Une vidéo faite avec x264 en 2005 ne sera pas la même que celle faite maintenant avec la dernière version de x264. (oui, x264 a bientôt un quart de siècle...)
Mais attention, là où, en général, le format de fichier permet dans le cas des images et audios de savoir à quel codec on a à faire (JPG, PNG, MP3, OGG, TIFF, BMP, WAV...), cela n'est pas du tout le cas pour la vidéo.
Dans le cas des vidéos, nous faisons appel à des "containers", plus ou moins simples (une vidéo dans un certain codec + un audio dans un certain codec) ou compliqués (une ou plusieurs sources vidéos, plusieurs sources audios, des sous-titres, du chapitrage...)
Image
Audio
Il existe plusieurs codecs, chacun utilisé en fonction de certains besoins.
Faible | Moyenne | Haute | Extrême | ||||
---|---|---|---|---|---|---|---|
Nom | Utilisation | Nom | Utilisation | Nom | Utilisation | Nom | Utilisation |
G.711 | Utilisé sur les anciens téléphones. | MP3 | Vorbis | WAV/AIFF | |||
GSM-FR/AMR-NB | Utilisé par les téléphones dans les années 90 | AAC | FLAC | DSD | |||
RealAudio | Utilisé pour le streaming dand les années 90 | Opus | ALAC | ||||
MP2 | Ancêtre du MP3. Est néanmoins toujours utilisé pour la radio en DAB | APE |
Vidéo
Ripper un DVD ou BluRay peut-être compliqué.
Nous allons partir du film "Rocky Horror Picture Show", qui est l'exemple le plus complexe que j'ai pu voir, dont le DVD propose :
- VIDEO
- Angle 1 : Film original en haute quailté
- Angle 2 : Film filmé dans un cinéma où passe le film, où les gens sont déguisés et chantent par-dessus, en qualité moyenne
- AUDIO
- Film : La bande son du film en haute qualité
- Angle 2 : La bande son de l'angle 2, où le public rajoute des paroles, en qualité moyenne
- Commentaires en qualité basse :
- les réalisateurs racontent le film
- on commente la version publique
- SOUS-TITRES
- Des sous-titres en plusieurs langues pour tous les audios, que ce soit le film ou les ajouts du public ou les commentaires...
- Il y'en a donc beaucoup
- ...