Le format HEVC (High Efficiency Video Coding), H.265, MPEG-H

Photo of author
Écrit par Mallory Lebel

Aidons les citoyens à protéger leurs communications & leurs discussions numériques, qu'ils puissent vivre sans craindre d'être surveillés.

 Sommaire

  • Identification et description du format HEVC
  • Utilisation locale
  • Facteurs de durabilité
  • Facteurs de qualité et de fonctionnalité
  • Significatifs du type de fichier
  • Spécifications du format
  • Références utiles

Propriétés du format

Présentation du format HEVC

  • ID : fdd000530
  • Nom court : HEVC_family
  • Catégories de contenu : images en mouvement, images fixes
  • Catégorie de format : famille, encodage
  • Autres facettes : binaire, non structuré, échantillonné
  • Dernière mise à jour significative du FDD : 2020-11-19
  • Statut du projet : Préliminaire
  • Nom complet : Famille de codage vidéo à haute efficacité (HEVC), H.265

Description du format HEVC

Le codage vidéo à haute efficacité (HEVC) est une norme internationale définie conjointement par l’ISO/CEI (en tant qu’ISO/CEI 23008-2) et l’UIT-T (en tant que H.265) et également appelée MPEG-H Partie 2.

Elle a été publiée pour la première fois en 2013.

HEVC a été considéré comme une évolution des spécifications de codage vidéo antérieures, à savoir :

  1. UIT-T H.261 (MPEG-1)
  2. UIT-T H.262 (MPEG-2)
  3. UIT-T H.263 (MPEG-4, codage visuel)
  4. UIT-T H.264 (MPEG-4, codage vidéo avancé)

HEVC a été développé en réponse au besoin croissant d’une compression plus élevée des images animées pour diverses applications telles que :

  • le streaming
  • la vidéoconférence
  • les supports de stockage numériques
  • la télédiffusion

La syntaxe HEVC a été conçue pour permettre l’utilisation de la représentation vidéo codée de manière flexible pour une grande variété d’environnements réseau et pour permettre une capacité de compression élevée pour une qualité d’image ou de vidéo souhaitée.

La famille des codages HEVC comprend un grand nombre de profils destinés, selon la spécification, à différents domaines d’application, y compris, mais sans s’y limiter :

  1. la diffusion (télévision par câble sur les réseaux optiques / cuivre, satellite, terrestre, etc. )
  2. les caméscopes
  3. la production et la distribution de contenu
  4. le cinéma numérique
  5. le cinéma à domicile
  6. le streaming, le téléchargement et la lecture sur internet
  7. l’imagerie médicale
  8. le streaming, la diffusion et les communications mobiles
  9. les services de conversation en temps réel (vidéoconférence, visiophonie, téléprésence, etc.)
  10. la vidéosurveillance à distance
  11. les supports de stockage (disques optiques, magnétoscopes numériques, etc.)
  12. l’affichage sans fil

Chaque profil est défini par des contraintes sur la syntaxe telle que définie dans la spécification HEVC (H.265) complète.

Un résumé concis des structures disponibles dans la syntaxe HEVC est fourni dans la mise à jour 13 janvier 2020 de la description de l’encodeur du modèle d’essai HEVC (High Efficiency Video Coding) 16 (HM 16) :

 » HEVC possède une architecture de codage hybride basée sur les blocs, combinant la prédiction inter temporelle et intra spatiale, et le codage par transformation avec un codage entropique à haute efficacité.

Cependant, contrairement aux normes de codage vidéo précédentes, HEVC utilise une structure de partitionnement des blocs de codage en quadrillage qui permet une utilisation flexible de blocs de codage, de prédiction et de transformation de petite et grande taille.

HEVC permet également d’améliorer la prédiction et le codage intra, la prédiction et le codage adaptatifs des paramètres de mouvement, un nouveau filtre de boucle et une version améliorée du codage entropique CABAC (context-adaptive binary arithmetic coding) par rapport à celle définie par les normes précédentes. « 

L’introduction à HEVC dans une vidéo de 2017 intitulée Introducing HEIF and HEVC, présentée lors de la conférence WWDC 2017 d’Apple destinée aux développeurs, au cours de laquelle Apple a annoncé les nouveaux formats par défaut introduits pour la capture d’images et de vidéos sur les appareils mobiles d’Apple, aborde certaines caractéristiques clés qui rendent HEVC différent du codec AVC (H.264) qui l’a précédé.

hevc-vs-vp9

Evaluation of High Efficiency Video Coding (HEVC) for 3GPP services, un rapport technique du 3rd Generation Partnership Project, fournit également une description utile de HEVC, en se concentrant sur la comparaison avec AVC.

Le HEVC constitue une avancée importante par rapport à l’AVC (H.264)

En effet, il prend en charge des profondeurs binaires plus élevées et des formats de chrominance améliorés, notamment l’utilisation de la chrominance en pleine résolution (4:4:4).

On pourrait supposer qu’un plus grand nombre de pixels dans le signal de données source entraîne des fichiers plus volumineux et une plus grande demande de largeur de bande de transmission. Cependant, les innovations clés conçues pour soutenir une compression efficace signifient que ce n’est pas nécessairement le cas.

Le chapitre 9 de High Efficiency Video Coding (HEVC) : Algorithms and Architectures décrit en détail les comparaisons utilisant des mesures objectives et subjectives dans la performance de compression du logiciel de référence pour HEVC et AVC pour un ensemble de test varié de séquences vidéo.

L’évaluation objective a utilisé les différences moyennes des courbes R-D (taux de distorsion) basées sur le PSNR (rapport signal-bruit de pointe) mesuré par rapport au débit binaire.

Sur la base de cette mesure objective, l’amélioration globale des performances du HEVC par rapport à l’AVC se situe entre 22% et 43% pour quatre choix différents de paramètres de codage visant des cas d’utilisation différents.

Les résultats des tests d’évaluation subjectifs ont indiqué qu’une économie de débit binaire encore plus importante, comprise entre 55 et 87%, pouvait être réalisée.

Une évaluation objective distincte de séquences vidéo dans la plus grande résolution 4k (3 840 x 2 160 pixels) a montré une amélioration allant jusqu’à 76 %.

Les innovations mises en évidence dans les descriptions du HEVC

L’une des principales caractéristiques qui contribuent de manière significative à l’efficacité du codage de la norme H.265 (HEVC), notamment pour les formats haute résolution, est l’utilisation de tailles de blocs flexibles pour le codage et les transformations.

Contrairement à H.264 (AVC), où le bloc de codage de base est un macrobloc de taille fixe 16×16, H.265 (HEVC) définit un Coding Tree Unit (CTU) d’une taille maximale de 64×64.

Chaque CTU peut être divisée en unités plus petites de manière hiérarchique (connue sous le nom de quad-tree) et peut représenter des blocs plus petits de taille 4×4.

De même, les transformées utilisées dans la norme H.265 (HEVC) peuvent avoir des tailles différentes, allant de 4×4 à 32×32.

Le codage intra dans HEVC permet 35 modes de prédiction

  • Le mode DC [discrete cosine]
  • le mode planaire
  • 33 modes directionnels (ou « angulaires »)

AVC comprenait 9 modes : le mode DC et 8 modes directionnels.

  • Les modes angulaires ajoutés peuvent modéliser plus précisément les différentes lignes et structures directionnelles d’une image
  • Le mode planaire peut lisser les régions dont les couleurs changent progressivement

La flexibilité accrue améliore à la fois l’efficacité du codage objectif et la qualité visuelle, car les contours peuvent être mieux prédits et les artefacts de contournement autour des contours sont réduits.

Pour éviter les artefacts de contournement, une nouvelle option de prédiction interpolative est incluse pour améliorer la qualité visuelle.

La transformée discrète en sinus (DST) est utilisée au lieu de la traditionnelle transformée discrète en cosinus (DCT) pour les blocs intra transformés 4×4.

Les résidus de prédiction après l’intercodage dans les blocs individuels peuvent être compressés davantage pour supprimer la corrélation spatiale à l’intérieur du bloc avant d’être quantifiés, ce qui élimine généralement les informations visuelles moins importantes tout en formant une approximation proche des données sources.

4k - h.265

HEVC offre une plus grande souplesse et une meilleure adaptabilité dans la conception de ses transformations et de sa quantification. Il comprend des modes de codage supplémentaires dans lesquels l’étape de transformation et parfois l’étape de quantification sont complètement supprimées.

HEVC permet de coder certaines parties de l’image codée sans perte

À l’instar de son AVC, HEVC contient un filtre de déblocage en boucle, où les artefacts de blocage autour des bords de la transformation dans l’image reconstruite sont lissés pour améliorer la qualité de l’image et l’efficacité de la compression.

Ce filtre a été simplifié et rendu plus convivial pour le HEVC

En plus de ça, HEVC introduit une nouvelle étape de filtrage appelée filtre SAO (sample-adaptive offset), qui peut apporter une amélioration objective et subjective de la qualité de l’image.

Une amélioration objective et subjective de la qualité vidéo

HEVC utilise un seul moteur de codage entropique, basé sur le codage arithmétique binaire adaptatif en fonction du contexte (CABAC).

Le CABAC du HEVC présente de nombreuses similitudes avec le CABAC spécifié pour l’AVC, mais contient plusieurs modifications qui ont amélioré l’efficacité du codage et réduit la complexité de mise en œuvre, en particulier pour les architectures parallèles.

Tout flux binaire conforme au HEVC est organisé en unités de couche d’abstraction réseau (NAL), qui sont des paquets autonomes permettant à la couche vidéo d’être identique pour différents environnements de transmission.

Chaque unité NAL est associée à une couche temporelle particulière

La syntaxe est contrainte de telle manière qu’un décodeur capable de décoder à une fréquence d’images donnée est censé écarter les unités NAL associées aux images intermédiaires utilisées pour le décodage à une fréquence d’images supérieure.

Cette caractéristique est connue sous le nom de « scalabilité temporelle« .

Cliquez pour lire :


Versions et profils : En novembre 2020, il existe sept versions de la spécification HEVC

La plupart des mises à jour ont introduit de nouveaux profils

Dans un nom de profil qui se termine par un chiffre, ce chiffre indique la profondeur de bits maximale par canal pour la représentation des couleurs.

Si un profil n’inclut pas d’indication de chroma, et s’il ne s’agit pas d’une image monochrome, le profil est limité à la prise en charge de la chroma 4:2:0.

  • ITU-T H.265 (V1) (04/2013). La version 1 de la spécification HEVC a introduit les profils Main, Main Still Picture et Main 10. Ces profils sont tous limités au format 4:2:0 chroma. Les profils Main et Main Still Picture sont limités à 8 bits par canal de couleur.
  • ITU-T H.265 (V2) (10/2014). La version 2 de la spécification HEVC a introduit un grand nombre de profils, dont la plupart ont étendu la prise en charge de la profondeur de bit et/ou de la chroma et sont souvent désignés comme un groupe, sous le nom de profils Range Extension (RExt).
  • Les profils 4:2:2 répondent aux besoins de la vidéo capturée par une caméra pour la diffusion.
  • Les profils 4:2:0 et 4:2:2 avec une profondeur de bit de 12 répondent aux attentes des équipements et services à ultra-haute définition (UHD), pour lesquels la prise en charge de la vidéo à gamme dynamique élevée (HDR) est nécessaire.
  • Le profil Monochrome, qui autorise 8 ou 10 bits par pixel, convient aux canaux alpha (transparence) et aux cartes de profondeur. Les images monochromes avec une profondeur de bits plus élevée sont utilisées dans les applications d’imagerie médicale.

Prise en charge du codage inter-image et intra-image

Les variantes chromatiques 4:4:4 sont importantes non seulement pour les studios et la production de contenu professionnel, mais aussi pour les applications impliquant le partage d’écran à distance.

Les profils Intra ne sont autorisés à utiliser que la prédiction intra-image, ce qui donne un codage qui ne comprend que des images I.

Pour prendre en charge les « îlots d’interopérabilité », HEVC définit non seulement des profils, mais aussi des niveaux et des paliers

Alors que les profils définissent la syntaxe et les caractéristiques de codage qui peuvent être utilisées pour le contenu vidéo, le degré de capacité au sein d’un ensemble de fonctionnalités donné est un élément important.

Les niveaux sont des niveaux de capacité définis pour établir :

  • la résolution de l’image
  • la fréquence d’images
  • le débit binaire
  • la capacité de mise en mémoire tampon
  • d’autres aspects qui sont des questions de degré

Les niveaux les plus bas n’offrent qu’une faible résolution et une faible fréquence d’images.

Le format vidéo typique du niveau 1 peut n’avoir qu’une résolution de 176×144 à 15 images par seconde, alors que le niveau 4.1 permet une résolution HDTV de 1920×1080 à 60 images par seconde et que le niveau 6.1 permet une résolution vidéo de 8192×4320 à 120 images par seconde.

À partir de la version 7, le tableau A.8 de la spécification HEVC énumère les niveaux généraux suivants : 1, 2, 2.1, 3, 3.1, 4, 4.1, 5, 5.1, 5.2, 6, 6.1 et 6.2.

Notez que lorsqu’il est indiqué qu’un flux binaire est conforme à un niveau spécifique, il est également considéré comme conforme aux niveaux supérieurs.

HEVC puce Gen2+
HEVC puce Gen2+

Les niveaux supérieurs à 4 ont des variantes pour les niveaux principal et élevé, la principale différence étant que le niveau élevé définit une taille maximale beaucoup plus élevée pour les tampons d’images codées (CPB), ce qui augmente les débits binaires que les décodeurs doivent être capables de gérer.

Les profils d’image fixe peuvent utiliser un niveau spécial (8,5) qui n’indique aucune limite de taille ou de complexité de l’image.

Les niveaux sont notamment utilisés dans les spécifications basées sur le codage HEVC

Par exemple, DICOM spécifie l’utilisation des profils Main ou Main 10 au niveau 5.1 et ATSC 3.0 – A/341 fait référence aux niveaux 3.1, 4.1, 5, 5.1 et 5.2 pour les profils Main 10 et Scalable Main 10.

Attention : Nous vous conseillons d’utiliser un VPN avant de télécharger un fichier torrent. Un VPN maquillera votre adresse IP.

Ni votre fournisseur d’accès internet, ni n’importe quel hacker ne pourra remonter à votre identité car votre trafic sera instantanément chiffré.

NordVpn est le VPN que nous vous conseillons pour sa vitesse, son double chiffrement et son absence d’enregistrement de vos historiques.


Documentation

La spécification HEVC est publiée sous la forme ISO/IEC 23008-2 : Technologies de l’information.

La section HEVC du site Web MPEG a été une source riche de projets, de livres blancs et de documents intermédiaires associés au développement initial de HEVC et à son extension constante pour couvrir des cas d’utilisation supplémentaires en ajoutant des profils.

Le site Web a été largement gelé à partir de juin 2020 en raison de la réorganisation de l’ISO/CEI JTC1/SC 29.

Alors que la spécification décrit la syntaxe et un processus de décodage suggéré pour la vidéo codée conforme à la norme, un processus de codage possible est décrit dans la documentation du logiciel de référence, souvent appelé HM (pour HEVC Test Model).

Le logiciel HM est une source ouverte, maintenue à l’adresse https://vcgit.hhi.fraunhofer.de/jvet/HM.

Deux livres rédigés par des membres du groupe de développement JCT-VC ont été publiés en 2014 et 2105 en tant que compléments d’information à la spécification HEVC officielle.

Le livre  » High Efficiency Video Coding (HEVC) : Algorithms and Architectures « 

Editeurs : Vivienne Sze, Madhukar Budagavi, Gary J. Sullivan.

Contient des chapitres rédigés séparément sur différents aspects de HEVC, notamment :

  • les structures de blocs et le parallélisme
  • la prédiction intra-image
  • la transformation et la quantification
  • les filtres en boucle
  • le codage entropique

Comprend également une analyse des performances de compression par rapport à l’AVC (H.264) à l’aide de méthodes subjectives et objectives.

Le livre  » High Efficiency Video Coding : Coding Tools and Specification « 

Auteur : Mathias Wien.

  • Comprend l’histoire et le contexte technique du codage vidéo et des comparaisons avec l’AVC dans tous les chapitres qui concernent les aspects du codage vidéo (tels que le codage prédictif temporel et spatial, la représentation des couleurs, etc.).
  • Présente les profils d’extension de gamme (RExt) inclus dans la version 2 de la spécification HEVC.

Licences et brevets

Le codage HEVC sous-jacent est fortement encombré de brevets (environ 17000 en 2020).

Les brevets se sont révélés être un problème général pour les systèmes de codage vidéo.

En janvier 2019, une étude sur les taux de redevance des brevets essentiels à la norme HEVC / H.265 a été publiée par Unified, une organisation internationale de membres qui cherche à améliorer la qualité des brevets et à dissuader les affirmations de brevets non fondées ou invalides dans des secteurs technologiques définis (zones).

HEVC : une chronologie
HEVC : une chronologie

Il est clair que la situation des brevets a été un obstacle à l’adoption. En particulier, l’absence de prise en charge intégrée des formats HEIF dans les navigateurs et dans les systèmes d’exploitation autres que iOS et Mac OS d’Apple semble probablement liée aux défis et aux risques associés au paysage des brevets.

Image en mouvement

Rendu normal

Conçu pour prendre en charge le choix de l’équilibre entre la qualité de l’image et la taille du fichier ou la bande passante requise pour la transmission.

Une grande variété de profils et de niveaux permet de répondre à différents cas d’utilisation.

Clarté (haute résolution d’image)

HEVC peut prendre en charge les images de très grande taille et les vidéos à ultra-haute définition (UHD).

La qualité de l’image, y compris la représentation des couleurs, et le débit de transmission requis (bande passante) dépendent du profil et du niveau utilisés pour le codage.

Fonctionnalité au-delà du rendu normal

De nombreuses fonctionnalités identifiées ci-dessus dans la description vont au-delà de la fonctionnalité vidéo normale, notamment la prise en charge :

  • de la fonctionnalité 3D
  • de la fonctionnalité stéréoscopique (multi-vues)
  • de l’évolutivité pour s’adapter à des conditions de réseau variables
  • de la fonctionnalité omnidirectionnelle pour l’application de la réalité virtuelle ou augmentée

Autres

Les caractéristiques d’une séquence vidéo codée individuelle et de son codage sont stockées de manière très succincte dans deux ensembles de paramètres au sein de la vidéo codée, à savoir :

  • un ensemble de paramètres vidéo (VPS)
  • et un ensemble de paramètres de séquence (SPS)

L’identification et l’extraction de ces paramètres nécessitent des outils adaptés à HEVC.

De nombreux flux de travail impliquant du contenu codé HEVC génèreront des métadonnées dans un format plus utilisable à stocker avec la vidéo codée dans un format de conteneur particulier.

Terminologie

La terminologie utilisée dans la spécification HEVC et les descriptions du codage est complexe et étend ou modifie parfois des termes trouvés dans des glossaires.

Quadtree (souvent avec un trait d’union)

Terme mathématique désignant un arbre dans lequel un nœud parent peut être divisé en quatre nœuds enfants, chacun d’entre eux pouvant devenir le nœud parent d’un autre nœud divisé en quatre nœuds enfants.

CTU (Coding Tree Unit)

En HEVC, une image est divisée en CTU, qui sont des blocs carrés, à l’exception éventuellement de la rangée inférieure et de la colonne de droite. Un CTU peut encore être divisé en 4 CTUs enfants.

Tuiles et tranches

HEVC dispose de deux types supplémentaires de partition qui peuvent être utilisés pour une image.

Ils consistent en des séquences de CTUs.

Une tuile est une région rectangulaire de CTUs dans une grille rectangulaire de tuiles qui forment une image ; les tuiles sont traitées comme des images indépendantes.

Différentes compressions vidéo

Une tranche est une séquence d’UCT qui peut être décodée indépendamment des autres tranches de la même image. Une tranche peut être une image entière ou une région d’une image.

L’un des principaux objectifs des tranches est la resynchronisation en cas de pertes de données. Contrairement à l’usage courant, une tranche dans HEVC n’est pas limitée à une seule rangée de blocs dans une grille rectangulaire.

Les I-slices (intra slices) sont des tranches HEVC compressées indépendamment.

Une tranche I est décodée en utilisant uniquement la prédiction intra. Une extension du terme plus courant, I-frame.

Les tranches P (tranches prédictives) utilisent un codage inter-images

Ce codage est basé sur les différences entre les images précédentes de la source vidéo. Il s’agit d’une extension du terme le plus courant, P-frame.

Les tranches B (tranches bi-prédictives)

Ce sont des tranches prédites bidirectionnellement qui utilisent les différences entre l’image actuelle et les images précédentes et suivantes pour dériver le contenu codé de la tranche actuelle.

Il s’agit d’une extension du terme plus courant, B-frame.

  • Le codage intra utilise divers modes de prédiction spatiale pour exploiter les dépendances statistiques spatiales du signal source pour une seule image ou une seule tuile.
  • Le codage inter utilise des vecteurs de mouvement pour la prédiction par bloc afin d’exploiter les dépendances statistiques temporelles entre différentes images.

SEI : Supplemental enhancement information

Un message SEI contient des informations (souvent appelées charge utile du message) qui ne sont pas nécessaires au simple décodage des échantillons d’images codées, mais qui constituent un message normalisé et structuré à l’intention d’un décodeur et qui peuvent aider dans les processus liés au décodage, à l’affichage ou à d’autres fins.

Certaines fonctions avancées, comme la 3D, ne fonctionneront pas comme prévu dans une application qui ne reconnaît pas les messages SEI correspondants.

CPB (coded picture buffer)

Il s’agit d’un tampon contenant des unités de décodage dans l’ordre de décodage spécifié dans le décodeur de référence hypothétique de l’annexe C de la spécification HEVC.

La taille du CPB dans le codage de contenu généré par un codeur est un facteur important pour les décodeurs. Les niveaux spécifient une taille maximale de CPB en bits.

SPS (Sequence Parameter Set)

Contient des paramètres qui s’appliquent à l’ensemble d’une séquence vidéo codée et qui ne changent pas d’une image à l’autre dans une même séquence.

Le SPS comporte des codes pour des caractéristiques telles que :

  1. la profondeur binaire
  2. le format chroma
  3. la largeur et la hauteur de l’image

VPS (Video Parameter Set)

Un nouvel ensemble de paramètres défini dans HEVC, qui s’applique à toutes les couches d’un flux binaire.

Une couche peut contenir plusieurs sous-couches temporelles.

PPS (Picture Parameter Set)

Il y a un PPS par image. Parmi les détails stockés dans cet ensemble de paramètres, on trouve :

  • le nombre de lignes de tuiles
  • le nombre de colonnes de tuiles
  • des drapeaux indiquant si des extensions particulières, par exemple pour la 3D ou le codage de contenu d’écran (SCC), sont utilisées
  • d’autres paramètres nécessaires au décodage de l’image.

Vous voulez maquiller votre adresse IP ?

Lancez ce logiciel pour dissimuler votre trafic et votre identité

Nordvpn bannière maquiller votre adresse ip

0 réflexion au sujet de « Le format HEVC (High Efficiency Video Coding), H.265, MPEG-H »

Laisser un commentaire