Vous êtes sur la page 1sur 32

Communications

Multimedia
Systèmes, Réseaux et Services

Ahmed MEHAOUA
Professeur
Université de Paris 5 – René Descartes
Laboratoire CNRS PRISM
45, av. des Etats-Unis - 78035 Versailles
mea@math-info.univ-paris5.fr

Plan

1. Principes des Communications multimedia


2. Algorithmes et normes de compression Audio/Vidéo
3. Protocoles et architectures IP pour le multimédia
4. Service de téléphonie sur IP : Technologies, Produits

1
Bibliographie
• Internet, Multimédia et Temps réel,
Jean-François Susbielle, Eyrolles, 2001

• Qualité de service sur IP


Jean-louis Melin, Eyrolles, 2001

• Http://www.mpeg.org

Définition : le multimédia
• La “communication multimédia” est une communication faisant
appel simultanément à plusieurs “moyens” ou “média” pour faire
passer un message.

• Aujourd’hui, le terme multimédia est utilisé pour faire référence


“aux techniques de communication multimédia”.

• Objet Multimédia : Brique de base du multimédia.


– Leur caractéristique est de contenir l’information
• Analogique : Vidéo, Image, son, audio
• Numérique : Texte, image de synthèse, …
– Objet multimédia composite : vidéo, page web html, …

2
Chaîne d’exploitation

1. Capture ou saisie
2. Numérisation
3. Codage (JPEG, MPEG, H.26x, …)
4. Stockage (Serveur, DVD, format fichier, …)
5. Transmission (IP, ATM, LAN, sans-fil, …)
6. Chaîne de restitution

Technologies / Expertises
Multiples

3
Type de Communications
Multimédia sur IP
Distant Local

Conferencing
(1)
serveur
ming ng
trea ami Playback
e S tr e
Liv (2) d S (3) Local
man
-d e
On
Stockage Téléchargement
(4)

Classification des
Services multimédia

Interactivité (vision utilisateur) [ITU I.112]

‹ Conversationelle (visio / vidéoconférence)


‹ Téléchargement (Vidéo a la demande)
‹ Messagerie (Mail multimédia)

‹ Diffusion (TV, radio)

4
Type de Communications Multimédia sur IP

Conferencing

Type de Communications Multimédia sur IP

Broadcasting

10

5
Type de Communications Multimédia sur IP

Video on Demand

11

Streaming Vidéo sur IP


Producer Server
Encoder

.RM

Real
Networks Real Client
Networks

. WMV

Windows
Media
Windows
Media

.MOV

Apple
QuickTime .MP4

QuickTime

12

6
Multimédia Distant

• Problèmes :
– Synchronisation des médias / des systèmes
– Ressources de communication partagées chères
– Congestion : Contrôle des erreurs et des pertes

13

Optimisation des
communications
Multimédia
1. Numériser
2. Compresser
3. Multiplexer
• Coder à débit variable (qualité audio et vidéo)
• Transmettre à débits binaires variables (VBR)
• Utiliser un réseau à commutation de paquets
4. Routage multicast (Comm. de groupe)

14

7
Numérisation
- la clé du multimédia -

signal analogique échantillonnage

quantification signal digitalisé

15

Numérisation (2)
Voix Internet 3400 Hz 27 Kbps
Voix PCM 8000 Hz 64 Kbps
Audio FM 22.05 KHz -
Audio Nicam 32 KHz -
Audio CD 44.1 KHz 1441 Kbps
Audio DAT Studio 48/96 KHz > 7,6 Mbps
Vidéo TV Numérique 13.5 MHz 240 Mbps

Partage d'application 100 Kbps


Vidéoconférence 128 - 1024 Kbps
TV HD numérique 600 Mbps
Réalité virtuel > 100 Mbps

16

8
Traitement de la voix

Silent sup
CODEC

DSP
IP Voix

Numérisation Compression Encapsulation

17

Codage de la voix

.2

Longueur 125 .2
20 ms 2,5 ms 10 ms 30 ms
trame micros

18

9
Vidéo Numérique
• Objectif :
1. préserver la qualité lors de copies multiples
2. facilité le stockage, la manipulation et la transmission

• Principe : numériser chacun des signaux vidéo analogiques


(1) échantillonnner, (2) quantifier, (3) coder

• Echantillonnage de :
– axes h et v : donne la résolution spatiale
– axe t : donne la résolution temporelle
• Ratio d’aspect : 4/3 ou 16/9
• Quantification :
v – 13.5 Mhz et 6.75 Mhz (Vidéo)
– 32 Khz (Audio)
t • Codage de chaque pixel :
– donne la résolution chromatique (15-24 bits)
h
© Ahmed Mehaoua - 19

Les formats vidéo numériques


VideoConférence Video Disc

PARAMETER SQCIF QCIF CIF 4CIF 16CIF SIF NTSC SIF PAL/SECAM

Active Pixels/Ligne (L) 128 176 352 704 1408 352 352

Active Lines/Image (L) 96 144 288 576 1152 240 288

Color Format YCbCr YCbCr

Color subsampling 4:1:1 4:2:0 4:2:0

Color Resolution (bits per pixel) 8 8 8

Temporal Resolution 30 30 25

Raw bit rate (Mbit/s) 4.4 9.115 36.45 146.0 583.9 36.45 36.45

CIF : Common Intermediate Format


SIF : Standard Image Format

© Ahmed Mehaoua - 20

10
Les formats vidéo numériques (2)
HDTV TV numérique SDTV

PARAMETER SHD SMPTE 240M ITU-R BT.601 NTSC ITU-R BT.601


PAL/SECAM
Pixels/Line (L) >2048 1920 720 720

Lines/Image (L) >2048 1152 484 575

Color Subsampling 4:4:4 4:2:0 4:2:2 4:2:2

Color Format RGB YCbCr

Color Resolution (bpp) 24 24 16 16

Temporal resolution (fps) >60 30/60 30 25

Raw bit rate (Mbit/s) > 5700 506 166 166

DVD NTSC DVD PAL

© Ahmed Mehaoua - 21

Codage Vidéo
Normes de l’OSI MPEG et UIT

• Normes Video de 1ère génération


– JPEG et Motion JPEG
– H.261
– MPEG-1
• Normes Video de 2ème Génération
– H.263 (H.263+)
– MPEG-2/H.262
• Normes Video de 3ème Génération
– MPEG-4/H.264
– MPEG-7
– MPEG-21

22

11
Multiplexage des flux Vidéo
Codage/transmission en mode CBR ou VBR ?

Feedback CBR Téléphonie


Control Transmission sur RNIS
Encoder CBR
Encodeur VBR Buffer Video
VBR Téléphonie sur IP
Vidéo Flux Transmission

UNI CBR TV numérique


VBR Transmission
Buffer par ADSL
Video

VBR TV numérique
Transmission par Internet

Serveur/Encodeur User-Network réseaux


Interface

23

Débits Vidéo

24

12
Multicast Vidéo sur IP

25

Multicast IP
• Pour offrir un service de distribution multicast sur IP il faut :

1. Un adressage multipoint
z 224.0.0.0 à 239.255.255.255 (IPV4)
z ffxy::/64 (IPV6)
2. Un protocole d’annonce des sessions multicast
z SAP : Session announcement Protocol

3. Un protocole de gestion de groupes d’utilisateurs :


z MLD (Multicast Listener Discovery) pour IPv6
z IGMP (Internet Group Management Protocol) pour IPv4
4. Un protocole de routage multicast
z M-OSPF, PIM

26

13
Système visuel humain
La rétine est une mince couche tapissant le fond de l’œil et
constituée de 2 sortes de cellules disposées côte à côte:
rétine
– cellules à bâtonnet (vision nocturne)
• sensibles à l’intensité lumineuse
• nombreuses : 120 millions Axe optique
– cellules à cône (vision diurne)
• Peu sensibles à la luminosité nerf optique
• sensibles aux couleurs
• peu nombreuses : 6 millions
• se répartissant en trois populations en fonction du pigment qu'elles renferment;
• ont une réaction électrique maximale quand on les éclaire avec des radiations
bleue (435 nm), vert (547 nm) ou rouge (700 nm) ;
• L'existence de ces 3 types de pigments rend compte du caractère trichrome de
la vision humaine et justifie, a posteriori l’utilisation du modèle RVB/RGB.
Violet Bleu Vert Jaune Rouge

400 500 600 700 750

© Ahmed Mehaoua - 27

Système visuel humain (2)


• Les longueurs d'onde de la lumière
visible par l’œil sont comprises entre
400 (violet) et 750 (rouge) nm.
• Une image peut être représentée par
la superposition de 3 matrices de
valeurs d’intensité des couleurs RGB

lumière
Violet Bleu Vert Jaune Rouge

400 500 600 700 750


750

© Ahmed Mehaoua - 28

14
Représentation des couleurs
formats RGB vs YUV

R Y

Originale
G U

B V

29

Particularité du SAH
• Le système audio visuel humain (SAH) :

1. est plus sensible aux variation de luminosité qu’aux couleurs,


1. Choisir un format de représentation des couleurs optimisé (YUV)
2. ne peut distinguer que 4 millions de nuances de couleurs,
1. Sous échantillonner les signaux de couleurs
3. Requière un raffraichissement des images > 40 Hz
1. Utiliser la technique de l’entrelacement des images
2. Ou la technique du doublement de frequences
4. Ne perçoit pas les détails dans les zones peu lumineuse
5. Sensible aux basses fréquences et peu aux hautes fréquences
1. Représenter les pixels par des coefficients de fréquences
(transformé de Fourrier)
2. Appliquer ensuite un filtre numérique (La quantification)

© Ahmed Mehaoua - 30

15
Compression Vidéo
Pourquoi et Comment ?
Taille des fichiers vidéo numérique très important excède les
capacités de stockage et de communication :
Exemple pour 2 heures de TV numérique CCIR 601 :
- 149 Go de stockage requis
- 166 Mbp/s de bande passante
La solution est la compression des images par la :

1. Réduction de la résolution chromatique


2. Réduction de la taille de l’image
3. Réduction de la fréquence d’image
4. Eliminer les informations inutiles et/ou redondantes

31

Les algorithmes de Compression


• Redondances Spatiales (codage intra-image) :
– codages prédictifs (DPCM, ADPCM)
• Redondances temporelles (codage inter-image)
– estimation et compensation de mouvement
– codages prédictifs (DPCM, ADPCM)
• Redondances statistiques
– codage en entropie (Huffman, arithmétique)
• Redondances psycho-visuelle
– Sous échantillonage des couleurs
– transformation (DCT, FFT)
– quantification

32

16
Technologies Propriétaires

Formats très répandus pour les PC / MAC et sur Internet :


- Sorenson QuickTime (Apple) -> QT 5.0 compatible vidéo MPEG-4
- Indéo (Intel)
- CinéPack (Cinépack)
- RealVideo (Real Networks) -> RealVideo G2 compat. H.263
- Windows Media (Microsoft)
- VP (On2 Technologie)

Problème : non compatibles entre eux - besoin de pré-télécharger


chacun des décodeurs/player – évolutivité - interfaçage.

© Ahmed Mehaoua - 33

3 modes de compression d’image


- Groupe d’Images MPEG -
1. I : Image codée Intra
2. P : Image codée Prédictivement par rapport à une autre image
3. B : Image Codée prédictivement en fonction de 2 autres images
Groupe d'images (GOP) (N = 12, M = 3)

I B B P B B P B B P B B I

34

17
Structure des flux vidéo numérique

Une Séquence vidéo = i groupes d'images


Groupe d'images (GOP) Groupe d'images (GOP)
= k images = k images

.... ....

1 bande q pixels
= p macroblocs

r pixels
1 Bloc
= q x r pixels
q = r = {4, 8, 16}
1 Image
1 Macrobloc
= m bandes
= 4 blocs
= n blocs de pixels

© Ahmed Mehaoua - 35

Propagation des Erreurs


entre IMAGES
3
5

1 6

36

18
Propagation des Erreurs
dans une image

37

Image I : codage spatial


Type JPEG

38

19
Image P : codage temporel
Type MPEG/H.26x
• La redondance temporelle peut être exploitée par inter-codage, en
transmettant uniquement les différences entre images successives.
• La figure suivante montre que des images complètes sont transmises
périodiquement. Elles sont appelées images de références ou « intra-
codées » (images I), et elles sont uniquement obtenues par compression
spatiale.
– S’il se produit une erreur ou si un changement de scène intervient, on
retrouve un décodage correct à l’image I suivante.

39

Image P :
Codage Predictif + codage spatial
Image courante

Predicted
Frame
Image résiduelle

Difference
Image Référence

Key Frame
meilleure
concordance
+
Vecteur de
mouvement
Vecteur de
mouvement
Pour
chaque
Quantification DCT
Bloc

Zig-Zag
Scan
DC

RLE . . . 10110010111
Huffman

AC

Codage 40
Entropique

20
Estimation de Mouvement
nc e nte
é re ura
Ré f Co
ge ge
Im a Ima

Zone de
recherche

MV Meilleure
concordance
MH

Macroblocs

Mean Squared Error (MSE) :

∑ ∑( X )
M N 2
1
M1 (i , j ) = m, n − X mR+ i , n + j avec i ≤ m2 , j ≤ n1
MN m= 1 n =1

41

Erreur de l’estimation de
mouvement

Image résiduelle

42

21
Transformation DCT

132 136 138 140 144 145 147 155 172 -18 15 -8 23 -9 -14 19

136 140 140 147 140 148 155 156 21 -34 24 -8 -10 11 14 7

140 143 144 148 150 152 154 155 -9 -8 -4 6 -5 4 3 -1

144 144 146 145 149 150 153 160 -10 6 -5 4 -4 4 2 1


DCT
150 152 155 156 150 145 144 140 -8 -2 -3 5 -3 3 4 6

144 145 146 148 143 158 150 140 4 -2 -4 6 -4 4 2 -1

150 156 157 156 140 146 156 145 4 -3 -4 5 6 3 1 1

148 145 146 148 156 160 140 145 0 -8 -4 3 2 1 4 0

Basses Fréquences
Moyennes Fréquences
Hautes Fréquences

43

DCT
1 coef. DCT
par bloc
(AC)

3 coef. DCT
par bloc
(AC + 2 DC)

6 coef.
par bloc
(AC + 5 DC)

64 coef. DCT
par bloc
(AC + 63 DC)

44

22
Quantification (suite)

45

Run Length Encoding


• Les flux vidéo contiennent très souvent des groupes ou blocs de pixels
qui possèdent la même valeur, par exemple dans des zones uniformes
de l’image. RLE se propose de remplacer chacun de ces blocs par une
valeur unique de pixel (jeton) associée au nombre de fois que cette
valeur apparaît (run-length).
• Ce couple de nombres (valeur, nombre de répétitions) ou (jeton, run-
length) est séparé par un drapeau qui ne fait pas partie intégrante du flux
vidéo. Par exemple le codage de la séquence de pixels
‘555555999222222220000077711’ pourra être remplacé par la paire de
valeurs ‘(5,6) (9,3) (2,8) (0,5) (7,3) 11 qui ne requière plus que 12
nombres plutôt que 27 et le flux binaire sera alors représenté par ‘5!6
999 2!8 0!5 777 11’ soit 17 mots au lieu de 27.
• On constate avec cet exemple que le codage ne s’applique qu’aux
valeurs apparaissant plus de trois fois consécutivement.

46

23
Codage de Huffman
• Codage de Huffman a la propriété d'être optimal car il donne la plus petite
moyenne de longueur de code de toutes les techniques de codage statistique
• Par exemple la séquence d’entiers soumise à un codage de Huffman générera la
suite binaire qui minimise la hauteur moyenne de l'arbre Σi=0n-1 pini.
Code intiale : ‘88888888811115555555555999999997755000’
Résultat dérivé de l’arbre binaire et de la table de VLC ci-dessous : ‘01 01 01 01
01 01 01 01 01 110 110 110 110 110 00 00 00 00 00 00 00 00 00 00 10 10 10 10
10 10 10 10 1110 1110 00 00 1111 1111 1111’
• La taille des données passe ainsi de 152 bits à 90 bits avec un codage effectué
sur 4 bits max, soit un gain de 59 %.
0 1 Valeur entière Code binaire
7 2
0 3
1 5 00
0 1 0
1 4 1 8 01
0 9 10
9 8 5 8 9
8 9 1 0 1 1 110
5 12 0 1111
0 7
7 1110

47

OSI MPEG-2
- Multiplexage Audio/Vidéo -
PES
PROGRAM
ES STREAM
Vidéo Multiplexeur (paquets de
Codeur
vidéo
Paquétiseur Program longueur DVD
Stream variable, base
de temps
commune)

Horloge

TRANSPORT
STREAM
Audio Multiplexeur (paquets de
Codeur
Audio
Paquétiseur Transport
Stream
longueur fixe, DVB
pas de base
ES de temps
commune)
PES

48

24
MPEG-2 DVB
- Digital Video Broadcast -

Consortium de 220 membres de 30 pays établit en


Sept. 1993 sous l’egide de l’ETSI/ISO pour normaliser
la diffusion de la vidéo MPEG-2 numérique :
– par câble DVB-C
– par voix hertzienne DVB-T
– par satellite DVB-S
– Interactive DVB-I
– Multipoint (MMDS - < 10Ghz) DVB-MS

Avec préservation des fonctions des systèmes analogiques


existants (Teletexte, brouillage, accès conditionnel, …)

49

MPEG-4
Introduction
Norme multimédia développée par l’ISO (14496) et
intégrant les technologies de 3 secteurs :
1. La TV numérique (compression audio/vidéo naturelle)
2. Les applications graphiques 2D/3D (synthèse d’images)
3. Le Web (interactivité, accès, transmission)

Objectif et Historique :
– En 1993 : norme de codage audiovidéo à très bas débits
– En 1994 : norme multimédia pour codage audio/vidéo par
objet
– MPEG4 Version 1 - disponible depuis fin 1999

50

25
MPEG-4 partie 2 :
les implémentations
1. Microsoft MPEG-4 Windows Media 8. Envivio (BIFS)
Format 7 9. Packet Video (Mobile solutions)
2. Divx 3.11 10. Sigma Designs et iVast (DSP Cable -
3. OpenDivX STB)
4. DivX 4/5 11. Dicas
5. Xvid (open source) 12. Sorenson (meilleure implémentation
6. 3ivX (mobile solutions) logicielle à ce jour)
7. Apple MPEG-4 - QuickTime 6 13. Philips & TI (Soft & Hard)
14. STMicroelectronics (Chip Nomadik
codec H.263/MPEG4 ASP pour
Telephone portable - Janv. 2003)

1. Windows Media 9 3. On2 VP7


2. Real Media 10 4. ACT-L2

51

Qualité Vidéo
Analogique vs Numérique

52

26
Mesure de la Qualité Vidéo :
PSNR
Soit une séquence vidéo de K images et de résolution spatiale MxN
• PSNR : Peak To Signal Noise Ratio
• RMSE : Root Mean Square Error

K N M
∑ ∑ ∑ [x(i, j ,k ) − xˆ (i, j , k )]2
1
RMSE =
N ⋅M ⋅ K k =1i =1 j =1

255
PSNR = 20 ⋅ log10
RMSE

53

Mesure PSNR : inconvénient

PSNRA = 37 dB PSNRB = 37 dB

54

27
Comparaison
MPEG2 / MPEG-4 / H.263 / H.264
Séquence Tempête CIF 30Hz
38
37
36
35
34
33
Qualité 32
Y-PSNR [dB] 31
30
29 JVT/H.264/AVC
28
MPEG-4
27
MPEG-2
26
H.263
25

0 500 1000 1500 2000 2500 3000 3500


Débit binaire [kbit/s]

55

Synchronisation
Multimédia
1. Synchronisation à l’affichage ou “Playout” :
– Jouer le signal généré à l’instant “t”, à l’instant “t+∆t” en tenant
compte de la variation du délai de transmission et des contraintes
temporelles du processus de codage
2. Synchronisation Inter-Média
– Entre l’audio et la vidéo (Lip sync)
3. Synchronisation Intra-Média
– Tous les récepteurs doivent jouer en même temps (simulations, jeux)

-> S. Playout est toujours requis pour les médias continus.


-> S. Intra- et S. Inter peuvent être optionnelles

56

28
Application
level
Contrôleur
de dé
débits
Transport de flux
codeur codeur Moniteur
vidéo sur IP
Vidéo audio de la QoS

Couche RTP RTCP


Contrôle des erreurs / débits

Couche UDP Transport synchronisation


level

Packet
scheduler
Couche IP

Network IGMP
level multicast
Flux entrants Flux sortants

57

RTP/RTCP : principes
• Qu’est ce que c’est ?
RTP (Real-time Transport Protocol) est un protocole de transport de flux
temps-réel en mode multicast ou unicast :
– Conférence audio, vidéo interactive, diffusion vidéo, audio
Indépendant des couches réseaux mais habituellement implémenté au
dessus de UDP/IP.
Fortement couplé aux applications qu’il transporte : notion de PROFIL
Combiné a un protocole de signalisation de la qualité des transmissions
RTCP (Real-time Transport Control Protocol) pour la mesure des
performances et le contrôle de la session en cours,

• Qui l’a développé ?


IETF (RFC 1889 puis RFC 3550 depuis juillet 2003)

58

29
RTP/RTCP : principes
• A quoi sert RTP ?
– Segmentation / Réassemblage des données
– Synchronisation des flux
– Indication du type de données
– Identification de l’emetteur
l’emetteur (communication multipoint)
– Détection des pertes
– Sécurisation des échanges (cryptage)

• A quoi sert RTCP ?


– Fournir périodiquement des rapports sur la qualité des échanges entre
récepteurs et émetteur
• Downlink : données envoyé, estampilles de temps
• Uplink : pertes, délais, gigue
– Garder une trace de tous les participants à une session
• CNAME (Canonical Name)
Name) : identifiant unique et permanent pour un
participant
• SSRC (Synchronisation Source Identifier)

59

2 – Transport IP

RTP – Encapsulation

20 20 8 12 6
En-tête En-tête En-tête En-tête Données Fin
ETHERNET IP UDP RTP VOIX ou VIDEO ETHERNET

60

30
Paquets RTP

Ptype
0 PCM µ-Law
8 PCM A-law
9 G.722
4 G.723
15 G.728
V : version RTP 18 G.729
P : padding 31 H.261
X : en tête suivi d’une extension 34 H.263
CC : Nbre de source inclus dans le paquet RTP 94 MP4V
M: marqueur (fin d’image par exemple) 96 MP4A

61

RTSP : principes
• RFC 2326
• N° Port 554 (TCP ou UDP)
• RTSP, est un protocole de niveau Session pour visualiser en
continu des flux multimédia à partir d’un serveur distant.
• Il offre un contrôle sur les flux audio et vidéo reçus en simulant les
fonctions d’un magnétoscope tels que : pause, avance rapide, retour
rapide, et accès direct.
• Les séquences peuvent être pré-enregistrées ou « Live ».
• RTSP est conçu pour fonctionner avec des protocoles tel que RTP,
RSVP pour fournir un service « streaming » sur IP.
• Il permet de sélectionner le mode de transport (UDP, multicast UDP
ou TCP) et les fonctions de RTP.
• Il supporte le multicast dense et l’unicast.

62

31
RTSP : Setup
DESCRIBE

SETUP

PLAY
Client Serveur
RTP Audio/Vidéo
RTSP RTSP
RTCP

PAUSE

TEARDOWN

63

Communication Multimédia
sur IP : Conclusion

1. Optimisation des ressources de communications


• Compression – Multiplexage – Routage multicast
2. Synchronisation
• Niveau applicatif (RTP / RTSP) et/ou niveau Réseau ?
3. Contrôle des erreurs et des pertes
• Niveau applicatif (RTCP, FEC) et/ou niveau Réseau (MPLS,
DiffServ, IntServ)

64

32

Vous aimerez peut-être aussi