Les stations de travail et ordinateurs haut de gamme sont capables
de manipuler le son numérique aisément depuis une quinzaine d'années.
C'est seulement depuis à peu près cinq ans qu'un ordinateur décent
peut manipuler de la vidéo sans du matériel dédié coûteux.
De nos jours, même les ordinateurs bas de gamme sont assez puissants
et ont la mémoire nécessaire pour manipuler de la vidéo,
sans trop de difficultés.
Donc, comme tout le monde a accès à ce bon matériel à bas pris,
de plus en plus de gens veulent, évidemment, faire des choses intéressantes
avec son et images numériques, en particulier la diffusion continue.
YouTube fut le premier gros succès, et tout le monde veut être le suivant.
C'est une bonne chose, car tout ceci est fascinant!
Il est facile de trouver des utilisateurs pour les média numériques.
Mais ici, je m'adresse aux ingénieurs, aux mathématiciens,
aux hackers, à ceux qui s'intéressent à la découverte de nouvelles choses
et veulent créer et faire avancer la technologie.
Les gens qui ont la même passion que moi.
Les média numériques, et la compression en particulier, sont vus comme un sujet
spécialisé, bien plus compliqué que le reste de l'informatique.
Les grandes compagnies dans ce domaine ne font rien pour diminuer cette perception,
qui les aide à justifier le nombre extrême de brevets triviaux qu'elles détiennent.
Ces compagnies aiment cette image de leurs chercheurs en tant que la crème de la crème,
tellement plus intelligents que les autres que leurs idées brillantes
ne peuvent être comprises par de simples mortels.
Et c'est du n'importe quoi.
Son numérique, images numériques, diffusion en continu, compression,
ceux-ci offrent des problèmes difficiles et intellectuellement stimulants,
comme toute autre discipline.
L'apparence de difficulté extrême est due au nombre restreint de personnes dans ce domaine.
Ce nombre restreint n'est en fait dû qu'à la rareté du matériel dédié
requis jusqu'à aujourd'hui.
Mais maintenant, la grande majorité des gens qui regardent cette vidéo
ont un ordinateur assez puissant pour jouer dans la cour des grands.
Il y a des batailles en cours à propos de HTML5, des navigateurs Web,
de la vidéo, et ouvert contre fermé.
Alors maintenant est un bon moment pour s'intéresser à tout cela.
Où commencer ? Le plus simple est probablement avec la technologie
que nous avons maintenant.
Ceci est une introduction.
Comme toute introduction, beaucoup de détails seront passés sous silence,
pour que nous puissions avoir une vue d'ensemble.
Beaucoup de personnes connaissent probablement déjà ce dont je vais parler,
au moins dans cet épisode.
D'autres, par contre, trouveront peut-être que je vais trop vite,
s'ils n'ont jamais abordé le sujet; si c'est votre cas, ne vous en faites pas.
Le plus important est de retenir les quelques idées qui vous marquent le plus.
Faites bien attention à la terminologie qui à rapport à toutes ces idées,
puisque avec elle, vous pouvez utiliser Google et Wikipedia pour approfondir
vos connaissances à volonté.
Donc, sans plus attendre,
bienvenue à un passe-temps pas comme les autres.
Le son est dû à la propagation d'ondes périodiques de pressions à travers l'air,
se répandant depuis la source comme les ondes autour d'une pierre lancée dans l'eau.
Un microphone, ou une oreille humaine,
transforme ces différences de pression en un signal électrique.
La plupart d'entre vous auront vu cela à l'école.
Passons à la suite.
Un signal audio est une fonction à une dimension, une valeur scalaire changeant avec le temps.
Si on ralentit un peu l'oscilloscope...
ça devrait être un peu plus facile à voir.
Certains autres aspects de ce signal sont importants.
Il est continu, en valeur comme en temps;
c'est-à-dire qu'à tout instant, il peut avoir une valeur réelle quelconque,
et sa valeur change graduellement avec le temps.
On peut zoomer autant que l'on veut,
il n'y a ni discontinuités, ni singularités, ni sauts de la valeur,
ni de points où le signal disparaît. Il existe sur tout l'axe du temps.
Les mathématiques classiques des fonctions continues sont parfaites pour travailler sur ces signaux.
Un signal numérique, par contre, est discret, en valeur et en temps.
Dans le système le plus simple et le plus répandu, appelé modulation d'impulse codée (PCM an Anglais),
une valeur parmi un ensemble prédéfini représente l'amplitude du signal à une série
de points équidistants sur l'axe du temps. Le résultat est une série de valeurs.
En fait, cela ressemble beaucoup à ceci.
Intuitivement, il paraîtrait que l'on devrait pouvoir transformer rigoureusement l'un en l'autre,
et, par chance, le théorème de Shannon nous dit que c'est possible, et comment.
Publié dans sa forme la plus populaire par Claude Shannon en 1949
et s'appuyant sur les travaux de Nyquist, Hartley, et bien d'autres,
ce théorème dit que non seulement on peut passer d'analogique en numérique et vice versa,
mais donne une série de conditions sous lesquelles la conversion
est sans perte, et les deux représentations deviennent équivalentes et interchangeables.
Lorsque ces conditions ne sont pas observées, le théorème nous dit
combien d'information est perdue, ou corrompue.
Jusqu'à récemment, la technologie du son était quasiment toute basée sur l'analogique,
et pas seulement parce que la plupart du son provient de sources analogiques.
Vous pourriez aussi penser que puisque les ordinateurs sont une technologie récente,
la technologie analogique a du apparaître la première.
C'est faux. Le numérique est en fait plus ancien.
Le télégraphe a précédé le téléphone d'un demi siècle
et était déjà automatisé vers 1860, envoyant des signaux numériques,
multiplexés sur de longues distances. Vous savez... le téléimprimeur.
Harry Nyquist, de Bell Labs, faisait de la recherche sur la transmission de signaux
par télégraphe lorsqu'il a publié la description de ce qui serait plus tard connu
sous le nom de fréquence de Nyquist, le concept de base du théorème de Shannon.
Il est vrai que le télégraphe transmet des informations symboliques, du texte,
et non un signal analogique numérisé, mais avec l'apparition du téléphone et de la radio,
les technologies du signal analogique et numérique ont progressé rapidement en parallèle.
Le son a toujours été plus facile à manipuler en tant que signal analogique parce que, et bien, c'est vraiment bien plus facile.
Un filtre passe-bas du deuxième ordre, par exemple, requiert deux composants passifs.
Une centaine pour une transformée de Fourier en analogique.
Bon, peut-être mille si vous voulez faire quelque chose de compliqué.
Manipuler des signaux numériques requiert des millions, voire des milliards de transistors
fonctionnant à très haute fréquence, du matériel supplémentaire pour au moins numériser
et reconstruire les signaux analogiques, un système logiciel complet
pour programmer and contrôler ce géant d'un milliard de transistors,
de la mémoire de masse pour stocker ces bits pour usage ultérieur...
On en vient donc à la conclusion que l'analogique est la seule manière faisable de travailler avec le son...
à moins que vous n'ayez un milliard de transistors et autres accessoires traînant dans le coin.
Et comme maintenant on les a, manipuler des signaux numériques devient beaucoup plus attractif.
Une raison parmi d'autres: les composants analogiques n'ont pas la flexibilité d'un ordinateur.
Ajouter une nouvelle fonctionnalité à ce monstre...
Impensable.
Sur un processeur numérique, par contre...
...on peut juste écrire un nouveau programme. Le logiciel n'est pas trivial, mais c'est quand même beaucoup plus facile.
Peut-être même plus important encore, chaque composant analogique crée une approximation du signal.
Le transistor parfait n'existe pas plus qu'une inductance parfaite, ou une capacité parfaite.
En analogique, chaque composant ajoute du bruit, de la distorsion, et même si c'est peu à chaque pas, cela s'accumule.
Le simple fait d'envoyer un signal analogique, surtout sur de grandes distances,
corrompt ce signal, progressivement, de manière irréversible.
De plus, tous ces composants analogiques à usage unique prennent de la place.
Deux lignes de code sur le monstre au milliard de transistors
peuvent implémenter un filtre qui aurait besoin d'une inductance de la taille d'un réfrigérateur.
Un système numérique n'a pas ces problèmes.
Un signal numérique peut être stocké, copié, manipulé et transmis sans ajouter de bruit ou de distorsion.
Certes, on utilise parfois des algorithmes à perte, qui dégradent les données,
mais les seules opérations qui ne peuvent éviter d'être à perte sont la numérisation et la reconversion vers l'analogique,
là où le signal numérique doit s'interfacer avec l'analogique.
Toutefois, les systèmes de conversion modernes sont très, très bons.
En ce qui concerne nos oreilles, ils sont pour ainsi dire pratiquement parfaits.
Avec un peu de matériel supplémentaire, la plupart étant maintenant compact et peu cher
grâce à notre infrastructure industrielle moderne, le son numérique est le gagnant incontestable, comparé à l'analogique.
Examinons donc comment stocker, copier, manipuler, et transmettre ce signal.
La modulation d'impulsion codée (PCM) est la représentation la plus répandue pour le son.
D'autres représentation utiles existent, par exemple le code Sigma-Delta utilisé par SACD,
qui est un type de modulation par densité d'impulsion.
Cela dit, PCM est de très loin la plus répandue,
pour la principale raison qu'elle est mathématiquement très pratique.
Un ingénieur audio peut très bien ne jamais rencontrer une autre représentation durant toute sa carrière.
La représentation PCM peut être définie par trois paramètres,
ce qui permet de décrire chaque variante possible avec un minimum de problèmes.
Le premier paramètre est la fréquence d'échantillonage.
La plus haute fréquence qu'un code peut représenter est appelée la fréquence de Nyquist.
La fréquence de Nyquist de PCM n'est autre que la moitié de la fréquence d'échantillonage.
La fréquence d'échantillonage détermine donc la plus haute fréquence que le signal numérisé peut représenter.
Le téléphone analogique utilise traditionnellement des signaux limités en bande passante à presque 4 kHz,
menant le téléphone numérique et la plupart des applications manipulant la voix à utiliser une fréquence d'échantillonage de 8 kHz,
qui est la plus petite fréquence d'échantillonage pouvant représenter la totalité de la bande passante jusqu'à 4 kHz.
Une fréquence d'échantillonage de 8 kHz ressemble à ceci; un peu distordu, mais tout à fait compréhensible pour la voix.
C'est la plus petite fréquence d'échantillonage couramment utilisée en pratique.
Partant de là, au fur et à mesure que la puissance et la mémoire disponibles augmentèrent,
les ordinateurs sont passés à 11, puis 16, puis 22, et 32 kHz.
Avec chaque saut dans la fréquence d'échantillonage et la fréquence de Nyquist,
il va de soit que les hautes fréquences deviennent de plus en plus claires et le son plus naturel.
Le Compact Disc utilise une fréquence d'échantillonage de 44.1 kHz, encore plus élevée que 32 kHz,
mais les gains deviennent de moins en moins audibles.
44.1 kHz est un choix un peu étrange, surtout que nul ne l'avait utilisé
avant le Compact Disc, mais le succès du CD à fait de cette fréquence un choix commun.
La seconde fréquence haute fidélité la plus répandue autre que le CD est 48 kHz.
Il n'y a quasiment pas de différence audible entre les deux.
Cette vidéo, ou du moins la version originale de celle-ci, a été enregistrée et produite avec du son 48 kHz,
qui est le standard pour le son de haute fidélité accompagnant de la vidéo.
De très hautes fréquences d'échantillonage de 88, 96, et 192 kHz ont aussi été utilisées.
La raison pour ces fréquences au delà de 48 kHz n'est pas de permettre des fréquences audibles supérieures.
Il y a une autre raison.
Une parenthèse pour juste une seconde, le mathématicien Français Jean Baptiste Joseph Fourier
a montré que l'on peut représenter un signal tel que le son en une série de fréquences qui le composent.
Cette représentation dans le domaine fréquentiel est équivalente à la représentation dans le domaine temporel;
le signal est exactement le même, on le représente juste différemment.
Ici, on voit la représentation dans le domaine fréquentiel d'un signal analogique que l'on va numériser.
Le théorème de Shannon nous dit deux choses principales à ce propos:
Premièrement, un signal numérique ne peut représenter aucune fréquence au dessus de la fréquence de Nyquist.
Deuxièmement, et c'est la nouveauté, si ces fréquences ne sont pas filtrées à l'aide d'un filtre passe-bas avant la numérisation,
elles seront rabattues dans la gamme de fréquences représentable, résultant en de la distorsion de numérisation.
Un signal distordu, ça fait mal aux oreilles,
c'est pourquoi il est essentiel de filtrer les fréquences au dessus de la fréquence de Nyquist avant numérisation, et après reconstruction.
L'oreille humaine peut percevoir jusqu'à 20 kHz.
Pour une numérisation à 44.1 ou 48 kHz, le filtre passe-bas d'avant numérisation doit être très sec
pour éviter de couper des fréquences audibles sous 20 kHz
sans laisser passer de fréquence au dessus de la fréquence de Nyquist.
Ce type de filtre est difficile à construire, et aucun filtre commun n'y parvient complètement.
Pour une fréquence d'échantillonage de 96 or 192 kHz, par contre,
le filtre a un ou deux octaves de marge pour sa réponse, ce qui le rend beaucoup plus facile à construire.
Les fréquences d'échantillonage de plus de 48 kHz sont en fait l'un des compromis dus aux problèmes de conversion analogique/numérique.
Le deuxième paramètre fondamental de PCM est le format d'un échantillon, c'est-à-dire le format de la valeur enregistrée.
Un nombre est un nombre, mais il peut être représenté de différentes manières sous forme de bits.
Les premiers formats PCM étaient linéaires sur huit bits, codés sur un octet non signé.
La gamme dynamique est limitée à approximativement 50 dB, et le bruit de numérisation, comme vous pouvez l'entendre, est considérable.
Le son huit bit est maintenant très rare.
Le téléphone numérique peut utiliser deux formats proches non linéaires codés sur huit bits, appelés A-law et mu-law.
Ces formats peuvent coder à peu près 14 bits de gamme dynamique sur huit bits
en plaçant les valeurs les plus hautes de plus en plus écartées.
A-law et mu-law permettent un bruit de numérisation plus faible, comparés au huit bits linéaire,
et les harmoniques de la voix cachent bien le bruit restant.
Ces trois formats, linéaire, A-law, et mu-law, sont généralement utilisés
avec une fréquence d'échantillonage de 8 kHz, mais je les utilise ici à 48 kHz.
La plupart des formats PCM modernes utilisent des entiers en complément à deux sur 16 ou 24 bits signés
pour représenter une gamme de moins l'infini à zéro décibels.
La valeur la plus grande correspond à zéro décibels.
Comme dans tous les autres formats mentionnés jusqu'ici, un signal au delà de zéro décibels,
et donc au delà de la gamme représentable, sera saturé.
Pour mixer et finaliser, il n'est pas rare d'utiliser des nombres à virgule flottante, à la place d'entiers.
Le format à virgule flottante sur 32 bits IEEE 754 est un format typique sur les ordinateurs contemporains,
avec 24 bits de mantisse, et 7 bits d'exposant pour augmenter la gamme représentable.
Les nombres à virgule flottante représentent généralement zéro décibels avec +/-1.0,
et, comme ces nombres peuvent représenter des valeurs considérablement plus hautes,
il n'y a pas de distorsion si le signal passe temporairement au dessus de zéro décibels lors d'une opération.
Les nombres à virgule flottante requièrent plus de mémoire, ils sont donc généralement utilisés uniquement en tant que format intermédiaire.
Enfin, la plupart des ordinateurs manipulent les données avec une granularité de huit bits,
il est donc important de se rappeler que les échantillons de plus de huit bits
peuvent être stockés avec l'octet de poids fort en premier, ou en dernier, et les deux méthodes sont communes.
Par exemple, le format WAV de Microsoft commence par l'octet de poids faible, et le format AIFC d'Apple commence généralement par l'octet de poids fort.
Il faut ne pas l'oublier.
Le troisième paramètre de PCM est le nombre de pistes.
La convention pour le son PCM est de multiplexer les échantillons des différentes pistes,
pour former une seule piste de valeurs. Simple et facile à étendre.
C'est tout. Tout format PCM peut être décrit par cette représentation.
Voila, le son numérique est _si facile_!
Il y a d'autres choses à connaître, bien sûr, mais nous avons déjà un bloc de son numérique,
alors passons à la vidéo.
On peut penser à la vidéo comme du son, mais avec deux dimensions spatiales supplémentaires, X et Y,
en plus de la dimension du temps. C'est mathématiquement correct.
Le théorème de Shannon s'applique aux trois dimensions comme il s'applique à la dimension unique du temps pour le son.
Le son et l'image sont très différents en pratique. Par exemple, la vidéo prend beaucoup plus de place que le son.
Le son non compressé d'un CD prend en gros 1.4 megabits par seconde.
La vidéo non compressée au format 1080i monte à plus de 700 megabits par seconde,
soit plus de 500 fois plus de données à capturer, convertir, et stocker par seconde.
D'après la loi de Moore, ça fait... voyons... en gros doublant huit fois, multiplié par deux ans,
donc, les ordinateurs peuvent manipuler la vidéo à peu près une quinzaine d'années
après pouvoir manipuler le son, c'est à peu près ça.
Le format de la vidéo est aussi plus complexe que celui du son.
Le volume de données est tel que l'on doit utiliser une représentation
plus compacte que le PCM linéaire utilisé pour le son.
De plus, la vidéo numérique provient majoritairement de la diffusion de télévision,
et les comités de standards qui régissent la diffusion ont toujours été attentifs à la compatibilité.
Ne serait-ce que l'année dernière aux USA, une télévision noir et blanc vieille de soixante ans
pouvait encore recevoir et afficher la télévision hertzienne analogique.
C'est en fait pas mal du tout.
Le problème de cette compatibilité est que lorsqu'un détail est figé dans un standard,
on ne peut plus le changer.
La vidéo électronique n'a pas été réinventée plusieurs fois, comme le son l'a été.
Soixante ans de bagage s'est accumulé au fur et à mesure du temps, avec l'obsolescence de technologies successives,
et comme les standards de la vidéo numérique viennent de la télédiffusion,
tout ces anachronismes bizarres se sont retrouvés ajoutés dans les standards numériques.
Il y a en fait énormément plus de détails à prendre en compte dans la vidéo numérique qu'il n'y en a dans le son.
Beaucoup trop pour les aborder tous ici, donc on ne verra que les principes fondamentaux.
Les paramètres les plus évidents de la vidéo sont la largeur et hauteur de l'image en pixels.
Cela parait simple, mais cela ne suffit pas à spécifier la taille de l'image visible,
car la plupart de la vidéo provenant de la diffusion n'utilise pas des pixels carrés.
Le nombre de lignes dans une image était fixe,
mais le nombre de pixels dans une ligne était fonction de la bande passante.
La résolution réelle de ces images impliquait donc des pixels étant plus fins
ou plus épais que l'espace entre les lignes.
Les standards ont généralement spécifié que la vidéo numérique
doit refléter la résolution réelle de la source analogique originelle,
donc une grande partie de la vidéo numérique utilise aussi des pixels non carrés.
Par exemple, un DVD NTSC normal avec format d'image 4:3 est typiquement constitué
de 704 pixels sur 480, un format plus large que 4:3.
Dans ce cas particulier, les pixels ont un format de 10:11,
ce qui les rend plus hauts que larges, rendant l'image plus étroite, corrigeant le format.
Une telle image doit être re-numérisée pour s'afficher normalement sur un écran avec des pixels carrés.
Le deuxième paramètre de la vidéo est le nombre d'images par seconde.
Plusieurs standards existent de nos jours pour celui-ci. La vidéo numérique, dans une ou l'autre de ses formes,
peut utiliser n'importe lequel d'entre eux, ou n'importe quel nombre que l'on veut. Ou encore même un nombre variable,
où le nombre d'images par seconde change avec le temps.
Plus le nombre d'images par seconde est élevé, plus l'illusion du mouvement est bonne, et cela nous mène hélas à l'entrelacement.
Dans les premiers jours de la vidéo, les ingénieurs ont cherché à utiliser le plus d'images par seconde possible
pour une meilleure illusion de mouvement, et minimiser le scintillement produit par les écrans à tube cathodique.
Il travaillèrent avec le but de réduire autant que possible la bande passante utilisée
pour augmenter la résolution et le nombre d'images par seconde.
Leur solution fut d'entrelacer la vidéo, c'est-à-dire d'envoyer les lignes paires
en une première passe, et les lignes impaires à la suivante.
Chaque passe est appelée trame, et deux trames composent plus ou moins une image entière.
"Plus ou moins", car les lignes paires et impaires ne proviennent pas de la même image source.
Pour une vidéo à 60 trames par seconde, la source a réellement 60 images par seconde,
et la moitié de chaque image, une ligne sur deux, est tout simplement ignorée.
C'est pourquoi on ne peut pas dés-entrelacer une vidéo en recombinant deux trames en une image;
ces trames ne proviennent pas de la même image à la source.
Le tube cathodique était la seule technologie d'affichage pendant la plupart de l'histoire de la vidéo électronique.
Un écran à tube cathodique émet une luminance non linéaire, à peu près égale
à la tension reçue en entrée élevée à la puissance 2.5.
Cet exposant, 2.5, est appelé gamma, et il est souvent appelé le gamma d'un écran.
Les caméras, par contre, sont linéaires, et si on connecte le signal de sortie d'une caméra à un écran à tube cathodique, ça ressemble un peu à ça.
Comme les caméras étaient au début très rares, et extrêmement chères,
et qu'ils voulaient avoir un grand nombre de télévisions au plus bas prix possible,
les ingénieurs ont décidé d'ajouter le système de correction de gamma aux caméras, plutôt qu'aux télévisions.
La vidéo hertzienne a donc commencé à utiliser une intensité non linéaire, telle que
la télévision recevant le signal, étant non linéaire, redresserait ce signal
pour donner à l'affichage une luminance linéaire.
Presque.
Il y avait deux autres détails.
Une caméra de télévision utilise un gamma qui est l'inverse de 2.2, et non 2.5.
Cela est une correction pour regarder l'image dans un environnement sombre.
De plus, la courbe exponentielle devient graduellement linéaire près du noir.
C'était un vieux truc pour cacher les imperfections de la capture de l'image.
La correction de gamma apporte aussi un avantage inattendu.
L'oeil humain perçoit la luminance avec un gamma d'à peu près 3,
ce qui est relativement proche du 2.5 d'un écran à tube cathodique.
Une image utilisant la correction gamma a plus de résolution à faible luminance,
et c'est là que l'oeil est le plus sensible aux changements,
et donc bénéficie le plus d'une résolution meilleure.
Bien que les écrans à tube cathodique soient en train de disparaître, les écrans d'ordinateurs sRGB
continuent à utiliser une courbe de réponse non linéaire similaire à celle de la télévision, incluant la partie linéaire près du noir,
et une partie exponentielle avec un gamma de 2.4.
Cette courbe transforme une entrée linéaire de 16 bits en une sortie 8 bits.
L'oeil humain comprend des récepteurs pour trois couleurs: rouge, vert, et bleu,
et la plupart des écrans utilise ces trois couleurs en synthèse additive pour représenter une grande palette de couleurs affichables.
Les couleurs primaires en impression sont cyan, magenta, et jaune, pour les mêmes raisons;
ces couleurs sont soustractives, et chacune absorbe certaines longueurs d'onde de la lumière incidente.
Cyan absorbe le rouge, magenta absorbe le vert, et jaune absorbe le bleu.
La vidéo peut être, et l'est parfois, représentée en trois composantes, rouge, vert, et bleu (RGB),
mais ce format est atypique. L'oeil humain est beaucoup plus sensible à la luminance qu'à la couleur,
et le format RGB a tendance à diffuser l'énergie de l'image sur ces trois composantes.
C'est-à-dire, le plan rouge ressemble à une version rouge de l'image originale,
le plan vert ressemble à une version verte de l'image originale,
et le plan bleu ressemble à une version bleue de l'image originale.
Trois versions en noir et blanc. Pas très efficace.
Pour ces raisons, et aussi car la télévision était originalement aussi
en noir et blanc, la vidéo est normalement représentée par une composante de luminance à haute résolution,
correspondant à l'image en noir et blanc, et des composantes secondaires, souvent de moindre résolution, pour la couleur.
La composante de luminance, Y, est obtenue par un barycentre des signaux rouge, vert, et bleu.
Les composantes de chrominance U et V sont alors obtenues en soustrayant la luminance du bleu,
et la luminance du rouge.
Lorsque le signal YUV change d'échelle et est numérisé, on devrait techniquement parler de Y'CbCr,
mais le terme générique YUV est très souvent utilisé pour décrire
toutes les variations analogiques et numériques de cet espace colorimétrique.
Les composantes de chrominance U et V peuvent avoir la même résolution que la composante Y,
mais comme l'oeil humain est beaucoup moins sensible aux changements de couleur qu'aux changements de luminance sur de petits angles apparents,
les composantes de chrominance utilisent généralement une résolution d'un demi ou même d'un quart horizontalement, verticalement,
ou les deux, généralement sans changement significatif de la qualité perçue de l'image.
Quasiment toutes les variantes possibles de ce sous-échantillonage ont été utilisées à un moment ou à un autre,
mais les plus répandus de nos jours sont
4:4:4, où le taux d'échantillonage est en fait le même pour toutes les composantes,
4:2:2, où U et V ont une résolution moitié moindre horizontalement,
et, la plus commune, 4:2:0, où U et V ont une résolution moitié moindre horizontal et verticalement.
Cette dernière résulte en des plans pour U et V qui sont un quart de la taille du plan Y.
Les termes 4:2:2, 4:2:0, 4:1:1, etc, ne suffisent pas pour une description complète d'un format de sous-échantillonage particulier.
Les échantillons de chrominance peuvent être positionnés de plusieurs manières par rapport aux échantillons de luminance,
et, là encore, plusieurs variantes sont utilisées pour chaque format.
Par exemple, motion JPEG, MPEG-1, MPEG-2, DV, Theora et WebM utilisent tous
(ou peuvent utiliser) 4:2:0, mais ils placent les échantillons de trois manières différentes.
Motion JPEG, MPEG1, Theora et WebM placent les échantillons de chrominance
entre ceux de luminance, que ce soit horizontalement ou verticalement.
MPEG2 les place entre les lignes verticalement, mais alignés avec un pixel sur deux horizontalement.
L'entrelacement ajoute une complication supplémentaire, ce qui donne un système assez bizarre.
Finalement, PAL-DV, qui est toujours entrelacé, place les échantillons de chrominance
à la même position qu'un pixel de luminance sur deux horizontalement,
mais alterne les échantillons de U et V à chaque ligne.
C'est juste pour 4:2:0. Je vais laisser les autres formats comme exercice pour ceux qui veulent en savoir plus.
C'est l'idée de base. Passons à la suite.
Pour le son, les différentes pistes sont représentées en entrelaçant les échantillons
de chaque piste à leur tour, en ordre. La vidéo peut utiliser des formats entrelaçant les composantes,
mais aussi des formats qui gardent ces échantillons d'une même composante dans des plans séparés,
stockés les uns à la suite des autres pour chaque image. Il y a au moins une cinquantaine de formats dans ces deux catégories,
et peut-être dix ou quinze d'entre eux en usage commun. Chaque variante d'échantillonage de la chrominance, et chaque résolution d'échantillon
nécessite un arrangement de bits différent, et donc un arrangement de pixels différent. Pour chaque variante,
on peut trouver plusieurs formats équivalents, qui diffèrent en de simples ré-arrangements de l'ordre des données,
généralement dus à une quelconque idiosyncrasie d'un matériel particulier, un choix arbitraire,
ou juste pour faire quelque chose de différent.
Ces formats sont décrits par un label unique, ou code fourcc.
Il y a un grand nombre de ceux-ci, et non n'allons pas les énumérer.
Cherchez sur Internet pour plus d'information, mais gardez en mémoire qu'un code fourcc particulier définit l'arrangement des échantillons
et le taux d'échantillonage des plans, mais généralement n'indique pas où les échantillons sont placés, ni l'espace colorimétrique utilisé.
Par exemple, le code YV12 peut être utilisé avec le placement d'échantillon de JPEG, MPEG-2, ou DV,
et un quelconque espace colorimétrique YUV parmi plusieurs existant.
Et ceci termine nos premiers pas incomplets dans le monde de la vidéo.
Une bonne chose: avec ce que l'on a vu, on peut déjà commencer à travailler sur le son et l'image.
Dans la plupart des cas, une image de vidéo est juste une image de vidéo.
Les détails sont très importants, quand on commence à écrire du code,
mais pour le moment il est suffisant que vous ayez dans l'esprit une vue globale des problèmes dans ce domaine.
Donc. Du son numérique d'un côté. De l'image numérique de l'autre.
Ce qui reste à faire n'est pas spécifique au traitement de signal, mais de la programmation
tout à fait normale. Et il y en a plein!
Des morceaux de son ou d'image sont généralement des blocs opaques,
mais ils ont souvent une taille constante. On peut les concaténer
dans un ordre prédéterminé pour les transmettre et les stocker,
et c'est en fait ce que font certains systèmes simples.
Les données compressées, par contre, n'ont pas toujours la même taille,
et l'on a souvent besoin de plus de flexibilité pour les stocker et les transmettre.
Si on concatène ces blocs opaques les uns à la suite des autres, on ne sait plus où couper pour les récupérer,
et on ne peut plus reconnaître quelle portion des données vient du son ou de l'image.
Un système de stockage doit avoir une structure générale pour être utile.
En plus de nos données son/image, nous avons aussi les paramètres qui les décrivent.
Nous avons peut-être aussi d'autres informations sur ces données que nous voulons conserver,
comme des labels, chapitres vidéo, sous-titres, et autres.
Il parait idéal de pouvoir placer toutes ces méta-informations, c'est-à-dire informations sur les informations elles-mêmes, avec ces données.
Le stockage structuré de ces données et ces méta-informations disparates est le travail du conteneur.
Les conteneurs offrent une structure pour stocker les blocs opaques,
entrelacent et marquent les données pour garder trace de leur source,
maintiennent leur synchronisation, et stockent les méta-informations requises
pour récupérer, chercher, manipuler, et présenter les média.
En général, un conteneur quelconque peut stocker des données arbitraires.
Et des données arbitraires peuvent êtres stockées dans n'importe quel conteneur.
Dans cette demi heure, nous avons parlé de son numérique, de vidéo numérique,
nous avons vu un peu d'histoire, de mathématiques, et aussi de technologie.
Ce n'est que la surface, mais il est temps pour une pause bien méritée.
Il y a tellement d'autres choses à voir, alors j'espère que vous vous joindrez à moi de nouveau pour notre prochain épisode.
D'ici là, au revoir!