H.264

H. 264, ou MPEG-4 AVC, est une norme de codage vidéo développée conjointement par l'UIT-T Q. 6/SG16 Video Coding Experts Group mais aussi l'ISO / CEI Moving Picture Experts Group et est le produit d'un effort de partenariat connu sous le nom Joint Video Team.



Catégories :

Recommandation de l'UIT-T - Norme ISO - Format fermé pour cause de brevet - MPEG

H. 264, ou MPEG-4 AVC (Advanced Video Coding), est une norme de codage vidéo développée conjointement par l'UIT-T Q. 6/SG16 Video Coding Experts Group (VCEG) mais aussi l'ISO/CEI Moving Picture Experts Group (MPEG) et est le produit d'un effort de partenariat connu sous le nom Joint Video Team (JVT). La norme UIT-T H. 264 et la norme ISO/CEI MPEG-4 Part 10 (ISO/CEI 14496-10) sont techniquement semblables, et la technologie employée est aussi connue sous le nom AVC, pour Advanced Video Coding. La première version de la norme a été acceptée en mai 2003 et la plus récente date de mars 2005.

Le JVT travaille aujourd'hui sur le concept de scalabilité en élaborant une extension à la norme H. 264, il s'agit des spécifications Scalable Video Coding (SVC).

Historique

Le nom H. 264 provient de la famille de normes vidéo H. 26x définies par l'UIT-T. Cependant, ce codec a été développé dans le cadre du MPEG, l'UIT-T se contentant de l'adopter ensuite et de l'éditer en son sein. Dans le cadre du MPEG, le sigle AVC (Advanced Video Coding) fut choisi par ressemblance avec le codec audio AAC MPEG-2 part 7 qui avait été appelé ainsi pour le différencier du codec audio MPEG-2 part 3 (le fameux MP3). La norme est généralement nommée H. 264/AVC (ou AVC/H. 264, H. 264/MPEG-4 AVC ou MPEG-4/H. 264 AVC) pour souligner l'héritage commun. Le nom H. 26L, rappelant son lien avec l'UIT-T est nettement moins commun mais toujours utilisé. De temps à autre, il est aussi nommé «le codec JVT», en référence à l'organisation JVT (Joint Video Team) qui l'a développé. Il existe un précédent dans l'élaboration d'une norme de codage vidéo commune entre le MPEG et l'UIT-T avec MPEG-2 et H. 262 qui sont semblables.

Objectifs et applications

Au départ, l'UIT-T lança le projet H. 26L en 1998 dans l'objectif de créer une nouvelle architecture de codec ayant pour but un gain en efficacité de codage d'un rapport au moins égal à 2 comparé aux standards existants (MPEG-2, H. 263 et MPEG-4 Part 2). Un autre but était de créer une interface simple pour pouvoir adapter le codec aux divers protocoles de transport (commutation de paquets et de circuits). Le codec a été développé en s'assurant qu'il serait transposable sur plate-formes à un coût raisonnable, c'est-à-dire en tenant compte des progrès réalisés par l'industrie des semi-conducteurs en matière de design et des procédés.

En 2001, le projet H. 26L avait atteint ses objectifs en taux de compression comme le démontrèrent des tests subjectifs réalisés par… MPEG. C'est à ce moment que l'UIT-T et MPEG décidèrent d'un commun accord de créer le Joint Video Team (JVT) dans l'objectif de standardiser le codec ensemble et de l'adapter aux divers besoins de l'industrie (vidéophonie, streaming, télévision, mobile). En effet, les applications habituellement visées par l'UIT-T concernent les bas débits (vidéophonie, mobile), applications pour lesquelles H. 26L était optimisé, tandis que les membres de MPEG désiraient l'adapter à d'autres formats (télévision, HD). Des outils algorithmiques comme le support de l'entrelacé ont été ajoutés et une réduction de la complexité a été accomplie.

Le codec H. 264/AVC est par conséquent adapté à une très grande variété de réseaux et de dispositifs (par exemple, pour la diffusion de la télévision, le stockage HD DVD et Blu-ray, le streaming RTP/IP, et des dispositifs de téléphonie propre à l'UIT-T).

À la suite de la première version de la norme, le JVT a développé quelques extensions, connues sous le nom Fidelity Range Extensions (FRExt). Ces extensions ont pour but de prendre en charge une précision de quantification accrue (ajout des codages 10-bit et 12-bit) et une meilleure définition de la chrominance (ajout des structures de quantification YUV 4 :2 :2 et YUV 4 :4 :4) et visent des applications professionnelles (Studio). Plusieurs autres fonctionnalités ont aussi été adoptées pour perfectionner la qualité subjective en haute définition (ajout d'une transformée 8×8 en plus de la transformée 4×4 existante, ajout de matrices de quantification) ou pour des besoins spécifiques (codage sans perte, support d'autres espaces de couleurs). Le travail de conception sur les Fidelity Range Extensions a été finalisé en juillet 2004, et figé en septembre 2004.

Depuis la fin du développement de la version originale de la norme en mai 2003, le JVT a fait publier 4 versions acceptés par l'UIT-T et MPEG, correspondant à l'ajout de FRExt ainsi qu'à des corrections.

Caractéristiques détaillées

H. 264/AVC (MPEG-4 Part 10) comprend de nombreuses techniques nouvelles qui lui permettent de compresser bien plus efficacement les vidéos que les normes précédentes (H. 261, MPEG-1, MPEG-2, MPEG-4 Part 2/ASP) et apporte plus de flexibilité aux applications dans la plupart d'environnements réseau. Ces fonctionnalités principales comprennent :

Ces techniques, mais aussi plusieurs autres, aident H. 264 à dépasser significativement les standards qui ont précédé, dans une grande variété de circonstances et dans une grande variété d'environnements d'application. H. 264 peut fonctionner fréquemment nettement mieux que la vidéo MPEG-2 en obtenant la même qualité avec un bitrate diminué de moitié, ou alors plus.

Comme de nombreuses autres normes vidéo du groupe ISO/CEI MPEG, le H. 264/AVC dispose d'une application logicielle de référence, qui peut être gratuitement téléchargée (voir la section Liens externes ci-dessous).

Le principal objectif de cette application est de donner des exemples des différentes possibilités du H. 264/AVC, plutôt que d'apporter un produit réellement utilisable et performant.

Une application matérielle de référence est aussi en cours de normalisation par le groupe MPEG.

Profils

Le standard inclut les 6 ensembles de caractéristiques suivants, qui sont nommés des profils, chacun ciblant une classe d'applications précise :

Baseline Extended Main High High 10 High 4 :2 :2 High 4 :4 :4
tranches I et P Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui
tranches B Non Non Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui
tranches SI et SP Non Non Yes check.svg Oui Non Non Non Non Non Non Non Non Non Non
Image de Références Multiples Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui
Filtre anti-blocs Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui
codage CAVLC Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui
codage CABAC Non Non Non Non Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui
ordonnancement flexible des macroblocs (FMO) Yes check.svg Oui Yes check.svg Oui Non Non Non Non Non Non Non Non Non Non
ordonnancement arbitraire des tranches (ASO) Yes check.svg Oui Yes check.svg Oui Non Non Non Non Non Non Non Non Non Non
tranches redondantes (RS) Yes check.svg Oui Yes check.svg Oui Non Non Non Non Non Non Non Non Non Non
partitionnement des données (DP) Non Non Yes check.svg Oui Non Non Non Non Non Non Non Non Non Non
codage entrelacé (PicAFF, MBAFF) Non Non Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui
format 4 :2 :0 Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui
format monochrome (4 :0 :0) Non Non Non Non Non Non Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui
format 4 :2 :2 Non Non Non Non Non Non Non Non Non Non Yes check.svg Oui Yes check.svg Oui
format 4 :4 :4 Non Non Non Non Non Non Non Non Non Non Non Non Yes check.svg Oui
pixel 8 Bit Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui
pixel 9 et 10 Bit Non Non Non Non Non Non Non Non Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui
pixel 11 et 12 Bit Non Non Non Non Non Non Non Non Non Non Non Non Yes check.svg Oui
transformée 8×8 Non Non Non Non Non Non Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui
matrices de quantification Non Non Non Non Non Non Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui
quantification Cb et Cr scindée Non Non Non Non Non Non Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui Yes check.svg Oui
codage sans-perte Non Non Non Non Non Non Non Non Non Non Non Non Yes check.svg Oui
Baseline Extended Main High High 10 High 4 :2 :2 High 4 :4 :4

Levels

Les niveaux ( (en) levels) sont des limitations sur un certain nombre de paramètres qui permettent aux décodeurs de limiter les ressources mémoires et calculatoires nécessaires pour décoder une vidéo.

Note : un macrobloc est une zone de 16×16 pixels.

Numéro de level macroblocs par seconde maximum taille maximum de l'image en macroblocs débit en bit maximum pour les profiles Baseline, Extended et Main Profile débit en bit maximum pour le profile High débit en bit maximum pour le profile High 10 débit en bit maximum pour les profiles High 4 :2 :2 et 4 :4 :4 exemple de définition et image par seconde dans ce level.
1 1485 99 64 kbit/s 80 kbit/s 192 kbit/s 256 kbit/s 128×96/30.9
176×144/15.0
1b 1485 99 128 kbit/s 160 kbit/s 384 kbit/s 512 kbit/s 128×96/30.9
176×144/15.0
1.1 3000 396 192 kbit/s 240 kbit/s 576 kbit/s 768 kbit/s 176×144/30.3
320×240/10.0
1.2 6000 396 384 kbit/s 480 kbit/s 1152 kbit/s 1536 kbit/s 176×144/60.6
320×240/20.0
352×288/15.2
1.3 11880 396 768 kbit/s 960 kbit/s 2304 kbit/s 3072 kbit/s 352×288/30.0
2 11880 396 2 Mbit/s 2.5 Mbit/s 6 Mbit/s 8 Mbit/s 352×288/30.0
2.1 19800 792 4 Mbit/s 5 Mbit/s 12 Mbit/s 16 Mbit/s 352×480/30.0
352×576/25.0
2.2 20250 1620 4 Mbit/s 5 Mbit/s 12 Mbit/s 16 Mbit/s 720×480/15.0
352×576/25.6
3 40500 1620 10 Mbit/s 12.5 Mbit/s 30 Mbit/s 40 Mbit/s 720×480/30.0
720×576/25.0
3.1 108000 3600 14 Mbit/s 17.5 Mbit/s 42 Mbit/s 56 Mbit/s 1280×720/30.0
720×576/66.7
3.2 216000 5120 20 Mbit/s 25 Mbit/s 60 Mbit/s 80 Mbit/s 1280×720/60.0
4 245760 8192 20 Mbit/s 25 Mbit/s 60 Mbit/s 80 Mbit/s 1920×1080/30.1
2048×1024/30.0
4.1 245760 8192 50 Mbit/s 62.5 Mbit/s 150 Mbit/s 200 Mbit/s 1920×1080/30.1
2048×1024/30.0
4.2 522240 8704 50 Mbit/s 62.5 Mbit/s 150 Mbit/s 200 Mbit/s 1920×1080/64.0
2048×1088/60.0
5 589824 22080 135 Mbit/s 168.75 Mbit/s 405 Mbit/s 540 Mbit/s 1920×1080/72.3
2560×1920/30.7
5.1 983040 36864 240 Mbit/s 300 Mbit/s 720 Mbit/s 960 Mbit/s 1920×1080/120.5
4096×2048/30.0
Numéro de level macroblocs par seconde maximum taille maximum de l'image en macroblocs débit maximum pour les profils Baseline, Extended et Main Profile débit maximum pour le profil High débit maximum pour le profil High 10 débit maximum pour les profils High 4 :2 :2 et 4 :4 :4 exemple de définition et images par seconde dans ce level.

Brevets

Comme pour les formats MPEG-2 Parts 1 et 2 mais aussi MPEG-4 Part 2, les revendeurs de produits et services utilisant la norme H. 264/AVC doivent payer des droits pour l'utilisation d'une technologie brevetée. Le principal bénéficiaire de ces droits concernant cette norme est une organisation privée : MPEG-LA, LLC (qui n'est totalement pas affiliée avec la "MPEG standardization organization", mais qui gère aussi des brevets pour des dispositifs utilisant MPEG-2 Part 1, des vidéos MPEG-2 Part 2 et MPEG-4 Part 2 mais aussi d'autres technologies).

Le fait de savoir si ces licences sont nécessaires pour une implémentation logicielle en Europe fait l'objet d'une controverse.

Applications

Les deux principaux candidats incluent le "H. 264/AVC High Profile" comme caractéristique obligatoire des lecteurs avec surtout :

En Europe, l'organisation de standardisation Digital Video Broadcast (DVB) a accepté le H. 264/AVC pour la diffusion de la télévision en Europe à la fin 2004.

Le premier ministre français a annoncé que le H. 264/AVC était obligatoire dans les récepteurs HD TV et pour les chaînes payantes de la télévision numérique terrestre (TNT) en France, fin 2004.

L'organisation de standardisation Advanced Television Systems Committee (ATSC) aux États-Unis est en train d'envisager l'utilisation de la norme H. 264/AVC pour la télévision diffusée aux États-Unis.

Le service Digital Multimedia Broadcast (DMB) - équivalent à la TNT européenne - prévu pour être diffusé en République de Corée utilisera le format H. 264/AVC.

Les opérateurs de diffusion terrestre mobile au Japon utiliseront le codec H. 264/AVC, dont :

  • NHK
  • Tokyo Broadcasting System (TBS)
  • Nippon Television (NTV)
  • TV Asahi
  • Fuji TV
  • TV Tokyo

Les services de TV Direct broadcast satellite (diffusion directe par satellite) utiliseront ce nouveau standard, dont :

Le 3rd Generation Partnership Project (3GPP) a accepté l'introduction de H. 264/AVC comme un service optionnel dans la version 6 des spécifications fonctionnelles pour le mobile multimédia.

Le Motion Imagery Standards Board (MISB) de l'organisation United States Department of Defense (DoD) a adopté H. 264/AVC comme codec vidéo préféré pour l'ensemble des applications.

L'organisation Internet Engineering Task Force (IETF) a apporté un format de mise en paquet du contenu (RFC 3984) pour le transport de vidéo H. 264/AVC en utilisant son Real-time Transport Protocol (RTP).

L'organisation Internet Streaming Media Alliance (ISMA) a adopté H. 264/AVC pour les spécifications de ISMA 2.0.

L'organisation Moving Picture Experts Group (MPEG) a intégré avec succès le support de H. 264/AVC dans ses standards (par exemple les dispositifs MPEG-2 and MPEG-4) mais aussi dans les spécifications du format de fichier média ISO.

L'Union internationale des télécommunications - Secteur Standardisation (UIT-T) a adopté H. 264/AVC dans les spécifications de dispositifs de téléphonie multimédia H. 32x. Basé sur les standards de l'UIT-T, H. 264/AVC est déjà beaucoup utilisé pour la vidéoconférence, surtout par deux sociétés importantes du marché, (Polycom et Tandberg). L'ensemble des nouveaux produits de vidéoconférence incluent dorénavant le support de H. 264/AVC.

H. 264 sera certainement utilisé dans les services de vidéo à la demande sur Internet pour apporter des films et des émissions de télévision sur ordinateur. Il est aussi probable que le même type de contenu sera proposé via échange de fichiers sur réseau, de manière légale ou pas.

Produits et mises en œuvre

Transposition logicielles

Applications matérielles

Plusieurs entreprises produisent des puces capables de décoder des vidéos H. 264/AVC. Les puces capables de décoder en temps réel des vidéos haute définition sont entre autres les suivantes :

Ce type de puces permet un large déploiement de matériel à bas coût capable de jouer des vidéos H. 264/AVC aux définitions de télévision standard et hautes.

De nombreux matériels sont d'ores et déjà disponibles en juin 2006, cela va des produits de grande consommation économiques à des codeurs temps réel à base de FPGA pour la diffusion :

Notes et références

Voir aussi

Liens externes

Recherche sur Amazon (livres) :



Ce texte est issu de l'encyclopédie Wikipedia. Vous pouvez consulter sa version originale dans cette encyclopédie à l'adresse http://fr.wikipedia.org/wiki/H.264.
Voir la liste des contributeurs.
La version présentée ici à été extraite depuis cette source le 07/04/2010.
Ce texte est disponible sous les termes de la licence de documentation libre GNU (GFDL).
La liste des définitions proposées en tête de page est une sélection parmi les résultats obtenus à l'aide de la commande "define:" de Google.
Cette page fait partie du projet Wikibis.
Accueil Recherche Aller au contenuDébut page
ContactContact ImprimerImprimer liens d'évitement et raccourcis clavierAccessibilité
Aller au menu