Mpeg2 Ts
Mpeg2 Ts
Mpeg2 Ts
DIPLME 2006 Etudiant : Sin CONDE Professeurs responsables : Bernard MORET, Ren BEUCHAT
Diplme 2006
Laboratoire de tlcommunications
2/43
Sin CONDE
Diplme 2006
I\ CONTEXTE
I-1\ INTRODUCTION
Le sujet principal et initial de ce projet tant la tlvision numrique par voie hertzienne, je vais tout dabord parler, dans les grandes lignes, des diffrentes normes tablit pour le DVB-T, puis prsenter la solution tudier pour extraire et analyser les informations du flux numrique terrestre. Hlas, pendant la ralisation du projet, jai rencontr diffrents problmes qui mont empch de mener terme le travail initialement propos. Je disposais de la maquette dun prcdent diplmant (Mr RAMAROSON) qui devait me permettre de rcuprer un flux numrique et de le dcoder afin dobtenir les informations ncessaires (dure du programme, format de la vido, langue du programme, type du programme), mais il ny avait aucun moyen de tester le circuit et de savoir si il fonctionnait, car je ne disposais pas de toute la documentation ncessaire au bon droulement du projet. Jai donc du trouver une solution alternative rapidement, car le temps pour terminer mon travail devenait restreint. Finalement, le projet consiste extraire des informations dun flux vido mais cette fois dans le domaine analogique. Jai donc ralis une maquette qui me permet de rcuprer un flux analogique, et pour que le travail soit plus intressant, jai dcid de le numriser afin de travailler en numrique. Linformation qui sera donc relev dans un premier temps, est le format vido transmis (16/9 ou 4/3) dans le signal en analysant les variations de tension de la vido.
Voici le cahier des charges de la solution alternative au projet initial : Rcupration du signal vido partir dune prise pritel. Dimensionnement dun filtre passe-bas actif (filtre anti-aliasing). Cration dun convertisseur analogique/numrique. Traitement et analyse des donnes laide dune FPGA afin de trouver le format de la vido (4/3 ou 16/9). Cration dun programme en langage VHDL.
Laboratoire de tlcommunications
FPGA
3/43
Sin CONDE
Diplme 2006
La tlvision est devenue aujourd'hui un lment important dans les foyers du monde, bien que certains pays n'aient pas accs cette technologie. L'arrive du numrique risque de changer nos mentalits et notre faon de regarder la tlvision. La diffusion de la tlvision par voie hertzienne rpond en Europe la norme DVB-T (Digital Video Broadcasting-Terrestrial). Un des principaux avantages de cette norme est quil ne demande pas un changement de matriel consquent. En effet un simple ajout dun dcodeur permet un tlviseur standard de rcuprer un signal numrique via une antenne VHF et UHF appel plus communment antenne rteau.
Une des diffrences de la TNT (Tlvision Numrique Terrestre), par rapport aux autres modes de transmission que sont le DVB-S (Digital Video Broadcasting-Satellite) et le DVB-C (Digital Video Broadcasting-Cable), est que le rcepteur est confront plusieurs signaux qui proviennent de diffrentes sources (le modem cble est reli lmetteur par un seul cble et lantenne de ladaptateur satellite ne pointe que sur un seul satellite la fois). La numrisation de la diffusion permet d'amliorer la rsistance du signal aux interfrences lors de la transmission. Ceci permet dobtenir une reconstruction de l'image et du son plus correcte la rception, et de multiplier le nombre de chanes : en effet, la rduction de dbit associe la technique du multiplexage statistique permet de faire passer jusqu' six (voir huit) chanes standard dans un mme canal en MPEG-2 (Moving Picture Experts Group version 2), qui est la norme dencodage qui a t choisi pour la TNT.
Laboratoire de tlcommunications
4/43
Sin CONDE
Diplme 2006
Le Dolby stro rduit le bruit et permet dobtenir deux ou trois voies sonores derrire l'cran, et une ou deux voies sonores d'ambiance (Cela dpend du type de Dolby utilis). 5/43 Sin CONDE
Laboratoire de tlcommunications
Diplme 2006 Le multiplexage MPEG-2, que je dtaillerais par la suite, autorise lajout dlments complmentaires lmission comme des sous-titres, comme sur un DVD vido. Tout comme ce dernier il y a aussi la possibilit dutiliser ce quon appel le Time Shifting (Pause retard) qui consiste, laide dun appareil adapt, de lancer lenregistrement dune mission puis la regarder avec un lger diffr alors que lmission est encore en cours de diffusion. Trs pratique, ce systme permet, par exemple, de suspendre une mission pour rpondre au tlphone puis de reprendre son cours en revenant en arrire l o on a dut sabsenter. Bien videmment un tel systme requiert un botier qui dispose dun espace de stockage consquent (2Go pour une heure denregistrement).
Rappel JPEG
Tout le monde connat le JPEG 2 , ce standard utilis pour compresser les photos prises par les appareils numriques. Ce standard, qui permet de faire tenir sur quelques mgaoctets une image qui en prendrait jusqu 16 fois plus, utilise une technique dite de compression avec perte. En effet, lors de la compression, lalgorithme cherche dcrire chaque point de limage en utilisant une matrice 8x8 256 niveaux de gris.
Le fichier de limage compress se rsume donc linformation des motifs lmentaires et linformation dusage de ces motifs pour recomposer limage. Si un motif est peu ou pas utilis dans limage, on limine son information du fichier. Si un motif est trs utilis, son information est mutualise et le poids de limage sen trouve allg. Le terme savant pour dcrire ce processus est llimination de la redondance spatiale dans limage. Tant que lon reste dans un seuil assez bas, limage garde sa finesse et ses couleurs, linformation limine ntant pas perue par lil. Si lon augmente graduellement ce seuil, on perd en dtails et en nuances de couleur, puis on dgrade tellement limage quelle nest plus reconnaissable. En rgle gnrale, on commence dgrader
2
Joint Photographic Experts Group. Norme de compression et de stockage utilise pour les images numriques fixes. 6/43 Sin CONDE
Laboratoire de tlcommunications
Diplme 2006 visiblement une image quand on dpasse un taux de compression de 8 pour 1, limage ne pse alors plus quun huitime de son poids original (soit 2 Mo pour une image de 8 Mo). Mais cette valeur peut varier dune image lautre en fonction de sa richesse en dtails et en couleurs. La compression JPEG permet datteindre des taux de compression trs levs. On peut donc ds lors imaginer compresser un film entier image par image, o chaque image serait compresse en JPEG. Cest du reste la mthode utilise par certaines anciennes cartes de compression vido. Elle est connue sous le nom de M-JPEG (Motion-JPEG ou JPEG en mouvement). Toutefois, avec cette mthode, le meilleur taux de compression atteint sans sacrifier la qualit est de 15 pour 1, c'est--dire un fichier 15 fois plus petit que loriginal. Ce taux nest pourtant pas suffisant. Avec un tel taux, pour enregistrer un film de 2 heures, il faudrait au moins 10 DVD. Le MPEG-2 prend en compte le fait que, dans une squence vido, de nombreuses images successives se ressemblent normment. Lalgorithme va alors sappuyer sur une image de rfrence dans la squence vido pour amliorer la compression des suivantes. On parle de rduction de la redondance temporelle des images. Le JPEG travaille partir 3 de motifs composs 8x8 pixels YUV . Mais en MPEG, ces blocs sont regroups en macro blocs de 16x16. Un film tant constitu dun ensemble dlments en mouvement, une mme image de rfrence ne peut pas tre utilise sur une intgralit du film, Lalgorithme dcompose donc le film en groupes dimages quon appel GOP (Group Of Picture). Chaque groupe dimages comporte une image de rfrence nomme Frame I ou image cl (I pour Intra Frame). Les images suivantes sont nommes image B et image P selon que leur contenu est dtermin seulement par rapport limage prcdente (P pour prdictif), ou limage prcdente et la suivante (B pour bidirectionnel). Une squence vido encode en MPEG-2 comprend classiquement des GOP de 15 images entre deux images cls I. Voici un exemple dune rpartition dans un GOP : [I-B-B-P-B-B-P-B-B-P-B-B-P-B-BI]. Plus clairement, cela veut dire que chaque image B dtermine son contenu en sappuyant sur celui de limage I qui la prcde et de limage P qui lui succde. Chaque image P du GOP dtermine son contenu partir de celui de limage I ou P qui la prcde.
Image I
Image P
Image P
Image P
Image B
Image B
Image B
Image B
Image B
Image B
Figure n 4 : Principe de reconstitution des images d'une squence MPEG-2 partir des images cls I et des images prdites P
Lalgorithme utilis fait une estimation de mouvement en allant chercher des parties dimage identiques ou presque, dj codes dans les images prcdant limage B ou P encoder. Au lieu de recoder cette partie, il fera alors uniquement rfrence ces lments dj existants. Les images B et P ne comportent donc que les bouts dimage
3
Le modle YUV dfinit un espace colorimtrique en trois composantes. Le premier reprsente la luminance et les deux autres reprsentent la chrominance. YUV est utilis dans les systmes de diffusion tlvisuelle PAL et NTSC. 7/43 Sin CONDE
Laboratoire de tlcommunications
Diplme 2006 ayant chang depuis la trame I prcdente, associs linformation permettant de retrouver les bouts communs stocks dans cette image de rfrence. Cette notion de GOP est trs importante pour la qualit de lencodage. Toute la magie du MPEG-2 est contenue dans ce concept qui regroupe diffrentes informations pour reconstituer un film de 25 images par seconde tout en ne codant quune infime partie de ces images. Au sein dun GOP, lencodeur MPEG-2 ne se contente pas de reprer les macro blocs identiques dune image lautre. Prenons lexemple type dun travelling de camra. Le dcor se dplace latralement, mais lessentiel de limage reste identique dune image lautre, elle est juste dcale par le mouvement de la camra. Le MPEG-2 associe donc un vecteur de dplacement chaque macro bloc. Cette norme dcrit de nombreux principes dencodage et de dcodage dune squence vido. Toutefois, elle ne fixe en rien la manire dy parvenir. Les diffrents diteurs de codecs se dmarquent donc par leur algorithme qui diffre de lun lautre. Celui qui aura les meilleurs algorithmes de dtection de mouvement ou de prdiction dimage fournira les meilleurs rsultats lencodage.
Ces deux normes, diffrentes dans lapplication utilise, ont en commun de multiplexer des flux lmentaires ES (Elementary Stream). Chacun des flux ES est dcoup en morceaux de tailles fixes ou variables, on parle alors de paquets PES (Packetized Elementary Stream). Parmi ces flux on trouve la vido, les diffrentes pistes audio (un flux ES par langue par exemple) ou les sous-titres. Ils intgrent, en plus des donnes quils vhiculent, des informations diverses relatives la correction derreur, au mode de dcodage si le flux est protg par cryptage, des codes de synchronisation Le MPEG-2 PS a t conu pour une transmission dans un environnement o le taux de perte et derreurs est trs faible. Ce qui est le cas pour un lecteur DVD mais pas pour une liaison satellite ou encore hertzienne dans lesquels lenvironnement peut tout moment perturber le signal reu. Le MPEG2-TS a donc t conu spcifiquement pour rpondre cette difficult. Dans un flux TS, les flux lmentaires ES sont dcoups en paquets de taille fixe. Les paquets des diffrents flux ES sont regroups en paquets de transport. Ainsi, si un paquet de transport est perdu ou brouill dans la transmission, les autres paquets de transport arriveront quand mme au rcepteur qui saura les interprter et en conserver la synchronisation. Une autre diffrence, entre ces deux types de flux, est la taille des paquets de donnes : un paquet TS a une taille de 188 octets, alors qu'un paquet PS peut voir une taille de 2048 octets.
Laboratoire de tlcommunications
8/43
Sin CONDE
Diplme 2006
Len-tte (header) identifie le paquet laide dun PID (Paquet Identifier) mais identifie galement le programme tlvis mis, c'est--dire le flux PES vhicul par le paquet TS.
Table_id x/y Section syntax indicator Section length Table_id extension Version number
Le couple PID/Table id caractrise la table. Indique si une erreur de syntaxe a t dtecte par un appareil en amont. Si c'est le cas, l'appareil qui lit ce paquet l'ignore. Longueur du paquet en octet. Caractrise la sous table. Indique le numro de version du paquet. A chaque modification du contenu du paquet, ce champ va tre incrment de 1(modulo 32). Si un terminal voit ce champ chang de valeur, il considre que le contenu du paquet a chang et il le lit nouveau. Indique si ce paquet doit tre pris en compte immdiatement ou sil est envoy en avance. Indique le numro du paquet. Indique le plus grand numro du paquet pour cette sous table. Permet au dcodeur de savoir combien de paquet pour une sous table donne, il doit recevoir. certains certains cas, cas, on on a a besoin besoin d'identifiant d'identifiant
Table id Extension Facultatif. Dans 2 supplmentaire. Table id Extension Facultatif. Dans 3 supplmentaire.
Un flux TS peut vhiculer une multitude de flux PES. Chaque flux PES a son PID associ. Cest ainsi que le dcodeur va pouvoir analyser le flux TS reu et sparer les diffrents flux PES en autant de chanes consulter.
Laboratoire de tlcommunications
9/43
Sin CONDE
Diplme 2006
La structure est simple et gnrique. DVB a rserv une plage de PID pour les transporter : 0 20. Une table est compose de sous table, qui peuvent elles mmes tre composes de section. La taille maximale d'une section est limite 1024 octets et doit tre transmise en claire. Seule exception, les sections de table EIT qui peuvent tre cryptes et avoir une taille maximale de 4096 octets. La fin d'une section comporte toujours un CRC calcul partir de cette section. Le terminal, en rception, le recalcule et le compare au CRC transmis pour juger de la validit de la section.
Laboratoire de tlcommunications
10/43
Sin CONDE
Diplme 2006
Chaque section (paquet) est compose dun en-tte puis de boucle contenant des descripteurs ou Tag (ou encore PID). Ces tags sont l'lment unitaire d'information. Comme son habitude, DVB dfinit des tables et tag publiques et laisse la possibilit de transporter des tables et tags privs dfinis pour des besoins particuliers de l'oprateur. Dans le principe, une table est lue une fois puis le terminal se contente de surveiller son numro de section. Si celui-ci change, il lit de nouveau la table. Les tables PSI (Program Specific Information) : La PAT (Program Association Table) donne la liste des programmes prsents. La PMT (Program Map Table) donne la composition d'un programme, les diffrents PID qui le constituent. La CAT (Conditional Access Table) donne la localisation des informations pour le dcodage des programmes cryptes. La NIT (Network Information Table) donne des informations de donnes prives comme les paramtres physiques du rseau (frquences, rpteurs...). Cette table est facultative.
Les tables PSI, normalises par MPEG permettent au dcodeur de retrouver le programme qui lintresse parmi les paquets du transport stream grce au PID. Il existe galement les tables SI (Service Information) qui sont normalises par DVB. Elles donnent des informations diverses de nature plus commerciale, sur le rseau, les programmes, les missions en cours et venir : La NIT (Network Information Table) donne les paramtres physiques du rseau. La SDT (Service Description Table) donne les donnes de service : nom, fournisseur... La EIT (Event Information Table) donne les informations sur les programmes en cours ou venir : dbut, titre... La TDT (Time and Data Table) donne la date et l'heure. La TOT (Time Offset Table) donne le dcalage horaire de la zone. La BAT (Bouquet Association Table) donne les noms et la liste des bouquets
Laboratoire de tlcommunications
11/43
Sin CONDE
Diplme 2006 offerts. La RST (Running Status Table) est utilis pour des changements rapides d'vnements. Les ST (Stuffing Table) qui sont des tables utilises pour invalider des tables qui ne sont plus jour.