Brevet FR3018417A1 — publié le 20150911

La présente invention concerne un procédé et un dispositif permettant de réguler la complexité de décodage d'un flux vidéo préalablement compressé. Les méthodes de compression de données vidéo récentes, telles que le standard H264/AVC (ISO/IEC 14496-10 - MPEG-4 Part 10, codage vidéo avancé (« Advanced Video Coding » en terminologie anglo-saxonne) / ITU-T H.264) ou le standard émergeant HEVC (ISO/IEC 23008-2 - MPEG-H Part 2, codage vidéo haute efficacité (High Efficiency Video Coding en terminologie anglo-saxonne) / ITU-T H.265), ont apporté une amélioration significative des performances de compression. Ces méthodes utilisent des algorithmes de codage vidéo ayant permis une réduction de débit des données vidéo après compression (i.e. encodage) tout en préservant ces données vidéo en termes de qualité de rendu d'images après décompression (i.e. décodage). Cependant, cette amélioration des performances, essentiellement due à des améliorations d'outils de compression existants et à des intégrations de nouveaux outils de compression, s'est traduite par un accroissement de la complexité, et par conséquent des besoins en ressources mémoire et en ressources de traitement de ces méthodes de compression. Ces méthodes ont en effet un coût calculatoire très important et nécessite la mise en mémoire de beaucoup de données. Pour pouvoir mettre en oeuvre ces méthodes, il est nécessaire de prévoir des dispositifs d'encodage et de décodage ayant des capacités calculatoires et des capacités mémoire adéquates. Toutefois, en général pour une question de prix de revient des dispositifs d'encodage et de décodage, les capacités calculatoires et les capacités mémoire sont dimensionnées au plus juste, ce qui ne permet pas aux dispositifs d'encodage et de décodage d'offrir des fonctionnalités allant au delà de celles pour lesquelles ces dispositifs d'encodage et décodage ont été conçus. D'un autre côté, il est important d'offrir aux utilisateurs d'applications vidéo des fonctionnalités avancées nouvelles et innovantes afin de pérenniser leur intérêt pour ces applications. En effet, alors que par le passé ces utilisateurs se contentaient de fonctionnalités simples d'affichage de vidéos, ces utilisateurs peuvent maintenant souhaiter des fonctionnalités d'affichage plus interactives permettant par exemple un visionnage accéléré d'une vidéo (« trick mode » en terminologie anglo-saxonne), une incrustation d'une vidéo dans une autre vidéo selon un mode image dans image (« Picture in Picture » en terminologie anglo-saxonne) ou un visionnage d'une pluralité de vidéos en parallèle, par exemple dans une vidéo mosaïque. Ces nouvelles fonctionnalités d'affichage entraînent une augmentation des besoins en capacités calculatoires et des besoins en capacités mémoire des applications vidéo. Par exemple, le visionnage accéléré d'une vidéo peut nécessiter de décoder une vidéo à un débit d'images (« frame rate » en terminologie anglo-saxonne) dépassant un débit d'image correspondant à un affichage temps réel de la vidéo. L'incrustation d'une vidéo dans une autre vidéo nécessite deux décodages en parallèle lorsque les vidéos sont reçues sous la forme de deux flux vidéo séparés. De manière similaire, l'affichage d'une mosaïque de vidéos, peut nécessiter de réaliser une pluralité de décodages vidéo en parallèle. Bon nombre de dispositifs de décodage ne permettent pas d'accéder à ces fonctionnalités avancées d'affichage du fait du dimensionnement inadéquat de leurs capacités calculatoires et de leurs capacités mémoire. Il serait donc intéressant de proposer des solutions permettant d'accéder à ces services sans nécessiter le remplacement des dispositifs de décodage. Le problème résolu par la présente invention consiste à assurer la compatibilité d'un flux vidéo binaire avec des capacités calculatoires et éventuellement des capacités en mémoire d'un dispositif de décodage de vidéos, lorsque le dispositif de décodage de vidéos est utilisé, par exemple, pour mettre en oeuvre des fonctionnalités d'affichage demandant un effort calculatoire important. A cet effet, selon un premier aspect de la présente invention, la présente invention concerne un procédé de modification d'un flux vidéo binaire encodé selon un algorithme de codage vidéo comprenant une boucle de prédiction et un post filtrage de boucle intégré dans la boucle de prédiction. Le procédé comprend les étapes suivantes effectuées par un dispositif : rechercher un élément de syntaxe relatif au post filtrage de boucle dans le flux vidéo binaire, l'élément de syntaxe étant utilisé par un dispositif de décodage pour contrôler une complexité de mise en oeuvre du post filtrage de boucle; et modifier une valeur de l'élément de syntaxe ou supprimer l'élément de syntaxe de sorte à obtenir une réduction de la complexité de mise en oeuvre du post filtrage de boucle par le dispositif de décodage. La modification ou la suppression d'éléments de syntaxe relatifs au filtrage de boucle permet d'indiquer au dispositif de décodage qu'il peut mettre en oeuvre un post filtrage de boucle simplifié ou ne pas mettre en oeuvre le post filtrage de boucle, ce qui réduira la complexité du décodage. Ce procédé a un faible coût calculatoire car il ne nécessite pas un décodage et un ré-encodage complet du flux vidéo binaire. Selon un mode de réalisation, le post filtrage de boucle comprend un filtrage de déblocage et/ou un filtrage SAO (« Sample Adaptive Offset » en terminologie anglo-saxonne). En permettant de contrôler plusieurs méthodes de post filtrage de boucle, le procédé permet d'ajuster finement la réduction de la complexité de décodage. Selon un mode de réalisation, le filtrage de déblocage atténuant des discontinuités entre des blocs de pixels et comprenant un filtrage de forte complexité atténuant fortement les discontinuités entre les blocs de pixels et un filtrage de faible complexité atténuant faiblement les discontinuités entre les blocs de pixels, lorsque la valeur de l'élément de syntaxe a été modifiée et que l'élément de syntaxe est relatif au filtrage de déblocage, ladite valeur est modifiée de sorte à favoriser une utilisation par le dispositif de décodage du filtrage de déblocage de faible complexité par rapport au filtrage de déblocage de forte complexité. De cette manière, la complexité de mise en oeuvre du filtrage de déblocage est réduite, tout en permettant une atténuation minimale des discontinuités entre blocs. Selon un mode de réalisation, lorsque la valeur de l'élément de syntaxe a été modifiée et que l'élément de syntaxe est relatif au filtrage de déblocage ou relatif au filtrage SAO, la modification de la valeur de l'élément de syntaxe permet de désactiver respectivement la mise en oeuvre du filtrage de déblocage ou la mise en oeuvre du filtrage SAO par le dispositif de décodage. Le procédé permet ainsi de désactiver la mise en oeuvre par un dispositif de décodage du filtrage de déblocage et/ou du filtrage SAO, ce qui permet de réduire la complexité de décodage. Selon un mode de réalisation, lorsque l'élément de syntaxe est supprimé et que l'élément de syntaxe est relatif au filtrage de déblocage ou relatif au filtrage SAO, la suppression de l'élément de syntaxe permet de désactiver respectivement la mise en oeuvre du filtrage de déblocage ou la mise en oeuvre du filtrage SAO par le dispositif de décodage. Le procédé permet ainsi de désactiver la mise en oeuvre par le dispositif de décodage du filtrage de déblocage et/ou du filtrage SAO, ce qui permet de réduire la complexité de décodage. Le procédé permet d'autre part, en supprimant des éléments de syntaxe, de réduire le débit du flux vidéo binaire, notamment lorsque les éléments de syntaxe supprimés sont des éléments de syntaxe relatifs au filtrage SAO de blocs de pixels. Selon un mode de réalisation, la valeur de l'élément de syntaxe modifié et/ou l'élément de syntaxe supprimé dépendent d'une information représentative d'un besoin de réduction d'une complexité de décodage. De cette manière, le procédé est adaptatif. Selon un mode de réalisation, le besoin de réduction de la complexité de décodage dépend d'une fonctionnalité d'affichage souhaitée par un utilisateur pour un affichage, sur un dispositif d'affichage, d'images correspondant au flux vidéo binaire. De cette manière, la réduction de complexité de décodage est adaptée aux besoins de l'utilisateur. Selon un mode de réalisation, le procédé comprend en outre les étapes suivantes : recevoir le flux vidéo binaire d'un dispositif de réception, le flux vidéo binaire étant reçu par le dispositif de réception par l'intermédiaire d'un réseau de communication; et transmettre au dispositif de décodage un flux vidéo binaire modifié résultant de la modification du flux vidéo binaire par le procédé de modification. De cette manière, un flux vidéo binaire reçu est adapté en fonction des besoins d'un utilisateur avant d'être fournis au dispositif de décodage. Il n'est donc pas nécessaire de modifier, avant sa transmission, un flux vidéo binaire initial tel que généré par un encodeur vidéo que d'autres utilisateurs pourraient vouloir décoder en qualité maximale. Selon un mode de réalisation, le procédé comprend en outre les étapes suivantes : recevoir le flux vidéo binaire d'un dispositif d'encodage; recevoir une information représentative d'un besoin de réduction d'une complexité de décodage par l'intermédiaire d'un réseau de communication; et transmettre un flux vidéo binaire modifié résultant de la modification par le procédé de modification du flux vidéo binaire, à un dispositif de transmission en vue d'une transmission du flux vidéo binaire modifié sur le réseau de communication. La mise en oeuvre du procédé avant la transmission du flux vidéo binaire sur le réseau permet de ne pas transmettre sur le réseau des éléments de syntaxe inutiles. Selon un mode de réalisation, ledit algorithme de codage vidéo est basé sur le 30 standard H.264/AVC ou sur le standard HEVC. Le procédé est donc adapté à deux standards de compression très répandus. En particulier, la mise en oeuvre du procédé a un coût calculatoire très faible lorsque le procédé est appliqué à des flux vidéo conformes au standard H.264/AVC car dans ce cas, les modifications apportées au flux vidéo binaire ne concernent que des données d'entête et ne nécessitent donc pas une lecture approfondie du flux vidéo binaire. Selon un deuxième aspect de la présente invention, la présente invention concerne un dispositif de modification d'un flux vidéo binaire encodé selon un algorithme de codage vidéo comprenant une boucle de prédiction et un post filtrage de boucle intégré dans la boucle de prédiction. Le dispositif comprend: des moyens pour rechercher dans le flux vidéo binaire un élément de syntaxe relatif au post filtrage de boucle, l'élément de syntaxe étant utilisé par un dispositif de décodage pour contrôler la complexité de mise en oeuvre du post filtrage de boucle ; et des moyens pour modifier une valeur de l'élément de syntaxe et/ou des moyens pour supprimer l'élément de syntaxe de sorte à obtenir une réduction de la complexité de mise en oeuvre du post filtrage de boucle par le dispositif de décodage. Le dispositif de modification possède les mêmes avantages que ceux mentionnés envers le premier aspect. Selon un troisième aspect de la présente invention, la présente invention concerne un système de communication d'un flux vidéo binaire en vue d'un affichage par un dispositif d'affichage, le flux vidéo binaire ayant été encodé selon un algorithme de codage vidéo comprenant une boucle de prédiction et un post filtrage de boucle intégré dans la boucle de prédiction, le système comprenant un dispositif de décodage apte à décoder le flux vidéo binaire et apte à transmettre au dispositif d'affichage des images correspondant à un résultat du décodage du flux vidéo binaire. Le système comprend un dispositif de modification d'un flux vidéo binaire selon le deuxième aspect, le dispositif de modification étant apte à fournir au dispositif de décodage un flux vidéo binaire modifié résultant de la modification par le dispositif de modification du flux vidéo binaire. Le système de communication possède les mêmes avantages que ceux mentionnés envers le premier aspect. Selon un quatrième aspect de la présente invention, la présente invention concerne un produit programme d'ordinateur. Le produit programme d'ordinateur comporte des instructions pour mettre en oeuvre, par un dispositif, le procédé selon le premier aspect, lorsque ledit programme est exécuté par un processeur dudit dispositif. Le produit programme d'ordinateur possède les mêmes avantages que ceux mentionnés envers le premier aspect. Selon un cinquième aspect de la présente invention, la présente invention concerne des moyens de stockage. Les moyens de stockage stockent un programme d'ordinateur comportant des instructions pour mettre en oeuvre, par un dispositif, le procédé selon le premier aspect, lorsque ledit programme est exécuté par un processeur dudit dispositif. Les moyens de stockage possèdent les mêmes avantages que ceux mentionnés envers le premier aspect. Les caractéristiques de l'invention mentionnées ci-dessus, ainsi que d'autres, apparaîtront plus clairement à la lecture de la description suivante d'un exemple de réalisation, ladite description étant faite en relation avec les dessins joints, parmi lesquels: La Fig. lA représente schématiquement un premier système de transmission de vidéos comprenant un dispositif mettant en oeuvre l'invention, La Fig. 1B représente schématiquement un second système de transmission de vidéos comprenant un dispositif mettant en oeuvre l'invention, La Fig. 2 représente schématiquement un dispositif apte à mettre en oeuvre la présente invention, La Fig. 3 représente schématiquement un procédé permettant d'assurer la compatibilité d'un flux vidéo binaire avec des capacités calculatoires et éventuellement des capacités mémoire d'un dispositif de décodage de vidéos, lorsque le dispositif de décodage de vidéos est utilisé pour mettre en oeuvre des fonctionnalités d'affichage demandant un effort calculatoire important, La Fig. 4 illustre schématiquement les partitionnements successifs subis par une image vidéo lors d'un encodage HEVC, La Fig. 5 représente schématiquement une méthode d'encodage d'un flux vidéo compatible avec le standard HEVC, La Fig. 6 représente schématiquement une méthode de décodage selon le standard HEVC, La Fig. 7 représente schématiquement un algorithme modifiant un flux vidéo et permettant ainsi d'obtenir une réduction de la complexité de décodage dudit flux vidéo par la simplification d'une méthode de post-filtrage de type filtre de déblocage, La Fig. 8 représente schématiquement un algorithme modifiant un flux vidéo et permettant ainsi d'obtenir une réduction de la complexité de décodage dudit flux vidéo en empêchant la mise en oeuvre d'une méthode de post-filtrage de type filtre de déblocage, et La Fig. 9 représente schématiquement un algorithme modifiant un flux vidéo et permettant ainsi d'obtenir une réduction de la complexité de décodage dudit flux vidéo en empêchant la mise en oeuvre d'une méthode de post-filtrage de type filtre SAO. La présente invention se situe dans le domaine de la compression vidéo et des applications utilisant des vidéos compressées telles que les applications de transmission de vidéos (« streaming » en terminologie anglo-saxonne). L'invention est adaptée aux méthodes de compression vidéo utilisant un post filtrage de boucle, telles que H.264/AVC et HEVC. Les Figs. 4, 5 et 6 décrivent un exemple de mise en oeuvre du standard HEVC. La Fig. 4 illustre les partitionnements successifs subis par une image de pixels 402 d'une vidéo originale 401, lors de son encodage selon le standard HEVC. On considère ici qu'un pixel est composé de trois composantes : une composante de luminance et deux composantes de chrominance. Dans l'exemple de la Fig. 4, l'image 402 est dans un premier temps divisée en trois tranches (« slices » en terminologie anglo-saxonne). Une tranche est une zone d'une image pouvant couvrir la totalité d'une image ou seulement une portion, comme la tranche 403 dans la Fig. 4. Une tranche comprend au moins un segment de tranche (« slice segment » en terminologie anglo-saxonne) suivi optionnellement d'autres segments de tranche. Le segment de tranche en première position dans la tranche est appelé segment de tranche indépendant (« independent slice segment » en terminologie anglo-saxonne). Un segment de tranche indépendant, tel que le segment de tranche IS1 dans la tranche 403, comprend un entête complet, tel qu'un entête 408. L'entête 408 comprend un ensemble d'éléments de syntaxe permettant le décodage de la tranche. Les éventuels autres segments de tranche d'une tranche, tel que des segments de tranche DS2, DS3, DS4, DS5 et DS6 de la tranche 403 dans la fig. 4, sont appelés des segments de tranche dépendants (« dependent slice segment » en terminologie anglo-saxonne), car ils ne possèdent qu'un entête partiel faisant référence à l'entête de segment de tranche dépendant qui les précède dans la tranche, ici l'entête 408. Dans le standard H.264/AVC, seul le concept de tranche existe, une tranche comprenant nécessairement un entête complet et ne pouvant pas être divisée. On peut noter que chaque tranche d'une image est décodable indépendamment de toute autre tranche de la même image. Toutefois, la mise en oeuvre d'un post filtrage de boucle dans une tranche peut nécessiter l'utilisation de données d'une autre tranche. Après le partitionnement de l'image 402 en tranches, les pixels de chaque tranche d'une image sont partitionnés en blocs d'arbre de codage (« coded Tree Block (CTB) » en terminologie anglo-saxonne), tels qu'un ensemble de blocs 404 de la Fig. 4. Par la suite, pour simplifier, nous utiliserons l'acronyme CTB pour désigner un bloc d'arbre de codage. Un CTB, tel que le CTB 409 dans la Fig. 4, est un carré de pixels de côté dont la taille est égale à une puissance de deux et dont la taille peut aller de seize à soixante-quatre pixels. Un CTB peut être partitionné sous forme d'arbre quaternaire (« quad-tree » en terminologie anglo-saxonne) en une ou plusieurs unités de codage (« coding unit (CU) » en terminologie anglo-saxonne). Une unité de codage est un carré de pixels de côté dont la taille est égale à une puissance de deux et dont la taille peut aller de huit à soixante-quatre pixels. Une unité de codage, telle que l'unité de codage 405 de la Fig. 4, peut être ensuite partitionnée en unités de prédiction (« prediction unit (PU) » en terminologie anglo-saxonne) utilisées lors de prédictions spatiales ou temporelles et en unités de transformation (« transform unit (TU) » en terminologie anglo-saxonne) utilisées lors de transformations de blocs de pixels dans le domaine fréquentiel. Au cours du codage d'une image, le partitionnement est adaptatif, c'est à dire que chaque CTB est partitionné de manière à optimiser les performances de compression du CTB. Par la suite, pour simplifier, nous considérons que chaque CTB est partitionné en une unité de codage et que cette unité de codage est partitionnée en une unité de transformation et une unité de prédiction. La Fig. 5 représente schématiquement une méthode d'encodage d'un flux vidéo compatible avec le standard HEVC mise en oeuvre par un dispositif d'encodage. L'encodage d'une image courante 501 d'une vidéo débute par un partitionnement de l'image courante 501 lors d'une étape 502, tel que décrit en relation avec la Fig. 4. Par simplification, dans la suite de la description de la Fig. 5 et dans la description de la Fig. 6, nous ne différentions pas les CTB, unités de codage, unités de transformation et unités de prédiction et nous regroupons ces quatre entités sous le terme de bloc. L'image courante 501 est ainsi partitionnée en blocs. Pour chaque bloc, le dispositif d'encodage doit déterminer un mode de codage entre un mode de codage intra image, appelé mode de codage INTRA, et un mode de codage inter image, appelé mode de codage INTER. Le mode de codage INTRA consiste à prédire suivant une méthode de prédiction INTRA, lors d'une étape 503, les pixels d'un bloc courant à partir d'un bloc de prédiction dérivé à partir de pixels de blocs reconstruits situés dans un voisinage causal du bloc à coder. Le résultat de la prédiction INTRA est une direction de prédiction indiquant quels pixels des blocs du voisinage utiliser, et un bloc résiduel résultant d'un calcul d'une différence entre le bloc courant et le bloc de prédiction. Le mode de codage INTER consiste à prédire les pixels d'un bloc courant à partir d'un bloc de pixels, appelé bloc de référence, d'une image précédent ou suivant l'image courante, cette image étant appelée image de référence. Lors du codage d'un bloc courant suivant le mode de codage INTER, le bloc de l'image de référence le plus proche, suivant un critère de similarité, du bloc courant est déterminé par une étape d'estimation de mouvement 504. Lors de l'étape 504, un vecteur de mouvement indiquant la position du bloc de référence dans l'image de référence est déterminé. Ledit vecteur de mouvement est utilisé lors d'une étape 505 de compensation de mouvement au cours de laquelle un bloc résiduel est calculé sous la forme d'une différence entre le bloc courant et le bloc de référence. On peut remarquer que nous avons décrit ici un mode de codage inter mono-prédit. Il existe aussi un mode de codage inter bi-prédit (ou mode B) pour lequel un bloc courant est associé à deux vecteurs de mouvement, désignant deux blocs de référence dans deux images différentes, le bloc résiduel de ce bloc étant alors une moyenne de deux blocs résiduels. Lors d'une l'étape 506 de sélection, le mode de codage optimisant les performances de compression, selon un critère débit/distorsion, parmi les deux modes testés est sélectionné par le dispositif d'encodage. Lorsque le mode de codage est sélectionné, le bloc résiduel est transformé lors d'une étape 507 et quantifié lors d'une étape 509. Lorsque le bloc courant est codé selon le mode de codage INTRA, la direction de prédiction et le bloc résiduel transformé et quantifié sont encodés par un encodeur entropique lors d'une étape 510. Lorsque le bloc courant est encodé selon le mode de codage INTER, le vecteur de mouvement du bloc est prédit à partir d'un vecteur de prédiction sélectionné parmi un ensemble de vecteurs de mouvement correspondant à des blocs reconstruits situés à proximité du bloc à coder. Le vecteur de mouvement est ensuite encodé par l'encodeur entropique lors de l'étape 510 sous la forme d'un résiduel de mouvement et d'un indice permettant d'identifier le vecteur de prédiction. Le bloc résiduel transformé et quantifié est encodé par l'encodeur entropique lors de l'étape 510. Le résultat de l'encodage entropique est inséré dans un flux vidéo binaire 511. Après quantification lors de l'étape 509, le bloc courant est reconstruit afin que les pixels que ledit bloc courant contient puissent servir pour des prédictions futures. Cette phase de reconstruction est aussi appelée boucle de prédiction. On applique donc au bloc résiduel transformé et quantifié une quantification inverse lors d'une étape 512 et une transformation inverse lors d'une étape 513. En fonction du mode de codage utilisé pour le bloc obtenu lors d'une étape 514, le bloc de prédiction du bloc est reconstruit. Si le bloc courant est encodé selon le mode de codage INTER, le dispositif de codage applique, lors d'une étape 516, une compensation de mouvement inverse utilisant le vecteur de mouvement du bloc courant pour identifier le bloc de référence du bloc courant. Si le bloc courant est encodé suivant un mode de codage INTRA, lors d'une étape 515, la direction de prédiction correspondant au bloc courant est utilisée pour reconstruire le bloc de référence du bloc courant. Le bloc de référence et le bloc résiduel reconstruit sont additionnés pour obtenir le bloc courant reconstruit. Suite à la reconstruction, un post filtrage de boucle (« loop filter » en terminologie anglo-saxonne) est appliqué, lors d'une étape 517, au bloc reconstruit. On appelle ce post filtrage post filtrage de boucle car ce post filtrage intervient dans la boucle de prédiction de manière à obtenir à l'encodage les mêmes images de référence que le décodage et éviter ainsi un décalage entre l'encodage et le décodage. Le post filtrage de boucle fait partie des nouveaux outils de compression apparus dans H.264/AVC et améliorés dans HEVC. Le post filtrage de boucle de HEVC comprend deux méthodes de post-filtrage, i.e. un filtrage de déblocage (« deblocking filter » en terminologie anglo-saxonne) et un filtrage SAO (« Sample Adaptive Offset » en terminologie anglo-saxonne). Le post filtrage de H.264/AVC ne comprend que le filtrage de déblocage. Le filtrage de déblocage a pour but d'atténuer des discontinuités à des frontières de blocs dues aux différences de quantification entre blocs. C'est un filtrage adaptatif qui peut être activé ou désactivé, et lorsqu'il est activé, qui peut prendre la forme d'un filtrage de déblocage de complexité élevée basé sur un filtre séparable à une dimension comportant six coefficients de filtre, qu'on appelle par la suite filtre fort, et un filtrage de déblocage de faible complexité basé sur un filtre séparable à une dimension comportant quatre coefficients, qu'on appelle par la suite filtre faible. Le filtre fort atténue fortement les discontinuités aux frontières des blocs, ce qui peut endommager des hautes fréquences spatiales présentes dans des images originales. Le filtre faible atténue faiblement les discontinuités aux frontières des blocs, ce qui permet de préserver des hautes fréquences spatiales présentes dans les images originales, mais sera moins efficace sur les discontinuités artificiellement créées par la quantification. La décision de filtrer ou de ne pas filtrer, et la forme du filtre utilisé en cas de filtrage, dépendent de la valeur des pixels aux frontières du bloc à filtrer et de deux paramètres P et t, déterminés par le dispositif d'encodage. Lors de l'étape 510 d'encodage entropique, le dispositif d'encodage insère dans le flux vidéo binaire 511 des éléments de syntaxe (pps beta offset div2 et pps tc offset div2 dans des conteneurs PPS (ensemble de paramètres d'image : « Picture Parameter Set » en terminologie anglo-saxonne), et slice beta offset div2 et slice tc offset div2 dans les entêtes de tranche) permettant de retrouver les valeurs respectives des paramètres et tc. Un dispositif de décodage peut déterminer, en utilisant ces éléments de syntaxe, si un filtrage de déblocage doit être appliqué et la forme de filtrage de déblocage à appliquer. Le filtrage SAO prend deux formes ayant deux objectifs différents. La première forme appelée rehaussement de contour (« edge offset » en terminologie anglo-saxonne) a pour but de compenser les effets de la quantification sur les contours dans les blocs. Le filtrage SAO par rehaussement de contour comprend une classification des pixels de l'image reconstruite suivant quatre catégories correspondant à quatre types respectifs de contour. La classification d'un pixel se fait par filtrage suivant quatre filtres, chaque filtre permettant d'obtenir un gradient de filtrage. Le gradient de filtrage maximisant un critère de classification indique le type de contour correspondant au pixel. Chaque type de contour est associé à une valeur de rehaussement qui est ajoutée aux pixels lors du filtrage SAO. La seconde forme de SAO est appelée rehaussement de bande (« band offset » en terminologie anglo-saxonne) et a pour but de compenser l'effet de la quantification sur des pixels appartenant à certaines plages (i.e. bande) de valeurs. Dans le filtrage par rehaussement de bande, l'ensemble des valeurs possibles pour un pixel, comprises le plus fréquemment entre 0 et 255 pour les flux vidéo sur 8 bits, est divisé en trente-deux plages de huit valeurs. Parmi ces trente-deux plages, quatre plages consécutives sont sélectionnées pour être rehaussées. Lorsqu'un pixel a une valeur comprise dans une des quatre plages de valeur à rehausser, une valeur de rehaussement est ajoutée à la valeur du pixel. La décision de mettre en oeuvre le filtrage SAO, et lorsque le filtrage SAO est mis en oeuvre, la forme du filtrage SAO, et les valeurs de rehaussement sont déterminées pour chaque CTB par le dispositif d'encodage par une optimisation débit/distorsion. Lors de l'étape 510 d'encodage entropique, le dispositif d'encodage insère des informations dans le flux vidéo binaire 511 permettant à un dispositif de décodage de déterminer si le filtrage SAO doit être appliqué à un CTB et, le cas échéant, la forme et les paramètres du filtrage SAO à appliquer. Lorsqu'un bloc est reconstruit, il est inséré lors d'une étape 520 dans une image reconstruite stockée dans une mémoire 521 d'images reconstruites aussi appelée mémoire d'images de référence. Les images reconstruites ainsi stockées peuvent alors servir d'images de référence pour d'autres images à coder. Lorsque tous les blocs d'une tranche sont codés, le flux vidéo binaire correspondant à la tranche est inséré dans un conteneur appelé unité d'abstraction du niveau réseau (« Network Abstraction Layer Unit (NALU) » en terminologie anglo-saxonne). En cas de transmission réseau, ces conteneurs sont insérés dans des paquets réseaux soit directement, soit dans des conteneurs intermédiaires de flux de transport (« transport stream » en terminologie anglo-saxonne), tels que les flux de transport MP4. Un conteneur contenant une tranche est appelé conteneur du niveau du codage vidéo (« Video Coding Layer (VCL) » en terminologue anglo-saxonne). D'autres types de conteneur ont été définis dans les standards HEVC et H264/AVC. Ces conteneurs sont en général des entêtes contenant des informations utiles pour le décodage d'une séquence vidéo comme les conteneurs SPS (ensemble de paramètres de séquence : « Sequence Parameter Set » en terminologie anglo-saxonne) ou pour le décodage d'un sous-ensemble d'images d'une séquence vidéo comme les conteneurs PPS. Chaque conteneur PPS comprend un identifiant permettant de le reconnaître. Chaque tranche est associée à un conteneur PPS. Pour ce faire, chaque tranche comprend un élément de syntaxe contenant l'identifiant du conteneur PPS correspondant à la tranche. De manière similaire, chaque conteneur SPS comprend un identifiant de conteneur SPS permettant de le reconnaître. Chaque conteneur PPS est associé à un conteur SPS. Pour ce faire, chaque conteneur PPS comprend un élément de syntaxe contenant l'identifiant du conteneur SPS associé avec le conteneur PPS. La Fig. 6 représente schématiquement une méthode de décodage d'un flux compressé selon le standard HEVC mise en oeuvre par un dispositif de décodage. Le décodage se fait bloc par bloc. Pour un bloc courant, il commence par un décodage entropique du bloc courant lors d'une étape 610. Le décodage entropique permet d'obtenir le mode de codage du bloc. Si le bloc a été encodé selon le mode de codage INTER, le décodage entropique permet d'obtenir un indice de vecteur de prédiction, un résiduel de mouvement, et un bloc résiduel. Lors d'une étape 608, un vecteur de mouvement est reconstruit pour le bloc courant en utilisant l'indice de vecteur de prédiction et le résiduel de mouvement. Si le bloc a été encodé selon le mode de codage INTRA, le décodage entropique permet d'obtenir une direction de prédiction et un bloc résiduel. Des étapes 612, 613, 614, 615 et 616 mises en oeuvre par le dispositif de décodage, sont en tous points identiques respectivement aux étapes 512, 513, 514, 515 et 516 mises en oeuvre par le dispositif d'encodage. Le dispositif de décodage applique ensuite un post filtrage de boucle lors d'une étape 617. Comme pour l'encodage, le post filtrage de boucle comprend pour le standard HEVC un filtrage de déblocage et un filtrage SAO, alors que le filtrage de boucle ne comprend qu'un filtrage de déblocage pour le standard H.264/AVC. Le filtrage de déblocage est mis en oeuvre par le dispositif de décodage lors d'une étape 618. Lors du décodage, le dispositif de décodage retrouve les paramètres P et t, en utilisant les éléments de syntaxe pps beta offset div2, pps tc offset div2, slice beta offset div2 et slice tc offset div2 écrits dans le flux vidéo binaire. Il doit par contre déterminer la forme du filtre à appliquer en fonction de la valeurs des pixels aux frontières des blocs et des paramètres et . Le filtrage SAO est mis en oeuvre par le dispositif de décodage lors d'une étape 619. Lors du décodage, le dispositif de décodage n'a pas à déterminer si le filtrage SAO doit être appliqué sur un bloc et, si le filtrage SAO doit être appliqué, le dispositif de décodage n'a pas à déterminer la forme de filtrage SAO à appliquer et les valeurs de rehaussement, puisque le dispositif de décodage trouvera ces informations dans le flux vidéo binaire. Si, pour un CTB, le filtrage SAO est de la forme rehaussement de contour, pour chaque pixel du CTB, le dispositif de décodage doit déterminer par filtrage le type de contour, et ajouter la valeur de rehaussement correspondant au type de contour déterminé. Si pour un CTB, le filtrage SAO est de la forme rehaussement de bande, pour chaque pixel du CTB, le dispositif de décodage compare la valeur du pixel à filtrer avec les plages de valeurs à rehausser, et si la valeur du pixel appartient à l'une des plages de valeurs à rehausser, la valeur de rehaussement correspondant à ladite plage de valeur est ajoutée à la valeur du pixel. Comme nous l'avons vu plus haut, le post filtrage de boucle fait partie des outils de compression apparus dans H.264/AVC et HEVC ayant permis d'améliorer les performances de compression. Le post filtrage de boucle a entraîné une augmentation de complexité de mise en oeuvre des standards de compression vidéo et notamment une augmentation de complexité de la mise en oeuvre du décodage. Afin de réduire la complexité de décodage d'un flux vidéo binaire, l'invention contrôle la mise en oeuvre du post filtrage de boucle par des modifications du flux binaire vidéo en fonction de fonctionnalités d'affichage demandées par un utilisateur. Les modifications du flux vidéo binaire interviennent avant le décodage du flux vidéo binaire. L'invention permet donc de diminuer le coût calculatoire du décodage, ce qui libère des capacités de calcul au niveau des dispositifs de décodage et permet ainsi notamment une mise en oeuvre de fonctionnalités avancées d'affichage. L'invention va maintenant être présentée dans le cadre d'une transmission de vidéos sur un réseau de communication. La Fig. lA représente schématiquement un système de transmission de vidéos comprenant un dispositif mettant en oeuvre l'invention. Le système de transmission de vidéos comprend une source vidéo 110 telle que, par exemple, un encodeur vidéo, une caméra vidéo numérique ou un disque dur numérique. La source vidéo 110 fournit, à un dispositif de transmission 111, un flux vidéo binaire encodé selon le standard HEVC ou selon le standard H264/AVC. Le dispositif de transmission 111 comprend un multiplexeur permettant de combiner le flux vidéo binaire avec d'autres flux binaires, tels que des flux audio binaires, pour former un flux binaire multiplexé. Le flux binaire multiplexé est par la suite transmis sur un réseau de communication 120 tel que, par exemple, le réseau Internet ou un réseau local LAN (« Local Area Network » en terminologie anglo-saxonne) filaire ou sans fil. Suite à la transmission, le flux binaire multiplexé est reçu par un dispositif de réception 112 comprenant un démultiplexeur. Le démultiplexeur extrait alors le flux vidéo binaire du flux binaire multiplexé et le dispositif de réception 112 transmet le flux vidéo binaire à un dispositif de modification de flux vidéo binaire 113 selon un aspect de l'invention. En fonction de la fonctionnalité d'affichage demandée par l'utilisateur, le dispositif de modification de flux vidéo binaire 113, que nous appelons par la suite pour simplifier dispositif de modification, peut modifier le flux vidéo binaire de manière à réduire la complexité du post filtrage de boucle. Le flux vidéo binaire modifié est ensuite transmis à un dispositif de décodage 114, qui décode le flux vidéo binaire modifié, le résultat du décodage étant affiché par un dispositif d'affichage 115. La Fig. 2 illustre schématiquement un exemple d'architecture matérielle d'un dispositif apte à mettre en oeuvre le dispositif de modification de flux vidéo binaire 113. Le dispositif 113 comporte, reliés par un bus de communication 205 : un processeur ou CPU (« Central Processing Unit » en anglais) 200; une mémoire vive RAM (« Random Access Memory » en anglais) 201; une mémoire morte ROM (« Read Only Memory » en anglais) 202; une unité de stockage 203 ou un lecteur de support de stockage, tel qu'un lecteur de cartes SD (« Secure Digital » en anglais) ou un disque dur HDD (« Hard Disk Drive » en anglais); au moins une interface 204 permettant d'échanger des données avec d'autres équipements. L'interface 204 permet au dispositif de modification 113 de recevoir des flux vidéo binaires, de transmettre des flux vidéo binaires modifiés et de recevoir des instructions de la part d'un utilisateur par l'intermédiaire, par exemple, d'un dispositif de commande (non représenté), tel qu'une télécommande, permettant à l'utilisateur de manipuler une interface graphique sur le dispositif d'affichage 115. Le processeur 200 est capable d'exécuter des instructions chargées dans la RAM 201 à partir de la ROM 202, d'une mémoire externe (non représentée), d'un support de stockage, ou du réseau de communication 120. Lorsque le dispositif de modification 113 est mis sous tension, le processeur 200 est capable de lire de la RAM 201 des instructions et de les exécuter. Ces instructions forment un programme d'ordinateur causant la mise en oeuvre, par le processeur 200, de tout ou partie des algorithmes et étapes décrits par la suite en relation avec le dispositif de modification 113. Tout ou partie des algorithmes et étapes décrits par la suite peut ainsi être implémenté sous forme logicielle par exécution d'un ensemble d'instructions par une machine programmable, tel qu'un DSP (« Digital Signal Processor » en anglais) ou un microcontrôleur, ou être implémenté sous forme matérielle par une machine ou un composant dédié, tel qu'un FPGA (« Field-Programmable Gate Array » en anglais) ou un ASIC (« Application-Specific Integrated Circuit » en anglais). La Fig. 3 représente schématiquement un algorithme permettant d'assurer la compatibilité d'un flux vidéo binaire avec des capacités calculatoires d'un dispositif de décodage de vidéos, lorsque le dispositif de décodage de vidéos est utilisé pour mettre en oeuvre des fonctionnalités d'affichage demandant un effort calculatoire important. L'algorithme débute lors d'une étape 300 par la réception par le dispositif de modification 113 d'un flux vidéo binaire encodé suivant le standard HEVC. Trois variables booléennes sont ensuite initialisées : une variable DBF _faible indiquant, si ladite variable est à vrai, que le filtrage de déblocage doit favoriser le filtre faible est initialisée à faux lors d'une étape 301 ; une variable DBF OFF indiquant, si elle est à vrai, que le filtrage de déblocage doit être désactivé est initialisée à faux lors d'une étape 302 ; une variable SAO OFF indiquant, si elle est à vrai, que le filtrage SAO doit être désactivé est initialisée à faux lors d'une étape 303. Le dispositif de modification 113 détermine ensuite quelle est la fonctionnalité d'affichage souhaitée par l'utilisateur. Chaque fonctionnalité d'affichage correspond à une complexité de mise en oeuvre. On suppose ici que le dispositif de modification 113 connaît la complexité de mise en oeuvre de chaque fonctionnalité d'affichage que pourrait formuler un utilisateur. Le dispositif de modification 113 compare alors ces informations sur la complexité de mise en oeuvre des fonctionnalités d'affichage avec des informations sur les capacités de traitement du dispositif de décodage 114. Cette comparaison permet au dispositif de modification 113 de déterminer quels sont les besoins de modification du flux vidéo binaire en termes de réduction de la complexité de décodage pour que le décodage de ce flux vidéo binaire, dans le cadre de la fonctionnalité d'affichage souhaitée par l'utilisateur, soit compatible avec les capacités de traitement du dispositif de décodage 114. Les modifications à apporter au flux vidéo binaire dépendent de ce besoin de réduction de la complexité de décodage. Dans un mode de réalisation, cette comparaison utilise en ensemble de seuils. Chaque seuil permettant de déterminer comment le dispositif de modification doit modifier le flux vidéo binaire. Si la complexité de mise en oeuvre est inférieure à un premier seuil, le flux vidéo binaire n'est pas modifié ; si la complexité de mise en oeuvre est comprise entre le premier seuil et un second seuil, le filtrage SAO est désactivé ; si la complexité de mise en oeuvre est comprise entre le second seuil et un troisième seuil, le filtrage SAO est désactivé et le filtrage de déblocage de faible complexité est privilégié; si la complexité de mise en oeuvre est supérieure au troisième seuil, le filtrage SAO et le filtrage de déblocage sont désactivés. Lors d'une étape 304, le dispositif de modification 113 détermine si l'utilisateur souhaite afficher la vidéo en mode accéléré. Dans ce cas, le dispositif de modification de flux binaire 113 fixe la variable DBF _faible à vrai lors d'une étape 305 et la variable SAO OFF à vrai lors d'une étape 306. Sinon, lors d'une étape 307, le dispositif de modification 113 détermine si l'utilisateur souhaite afficher deux vidéos selon un mode image dans image, une première vidéo étant affichée avec une résolution faible et incrustée dans une seconde vidéo affichée en pleine résolution. Dans ce cas, le dispositif de modification 113 fixe la variable DBF OFF à vrai lors d'une étape 308 et la variable SAO OFF à vrai lors d'une étape 309. Sinon, lors d'une étape 310, le dispositif de modification 113 détermine si l'utilisateur souhaite utiliser un mode multi applicatif. Un mode multi applicatif peut être une combinaison de plusieurs fonctionnalités d'affichage comme par exemple, l'affichage accéléré combiné avec le mode image dans image ou un mode mosaïque dans lequel plusieurs vidéos de faible résolution sont affichées simultanément. Si un mode multi applicatif est demandé, le dispositif de modification 113 détermine la complexité de mise en oeuvre du mode multi applicatif demandé. Lors d'une étape 311, le dispositif de modification 113 détermine si la complexité de mie en oeuvre est faible, par exemple entre le premier et le deuxième seuil. Un mode multi applicatif ayant une faible complexité de mise en oeuvre peut par exemple être une demande d'affichage en mode image dans image dans lequel la vidéo basse résolution est affichée en accéléré. Si c'est le cas, le dispositif de modification 113 fixe la variable SAO OFF à vrai lors d'une étape 312. Sinon, lors d'une étape 313, le dispositif de modification 113 détermine si la complexité de mise en oeuvre du mode multi applicatif est moyenne, par exemple entre le deuxième et le troisième seuil. Un mode multi applicatif ayant une complexité de mise en oeuvre moyenne peut par exemple être une demande d'affichage en mode image dans image dans lequel la vidéo pleine résolution est affichée en accéléré. Si c'est le cas, le dispositif de modification 113 fixe la variable DBF _faible à vrai lors d'une étape 314 et la variable SAO OFF à vrai lors d'une étape 315. Sinon, lors d'une étape 316, le dispositif de modification 113 détermine si la complexité de mise en oeuvre est élevée, par exemple supérieure au troisième seuil. Un mode multi applicatif ayant un coût calculatoire élevé peut par exemple être une demande d'affichage d'une mosaïque de plusieurs vidéos de faibles résolutions. Si c'est le cas, le dispositif de modification 113 fixe la variable DBF OFF à vrai lors d'une étape 317 et la variable SAO OFF à vrai lors d'une étape 318. Si lors de l'étape 310, aucune fonctionnalité d'affichage n'est demandée ou si la fonctionnalité d'affichage demandée n'est pas reconnue, le dispositif de modification 113 ne change pas les variables DBF faible, DBF OFF et SAO OFF. Dans ce cas, l'affichage est un affichage classique d'une vidéo en pleine résolution. On peut remarquer que les variables DBF faible et DBF OFF ne peuvent pas être toutes les deux égales à vrai. Il n'est en effet pas nécessaire de modifier un flux vidéo binaire de manière à privilégier la mise en oeuvre du filtre de déblocage de faible complexité alors que le filtrage de déblocage est destiné à être désactivé. Après avoir pris en compte les souhaits de fonctionnalité d'affichage de l'utilisateur, le dispositif de modification 113 commence la modification du flux vidéo reçu. Ce flux vidéo a été reçu sous forme de paquets réseau. On considère ici que chaque paquet réseau contient un seul conteneur. Le dispositif de modification 113 traite les paquets un par un selon leur ordre d'arrivée. Lors d'une étape 319, le dispositif de modification 113 retire le conteneur du paquet réseau. Le dispositif de modification 113 vérifie ensuite, dans une étape 320, la valeur de la variable DBF _faible. Si la variable DBF _faible est à vrai, le conteneur est traité dans une première étape de modification 321 de portions du flux vidéo binaire. Un exemple de mise en oeuvre de cette première étape de modification 321 est détaillé par la suite en relation avec la Fig. 7. La première étape de modification 321 transforme une portion de flux vidéo binaire correspondant au conteneur de manière à privilégier l'utilisation du filtre de déblocage faible lors du décodage. Des éléments de syntaxe contrôlant la complexité de mise en oeuvre du filtrage de déblocage sont alors modifiés. Lors d'une étape 322 suivant l'étape 321 (ou l'étape 320 si la variable DBF _faible est à faux), le dispositif de modification 113 teste la valeur de la variable DBF OFF. Si la variable DBF OFF est à vrai, le conteneur est traité par une seconde étape de modification de portions du flux vidéo binaire 323. Un exemple de mise en oeuvre de cette seconde étape de modification 323 est détaillé par la suite en relation avec la Fig. 8. La seconde étape de modification 323 transforme une portion de flux vidéo binaire correspondant au conteneur de manière à désactiver le filtrage de déblocage lors du décodage. Des éléments de syntaxe contrôlant la complexité de mise en oeuvre du filtrage de déblocage sont alors modifiés ou supprimés. Lors d'une étape 324 suivant l'étape 323 (ou l'étape 322 si la variable DBF OFF est à faux), le dispositif de modification teste la valeur de la variable SAO OFF. Si la variable SAO OFF est à vrai, le conteneur est traité par une troisième étape de modification de portions du flux vidéo binaire 325. Un exemple de mise en oeuvre de cette troisième étape de modification 325 est détaillé par la suite en relation avec la Fig. 9. La troisième étape de modification 325 transforme une portion de flux vidéo binaire correspondant au conteneur de manière à désactiver le filtrage SAO lors du décodage. Des éléments de syntaxe contrôlant la complexité de mise en oeuvre du filtrage SAO sont alors supprimés ou modifiés. L'étape 325 (ou l'étape 324 si la variable SAO OFF est à faux) est suivie d'une étape 326 au cours de laquelle le conteneur est transmis au dispositif suivant le dispositif de modification 113, i .e. le dispositif de décodage 114 dans l'exemple de la Fig. 1A. La Fig. 3 représente schématiquement un procédé permettant d'assurer la compatibilité de fonctionnalités d'affichage vidéo avec des capacités calculatoires d'un dispositif de décodage de vidéos. Ce procédé est adapté à des flux vidéo binaires encodés selon le standard HEVC. Ce procédé peut être adapté à des flux vidéo binaires encodés selon le standard H.264/AVC en supprimant toutes les étapes relatives au filtrage SAO (étapes 303, 306, 309, 312, 315, 318, 324, 325). Dans un mode de réalisation particulier, lors de l'étape 300, le dispositif de modification 113 reconnaît le standard d'encodage appliqué lors de l'encodage du flux vidéo binaire entre HEVC et H.264/AVC, ce qui permet dans la suite du procédé d'appliquer ou pas les étapes relatives au filtrage SAO. Dans ce mode de réalisation, le dispositif de décodage 114 est apte à décoder des flux vidéo binaires encodés selon les standards HEVC et H264/AVC. On peut remarquer que lorsque le procédé est appliqué à un flux vidéo binaire encodé selon le standard H.264/AVC, seuls des éléments de syntaxe compris dans des conteneurs SPS, PPS et dans des entêtes de tranche sont modifiés, ce qui facilite la modification du flux vidéo binaire. Par ailleurs, dans l'algorithme décrit en relation avec la Fig. 3, les modifications à apporter au flux vidéo binaire dépendent de fonctionnalités d'affichage souhaitées par un utilisateur. Dans un autre mode de réalisation alternatif, les modifications à apporter au flux vidéo binaire dépendent d'outils de décodage implémentés par le dispositif de décodage 114. Par exemple, certains dispositifs de décodage implémentent des outils de post filtrage en dehors de la boucle de prédiction. Ces outils de post filtrage en dehors de la boucle de prédiction peuvent être très performants et diminuer l'intérêt d'utiliser le filtrage de déblocage et le filtrage SAO. De plus, ces outils de post filtrage en dehors de la boucle de prédiction augmentent eux aussi la complexité de décodage. Dans certains cas, on peut préférer utiliser ces outils plutôt que les outils de filtrage de boucle spécifiés par les standards de compression vidéo. Par conséquent, dans ce mode de réalisation alternatif, des informations sur les outils de post filtrage hors boucle de prédiction sont fournies au dispositif de modification 113, qui modifie et/ou désactive la mise en oeuvre de filtrage SAO et/ou le filtrage de déblocage si nécessaire. Par ailleurs, la Fig. 3 représente schématiquement un algorithme permettant d'assurer la compatibilité d'un flux vidéo binaire avec des capacités calculatoires d'un dispositif de décodage de vidéos, lorsque le dispositif de décodage de vidéos est utilisé pour mettre en oeuvre des fonctionnalités d'affichage demandant un effort calculatoire important. Dans un autre mode de réalisation, cet algorithme pourrait permettre d'assurer la compatibilité d'un flux vidéo binaire avec les capacités en mémoire d'un dispositif de décodage de vidéos. Dans ce mode de réalisation, chaque fonctionnalité d'affichage correspond à un coût en mémoire. On suppose ici que le dispositif de modification 113 connaît le coût en mémoire correspondant à la mise en oeuvre de chaque fonctionnalité d'affichage que pourrait formuler un utilisateur. Le dispositif de modification 113 compare alors ces informations sur le coût en mémoire des fonctionnalités d'affichage avec des informations sur les capacités en mémoire du dispositif de décodage 114. Cette comparaison permet au dispositif de modification 113 de déterminer quels sont les besoins de modification du flux vidéo binaire en termes de réduction du coût en mémoire pour que le décodage de ce flux vidéo binaire, dans le cadre de la fonctionnalité d'affichage souhaitée par l'utilisateur, soit compatible avec les capacités en mémoire du dispositif de décodage 114. Les modifications à apporter au flux vidéo binaire dépendent de ce besoin de réduction du coût en mémoire. Ce mode de réalisation est combinable avec le mode de réalisation basé sur le coût calculatoire. En cas de combinaison, la complexité de mise en oeuvre du décodage concerne à la fois une complexité calculatoire, mais aussi une complexité en termes d'utilisation de la mémoire du dispositif de décodage 114. Le flux vidéo binaire modifié par le dispositif de modification 113 est alors compatible avec les capacités calculatoires du dispositif de décodage 114, mais aussi avec les capacités en mémoire du dispositif de décodage 114. La Fig. 7 détaille un algorithme mis en oeuvre par le dispositif de modification 113 permettant de transformer un conteneur HEVC de sorte à privilégier l'utilisation du filtre de déblocage faible lors du décodage. L'algorithme débute par la réception d'un conteneur lors d'une étape 700. Le type du conteneur reçu est ensuite vérifié par le dispositif de modification 113 lors d'une étape 701. Si le conteneur est un conteneur PPS, le dispositif de modification 113 recherche dans une étape 702 l'élément de syntaxe pps beta offset div2 permettant de contrôler la valeur du paramètre du filtrage de déblocage. Si l'élément de syntaxe pps beta offset div2 est présent, le dispositif de modification force la valeur de l'élément de syntaxe pps beta offset div2 à la valeur « -6 ». En fixant la valeur de l'élément de syntaxe pps beta offset div2 à la valeur « -6 » on augmente les chances d'utilisation du filtre de déblocage à quatre coefficients lors du décodage. Dans un mode de réalisation alternatif, le dispositif de modification peut aussi forcer la valeur de l'élément de syntaxe pps tc offset div2 à la valeur « -6 », ce qui a pour effet de favoriser encore plus l'utilisation du filtre de déblocage à 4 coefficients lors du décodage. Après la mise en oeuvre de l'étape 703, ou en cas de réponse négative lors de l'étape 701 ou 702, le dispositif de modification 113 attend la réception d'un nouveau conteneur. La réception d'un nouveau conteneur provoque le retour à l'étape 700. Si le conteneur n'est pas de type PPS, le dispositif de modification 113 vérifie, lors d'une étape 704, si le conteneur est de type VCL. Si c'est le cas, le dispositif de modification 113 recherche, lors d'une étape 705, dans l'entête de la tranche correspondant au conteneur' l'élément de syntaxe slice beta offset div2 permettant de contrôler la valeur du paramètre du filtrage de déblocage au niveau d'une tranche. Si l'élément de syntaxe slice beta offset div2 est présent, le dispositif de modification 113 fixe la valeur de l'élément de syntaxe slice beta offset div2 à la valeur « -6 ». En fixant la valeur de l'élément de syntaxe slice beta offset div2 à la valeur « -6 » on augmente les chances d'utilisation du filtre de déblocage faible lors du décodage. Dans une autre mise en oeuvre, l'élément de syntaxe slice beta offset div2 est supprimé dans la portion de flux vidéo binaire correspondant à la tranche. Dans cette mise en oeuvre, la valeur de l'élément de syntaxe slice beta offset div2 est recopiée de la valeur de l'élément de syntaxe PPS beta offset div2 contenu dans le conteneur PPS correspondant à la tranche. Dans un mode de réalisation alternatif, le dispositif de modification peut aussi forcer la valeur de l'élément de syntaxe slice tc offset div2 à la valeur « -6 », ou supprimer l'élément de syntaxe slice tc offset div2 dont la valeur peut être recopiée de la valeur de l'élément de syntaxe pps tc offset div2 Après la mise en oeuvre de l'étape 706, ou en cas de réponse négative lors de l'étape 704 ou 705, le dispositif de modification 113 attend la réception d'un nouveau conteneur. La réception d'un nouveau conteneur provoque le retour à l'étape 700. La Fig. 8 détaille un algorithme mis en oeuvre par le dispositif de modification 113 permettant de transformer un conteneur HEVC de sorte à désactiver l'utilisation du filtrage de déblocage lors du décodage. Une première partie 821 de l'algorithme s'applique lors de la réception d'un conteneur PPS. Cette première partie permet d'assurer la cohérence avec la désactivation du filtrage de déblocage d'un ensemble d'éléments de syntaxe d'un conteneur PPS relatif au filtrage de déblocage. L'algorithme débute par la réception d'un conteneur lors d'une étape 800. Le type du conteneur reçu est ensuite vérifié par le dispositif de modification 113 lors d'une étape 801. Si le conteneur est un conteneur PPS, le dispositif de modification 113 recherche lors d'une étape 802 un élément de syntaxe Deblockingjilter controlpresentfiag, indiquant la présence d'éléments de syntaxe relatifs au filtrage de déblocage dans le conteneur. Lorsque l'élément de syntaxe Deblocking j'iller controlpresentfiag est trouvé, le dispositif de modification 113 vérifie la valeur de l'élément de syntaxe Deblockingjilter controlpresent fiag. Si la valeur de l'élément de syntaxe Deblockingjilter controlpresentfiag est différente de « 1 », le dispositif de modification fixe l'élément de syntaxe Deblockingjilter controlpresentfiag à la valeur « 1 » lors d'une étape 803, puis crée un élément de syntaxe deblockingjilter override enabledfiag, autorisant une tranche à modifier des valeurs de paramètres relatifs au filtrage de déblocage, lors d'une étape 804 et un élément de syntaxe pps deblocking j'iller disabledfiag, indiquant que les tranches faisant référence à ce conteneur PPS ne mettent pas en oeuvre le filtrage de déblocage, lors d'une étape 805. L'étape 805 (ou l'étape 802 lorsque l'élément de syntaxe Deblockingjilter controlpresentfiag est égal à « 1 ») est suivie par une étape 806. Si l'élément de syntaxe Deblockingjilter controlpresentfiag est égal à « 1 », le dispositif de modification 113 recherche l'élément de syntaxe deblocking_filter override enabledfiag. L'élément de syntaxe deblockingjilter override enabledfiag est alors mis à « 0 ». Si l'élément de syntaxe Deblocking j'iller controlpresent fiag etait égal à « 0 », l'élément de syntaxe deblocking j'iller override enabledfiag est alors mis à « 0 » et l'élément de syntaxe deblockingfilter override enabledfiag est inséré dans la portion de flux binaire correspondant au conteneur. Lors d'une étape 807, si l'élément de syntaxe Deblockingfilter controlpresentfiag est égal à « 1 », le dispositif de modification 113 recherche l'élément de syntaxe pps deblocking,filter disabledfiag. L'élément de syntaxe pps deblockingfilter disabledfiag est alors mis à « 1 ». Si l'élément de syntaxe Deblockingfilter controlprésent fiag est égal à « 0 », l'élément de syntaxe pps deblockingfilter disabledfiag est alors mis à « 1 » et l'élément de syntaxe pps deblockingfilter disabledfiag est inséré dans la portion de flux binaire correspondant au conteneur. Au cours d'une étape 808, le dispositif de modification 113 recherche dans la portion de flux vidéo binaire correspondant au conteneur l'élément de syntaxe pps beta offset div2 permettant de contrôler la valeur du paramètre P du filtre de déblocage. Si l'élément de syntaxe pps beta offset div2 est présent, il est supprimé dans la portion de flux vidéo binaire correspondant au conteneur lors d'une étape 809. L'étape 808 (ou l'étape 809 si l'élément de syntaxe pps beta offset div2 est présent) est suivie d'une étape 810 au cours de laquelle le dispositif de modification 113 recherche dans la portion de flux vidéo binaire correspondant au conteneur l'élément de syntaxe pps tc offset div2 permettant de contrôler la valeur du paramètre t, du filtre de déblocage. Si l'élément de syntaxe pps tc offset div2 est présent, il est supprimé dans la portion de flux vidéo binaire correspondant au conteneur lors d'une étape 811. Après avoir transformé le conteneur PPS, le dispositif de modification 113 attend la réception d'un nouveau conteneur. La réception d'un nouveau conteneur provoque le retour à l'étape 800. Si lors de l'étape 801, le conteneur n'est pas un conteneur PPS, le dispositif de modification 113 vérifie si c'est un conteneur VCL lors d'une étape 812. Si le conteneur n'est pas un conteneur VCL, le dispositif de modification 113 attend la réception d'un nouveau conteneur. La réception d'un nouveau conteneur provoque le retour à l'étape 800. Si le conteneur est un conteneur VCL, le dispositif de modification 113 applique une seconde partie 822 de l'algorithme, telle que représentée dans la Fig. 8. En appliquant cette seconde partie 822 de l'algorithme, le dispositif de modification 113 assure la cohérence avec la désactivation du filtrage de déblocage d'un ensemble d'éléments de syntaxe d'une tranche relatif au filtrage de déblocage. Cette seconde partie 822 de l'algorithme consiste à supprimer tous les éléments de syntaxe relatifs au filtrage de déblocage de l'entête de la tranche contenu dans le conteneur VCL. Dans une étape 813, le dispositif de modification 113 recherche un élément de syntaxe Deblockingfilter override fiag, indiquant la présence de paramètres relatifs au filtrage de déblocage dans la tranche. Si l'élément de syntaxe Deblockingfilter override fiag est présent, le dispositif de modification 113 supprime l'élément de syntaxe Deblockingfilter override fiag de la portion de flux vidéo binaire correspondant au conteneur lors d'une étape 814. L'étape 813 (ou l'étape 814 si l'élément de syntaxe Deblockingfilter override fiag est présent) est suivie d'une étape 815 au cours de laquelle le dispositif de modification 113 recherche un élément de syntaxe Slice deblockingfilter disabledfiag indiquant si le filtrage de déblocage est activé ou pas pour la tranche contenue dans le conteneur. Si l'élément de syntaxe Slice deblockingfilter disabledfiag est présent, le dispositif de modification supprime l'élément de syntaxe Slice deblockingfilter disabledfiag de la portion de flux vidéo binaire correspondant au conteneur lors d'une étape 816. L'étape 815 (ou l'étape 816 si l'élément de syntaxe Slice deblockingfilter disabledfiag est présent) est suivie d'une étape 817 au cours de laquelle le dispositif de modification 113 recherche l'élément de syntaxe slice beta offset div 2. Si l'élément de syntaxe slice beta offset div 2 est présent, le dispositif de modification supprime l'élément de syntaxe slice beta offset div 2 de la portion de flux vidéo binaire correspondant au conteneur lors d'une étape 818. L'étape 817 (ou l'étape 818 si l'élément de syntaxe slice beta offset div 2 est présent) est suivie d'une étape 819 au cours de laquelle le dispositif de modification 113 recherche l'élément de syntaxe slice tc offset div 2. Si l'élément de syntaxe slice tc offset div 2 est présent, le dispositif de modification supprime l'élément de syntaxe slice tc offset div 2 de la portion de flux vidéo binaire correspondant au conteneur lors d'une étape 820. Après la mise en oeuvre de l'étape 819 (ou l'étape 820 si l'élément de syntaxe slice tc offset div 2 est présent), le dispositif de modification 113 attend la réception d'un nouveau conteneur. La réception d'un nouveau conteneur provoque le retour à l'étape 800. La Fig. 9 détaille un algorithme mis en oeuvre par le dispositif de modification 113 permettant de transformer un conteneur HEVC de sorte à désactiver l'utilisation du filtrage SAO lors du décodage. Une première partie 914 de l'algorithme s'applique lors de la réception d'un conteneur SPS. Cette première partie 914 permet d'assurer la cohérence d'un élément de syntaxe d'un conteneur SPS relatif au filtrage SAO avec la désactivation du filtrage SAO. La première partie 914 débute par la réception d'un conteneur lors d'une étape 901. Le type du conteneur reçu est ensuite vérifié par le dispositif de modification 113 lors d'une étape 902. Si le conteneur est un conteneur SPS, le dispositif de modification 113 force à « 0 », dans une étape 903, la valeur d'un 10 élément de syntaxe Sample adaptive offset enabledfiag indiquant si le filtrage SAO doit être mis en oeuvre dans les tranches faisant référence à ce conteneur SPS. Suite à l'étape 903, le dispositif de modification 113 attend la réception d'un nouveau conteneur. La réception d'un nouveau conteneur provoque le retour à l'étape 901. Si le conteneur n'est pas un conteneur SPS, le dispositif de modification 113 15 vérifie si le conteneur est un conteneur VCL. Si le conteneur n'est pas un conteneur VCL, le dispositif de modification 113 attend la réception d'un nouveau conteneur. La réception d'un nouveau conteneur provoque le retour à l'étape 901. Si le conteneur reçu est un conteneur VCL, le dispositif de modification 113 applique une seconde partie 915 de l'algorithme. Dans cette seconde partie 915, le 20 dispositif de modification 113 assure la cohérence d'éléments de syntaxe d'un conteneur VCL relatif au filtrage SAO avec la désactivation du filtrage SAO. La seconde partie 915 débute par la recherche lors d'une étape 905 d'un élément de syntaxe Slice sao lumafiag indiquant si le filtrage SAO est appliqué sur la composante de luminance des pixels dans la tranche contenue dans le conteneur. Si 25 l'élément de syntaxe Slice sao lumafiag est présent, le dispositif de modification 113 supprime lors d'une étape 906 l'élément de syntaxe Slice sao luma fiag de la portion de flux vidéo binaire correspondant au conteneur. L'étape 905 (ou l'étape 906 si l'élément de syntaxe Slice sao lumafiag est présent) est suivie d'une étape 907. Lors de l'étape 907, le dispositif de modification 113 recherche un élément de 30 syntaxe Slice sao chroma fiag indiquant si le filtrage SAO est appliqué sur la composante de chrominance des pixels dans la tranche contenue dans le conteneur. Si l'élément de syntaxe Slice sao chroma fiag est présent, le dispositif de modification 113 supprime lors d'une étape 908 l'élément de syntaxe Slice sao chroma fiag de la portion de flux vidéo binaire correspondant au conteneur. L'étape 907 (ou l'étape 908 si l'élément de syntaxe Slice sao chroma fiag est présent) est suivie d'une étape 909. Dans une autre mise en oeuvre des étapes 906 et 908, les éléments de syntaxe Slice sao lumafiag et Slice sao chroma fiag sont mis à la valeur « 0 ». La suite de l'algorithme permet de parcourir l'ensemble des CTB contenus dans la tranche correspondant au conteneur VCL. Il est nécessaire en effet de vérifier pour chaque CTB, si le CTB contient des éléments de syntaxe relatifs au filtrage SAO et le cas échéant, de supprimer ces éléments de syntaxe. Lors de l'étape 909, une variable n utilisée pour parcourir l'ensemble des CTB de la tranche est initialisée à la valeur « 0 ». Lors d'une étape 910, la variable n est comparée au nombre Nctb de CTB dans la tranche. Si n est inférieur à Nctb, le dispositif de modification 113 recherche des éléments de syntaxe relatifs au filtrage SAO dans le CTB. Si le CTB ne contient aucun élément de syntaxe relatif au filtrage SAO, la variable n est incrémentée d'une unité et l'algorithme retourne à l'étape 910. Si le CTB contient des éléments de syntaxe relatifs au filtrage SAO, ces éléments de syntaxe sont supprimés de la portion de flux vidéo binaire correspondant au CTB lors d'une étape 912. La suppression concerne par exemple les éléments de syntaxe suivants : sao merge le ft fiag, sao merge up fiag, sao type idac luma, sao type idx chroma, sao offset abs, sao offset se, sao band_position, sao eo class luma, sao eo class chroma. L'étape 912 est suivie de l'étape 913. Jusque là, nous avons considéré que la même fonctionnalité d'affichage était appliquée tout au long d'un flux vidéo. Dans une autre mode de réalisation, la fonctionnalité d'affichage peut être modifiée à tout moment au cours de l'affichage d'un flux vidéo. Dans ce cas, les conteneurs PPS, SPS et VCL pourront être adaptés à tout moment suivant les besoins. Les tranches peuvent faire référence à des conteneurs SPS et PPS adaptés à la fonctionnalité désirée par un utilisateur à un certain moment. Le dispositif de modification 113 donne alors respectivement à ces conteneurs SPS et PPS des indices de conteneur SPS et des indices de conteneur PPS permettant des les différencier des conteneurs SPS et PPS présents dans le flux vidéo binaire initial avant modification. De plus, nous avons décrit le dispositif de modification 113 transformant des conteneurs correspondant à un seul flux vidéo binaire. Dans un autre mode de réalisation, le dispositif de modification 113 traite des conteneurs provenant de flux vidéo binaires différents et applique à ces conteneurs des transformations différentes en fonction de la fonctionnalité d'affichage visée. Ces différents flux vidéo binaires modifiés sont ensuite décodés en parallèle par le dispositif de décodage 114 et combinés par le dispositif d'affichage 115, par exemple, pour incruster une vidéo de basse résolution dans une vidéo de haute résolution ou pour afficher une mosaïque de vidéo. Les différents flux vidéo binaire peuvent d'ailleurs être encodés suivant des standards différents, certains étant encodés selon le standard HEVC et d'autres étant encodés selon le standard H.264/AVC. Dans ce mode de réalisation, le dispositif de décodage 114 est apte à décoder des flux vidéo binaires encodés selon les standards HEVC et H.264/AVC. Enfin, dans la Fig. 1A, le dispositif de modification 113 est placé entre le dispositif de réception 112 et le dispositif de décodage 114. Dans une mise en oeuvre alternative illustrée par la Fig. 1B, le dispositif de modification peut aussi être placé entre le dispositif d'encodage 110 et le dispositif de transmission 111. Dans ce cas toutefois il est nécessaire d'utiliser un moyen de transmission des souhaits de fonctionnalité d'affichage de l'utilisateur au dispositif de modification 113. On peut pour cela utiliser des requêtes RTSP (protocole de transmission temps réel : « Real Time Streaming Protocol » en terminologie anglo-saxonne) pour indiquer au dispositif de modification 113 une information représentative du type de fonctionnalité d'affichage désirée par l'utilisateur. REVENDICATIONS1) Procédé de modification d'un flux vidéo binaire encodé selon un algorithme de codage vidéo comprenant une boucle de prédiction et un post filtrage de boucle intégré dans la boucle de prédiction, caractérisé en ce qu'un dispositif (113) effectue les étapes suivantes : rechercher (702, 705, 802, 806, 807, 808, 810, 813, 815, 817, 819, 903, 905, 907, 911) un élément de syntaxe relatif au post filtrage de boucle dans le flux vidéo binaire, l'élément de syntaxe étant utilisé par un dispositif de décodage (114) pour contrôler une complexité de mise en oeuvre du post filtrage de boucle; et modifier (321, 323, 325, 703, 706, 806, 807, 903) une valeur de l'élément de syntaxe ou supprimer (321, 323, 325, 809, 811, 814, 816, 818, 820, 906, 908, 912) l'élément de syntaxe de sorte à obtenir une réduction de la complexité de mise en oeuvre du post filtrage de boucle par le dispositif de décodage. 2) Procédé selon la revendication 1, caractérisé en ce que le post filtrage de boucle comprend un filtrage de déblocage et/ou un filtrage SAO. 3) Procédé selon la revendication 2, caractérisé en ce que, le filtrage de déblocage atténuant des discontinuités entre des blocs de pixels et comprenant un filtrage de forte complexité atténuant fortement les discontinuités entre les blocs de pixels et un filtrage de faible complexité atténuant faiblement les discontinuités entre les blocs de pixels, lorsque la valeur de l'élément de syntaxe a été modifiée et que l'élément de syntaxe est relatif au filtrage de déblocage, ladite valeur est modifiée (703, 706) de sorte à favoriser une utilisation par le dispositif de décodage du filtrage de déblocage de faible complexité par rapport au filtrage de déblocage de forte complexité. 4) Procédé selon la revendication 2, caractérisé en ce que, lorsque la valeur de l'élément de syntaxe a été modifiée et que l'élément de syntaxe est relatif au filtrage de déblocage ou relatif au filtrage SAO, la modification (803, 806, 807, 903) de la valeur de l'élément de syntaxe permet de désactiver respectivement la mise en oeuvre du filtrage de déblocage ou la mise en oeuvre du filtrage SAO par le dispositif de décodage. 5) Procédé selon la revendication 2, caractérisé en ce que, lorsque l'élément de syntaxe est supprimé et que l'élément de syntaxe est relatif au filtrage de déblocage ou relatif au filtrage SAO, la suppression (809, 811, 814, 816, 818, 820, 906, 908, 912) de l'élément de syntaxe permet de désactiver respectivement la mise en oeuvre du filtrage de déblocage ou la mise en oeuvre du filtrage SAO par le dispositif de décodage. 6) Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que la valeur de l'élément de syntaxe modifié et/ou l'élément de syntaxe supprimé dépendent d'une information représentative d'un besoin de réduction d'une complexité de décodage. 7) Procédé selon la revendication 6, caractérisé en ce que le besoin de réduction de la complexité de décodage dépend d'une fonctionnalité d'affichage souhaitée par un utilisateur pour un affichage, sur un dispositif d'affichage (115), d'images correspondant au flux vidéo binaire. 8) Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que le procédé comprend en outre les étapes suivantes : - recevoir le flux vidéo binaire d'un dispositif de réception (112), le flux vidéo binaire étant reçu par le dispositif de réception par l'intermédiaire d'un réseau de communication (120); et - transmettre au dispositif de décodage un flux vidéo binaire modifié résultant de la modification du flux vidéo binaire. 9) Procédé selon l'une quelconque des revendications 1 à 7, caractérisé en ce que le procédé comprend en outre les étapes suivantes : - recevoir le flux vidéo binaire d'un dispositif d'encodage (110); - recevoir une information représentative d'un besoin de réduction d'une complexité de décodage par l'intermédiaire d'un réseau de communication (120); et - transmettre, à un dispositif de transmission (111), un flux vidéo binaire modifié résultant de la modification, en vue d'une transmission du flux vidéo binaire modifié sur le réseau de communication. 10) Procédé selon l'une quelconque des revendications 1 à 9, caractérisé en ce que ledit algorithme de codage vidéo est basé sur le standard H.264/AVC ou sur le standard HEVC. 11) Dispositif de modification (113) d'un flux vidéo binaire encodé selon un algorithme de codage vidéo comprenant une boucle de prédiction et un post filtrage de boucle intégré dans la boucle de prédiction, caractérisé en ce que le dispositif comprend: des moyens pour rechercher (702, 705, 802, 806, 807, 808, 810, 813, 815, 817, 819, 903, 905, 907, 911) dans le flux vidéo binaire un élément de syntaxe relatif au post filtrage de boucle, l'élément de syntaxe étant utilisé par un dispositif de décodage (114) pour contrôler la complexité de mise en oeuvre du post filtrage de boucle ; et des moyens pour modifier (321, 323, 325, 703, 706, 806, 807, 903) une valeur de l'élément de syntaxe et/ou des moyens pour supprimer (321, 323, 325, 809, 811, 814, 816, 818, 820, 906, 908, 912) l'élément de syntaxe de sorte à obtenir une réduction de la complexité de mise en oeuvre du post filtrage de boucle par le dispositif de décodage. 12) Système de communication d'un flux vidéo binaire en vue d'un affichage par un dispositif d'affichage (115), le flux vidéo binaire ayant été encodé selon un algorithme de codage vidéo comprenant une boucle de prédiction et un post filtrage de boucle intégré dans la boucle de prédiction, le système comprenant un dispositif de décodage (114) apte à décoder le flux vidéo binaire et apte à transmettre au dispositif d'affichage (115) des images correspondant à un résultat du décodage du flux vidéo binaire, caractérisé en ce que le système comprend un dispositif de modification (113) d'un flux vidéo binaire selon la revendication 11, le dispositif de modification étant apte à fournir au dispositif de décodage un flux vidéo binaire modifié résultant de la modification par le dispositif de modification du flux vidéo binaire. 13) Produit programme d'ordinateur, caractérisé en ce qu'il comporte des instructions pour mettre en oeuvre, par un dispositif, le procédé selon l'une quelconque des revendications 1 à 10, lorsque ledit programme est exécuté par un processeur dudit dispositif. 14) Moyens de stockage, caractérisés en ce qu'ils stockent un programme d'ordinateur comportant des instructions pour mettre en oeuvre, par un dispositif, le procédé selon l'une quelconque des revendications 1 à 10, lorsque ledit programme est exécuté par un processeur dudit dispositif