Brevet FR3082689A1 — publié le 20191220

Procédé d'analyse de la complexité d'un contenu multimédia source pour une diffusion à la demande Le domaine de l'invention se rapporte à l'analyse de la complexité d'un contenu multimédia source en vue d'une diffusion à la demande, notamment en direct, à au moins un terminal de réception. En particulier, l'analyse de la complexité permet par la suite de sélectionner des profils d'encodage, ou profils de compression, du contenu multimédia source. Au cours des dernières années, la distribution de la télévision numérique a connu plusieurs évolutions. De nouveaux services audiovisuels tels que la vidéo à la demande (VOD) ou la télévision de rattrapage (Catch-Up TV) se sont développés et ont conduit au développement d'infrastructures réseaux offrant une bande passante plus large afin de faciliter la fourniture de tels services en plus de la distribution télévisuelle traditionnelle (Broadcast). Ces évolutions ont entrainé la création d'un nouveau type de services, appelé services OTT (Over-The-Top) ou services par contournement, assurant la livraison multi-écrans de contenus multimédias (vidéo et audio notamment) sur Internet. La participation d'un opérateur de réseau traditionnel dans le contrôle de la distribution du contenu est superflue pour que les services OTT fonctionnent. Ainsi, les services OTT sont fournis par l'intermédiaire de réseaux dits non managés, c'est-à-dire des réseaux dont la qualité de service (QoS) ou la bande passante varie pour chaque client et varie dans le temps. La fourniture de services OTT fonctionne en point à point, chaque client disposant de sa propre connexion pour télécharger les contenus multimédias. Aussi, lorsque le nombre de clients augmente, la bande passante consommée augmente également ce qui entraine une surcharge des équipements amonts des fournisseurs de services OTT et aussi une surcharge des réseaux avals de distribution jusqu'à l'utilisateur final. Cette surcharge est notamment accentuée par la multiplicité des formats de distribution des contenus multimédias qui obligent les fournisseurs de services OTT à conserver et gérer un même contenu sous différents formats. La multiplicité des formats, aussi appelé profils, est duc à l'hétérogénéité des conditions possibles de diffusion d'un contenu multimédia. Ainsi, les contraintes matérielles, la bande passante disponible, l'état de la connexion pour télécharger et diffuser les contenus 2 multimédias sont. autant de paramètres variables d'un client à un autre expliquant. la nécessité d'une multiplicité des profils disponibles pour un même contenu multimédia. En amont de la sélection des différents formats, ou profils, qui seront proposés aux utilisateurs lors de la diffusion d'un contenu multimédia, il est souvent. nécessaire de procéder à une 5 analyse de la complexité du contenu multimédia en question. Cette analyse permet de déterminer toute une gamme de formats potentiels. Dans l'art antérieur, cette analyse de la complexité consiste à encoder le contenu multimédia selon différents formats, puis à le décoder pour analyser la qualité vidéo obtenue en regard des différents formats testés. Une telle analyse est particulièrement coûteuse en ressources 10 puisqu'elle nécessite un grand nombre d'encodages du même contenu multimédia pour évaluer différents formats. Par ailleurs, une telle analyse de la complexité n'est pas adaptée à la diffusion en direct. La présente invention vient améliorer la situation. L'invention dont il est question ici concerne un procédé mis en oeuvre par des moyens 15 informatiques en vue d'encoder numériquement un contenu multimédia source en un ou plusieurs flux vidéo pour une diffusion à la demande à au moins un terminal de réception. Le procédé comprend les étapes suivantes: - générer un ensemble de versions du contenu multimédia, chaque version étant caractérisée par une résolution et comprenant une succession d'images, 20 - déterminer, pour chaque image de la succession d'images de chaque version, au moins une caractéristique temporelle et au moins une caractéristique spatiale, - calculer, pour chaque image de la succession d'images de chaque version, une gamme de valeurs de débit vidéo, chaque valeur de débit vidéo étant calculée par application d'une fonction prédéterminée à l'au moins une caractéristique 25 temporelle de l'image, l'au moins une caractéristique spatiale de l'image et une valeur d'une gamme donnée de valeurs théoriques relatives à une qualité d'encodage visée de manière à obtenir, pour chaque image, un ensemble de couples de valeurs débit vidéo-qualité théorique, - calculer, pour chaque version et pour chaque valeur de la gamme donnée de 30 valeurs théoriques de qualité d'encodage, un débit vidéo global fonction des débits vidéo associés à la valeur théorique de qualité d'encodage pour chaque image de la 3 succession d'images de la version de manière à obtenir, pour chaque version, un ensemble de couples de valeurs débit vidéo global-qualité théorique. Comme précisé précédemment chaque version du contenu multimédia source est caractérisée par une résolution. Le procédé visé permet, pour chacune de ces versions, de déterminer un 5 ensemble de couples de valeurs débit vidéo global-qualité théorique. Cet ensemble de couples est typiquement représenté sous la forme d'une courbe débit vidéo global-qualité théorique. Par ailleurs, un profil d'encodage est caractérisé par une résolution et un débit vidéo. On comprend donc que le procédé visé permet de déterminer le profil d'encodage satisfaisant la qualité visée sans avoir à mettre en oeuvre un encodage effectif du contenu multimédia source 10 selon le profil d'encodage en question. La fonction prédéterminée utilisée permet donc de ne pas avoir à encoder le contenu multimédia source selon un profil donné pour estimer la qualité de ce profil ce qui représente donc un gain de temps ainsi qu'une complexité réduite et l'économie des ressources nécessaires à l'encodage. A noter également que l'encodage du contenu multimédia source et 15 l'analyse du flux vidéo obtenu permettent de déterminer la qualité d'un profil mais ne permet pas de connaitre, à l'inverse, le profil permettant d'obtenir une qualité souhaitée. Dans le procédé visé, non seulement l'encodage n'est pas nécessaire mais en plus la qualité est une variable d'entrée de la fonction prédéterminée et non de sortie, d'où la possibilité de déterminer le profil permettant d'obtenir la qualité souhaitée. Un tel procédé est adapté à une 20 diffusion en direct. Selon un aspect de l'invention, chaque image comprend une matrice de pixels, la détermination d'au moins une caractéristique temporelle d'une image de la succession d'images d'une version comprenant : - partitionner l'image en un ensemble de blocs de pixels, et 25 - réaliser une estimation de mouvement sur chaque bloc de pixels de sorte que chaque bloc de pixels est caractérisé, après l'estimation de mouvement, par un vecteur de mouvement et par une mesure de la qualité de l'estimation de mouvement.. L'au moins une caractéristique temporelle de l'image comprenant les vecteurs de mouvement 30 respectifs des blocs de pixels de l'image et les mesures de qualité associées. 4 Par exemple, la mise en oeuvre de l'estimation de mouvement pour une image comprend un algorithme de type block matching. La fonction prédéterminée dépend non seulement de la résolution et de la qualité visée mais aussi des caractéristiques propres aux images de la succession d'images Ainsi, la 5 détermination des caractéristiques temporelles de chaque image de la succession d'images permet. une analyse adaptée spécifiquement aux images traitées et donc d'améliorer la fiabilité des résultats obtenus, à savoir le profil (plus exactement le débit vidéo caractérisant le profil) permettant d'obtenir une qualité d'encodage visée. Par exemple, dans un mode de réalisation, la qualité de l'estimation de mouvement comprend 10 une somme des différences absolues. Selon un autre aspect de l'invention, chaque image comprend une matrice de pixels, la détermination d'au moins une caractéristique spatiale d'une image de la succession d'images d'une version comprenant : - partitionner l'image en un ensemble de blocs de pixels, et 15 - mesurer la variance de chaque bloc de pixels de l'image. L'au moins une caractéristique spatiale de l'image comprenant les variances respectives des blocs de pixels de l'image. De même que pour les caractéristiques temporelles, les caractéristiques spatiales permettent. elles-aussi une analyse ciblée et propre aux images de la succession d'images de chaque 20 version. Selon un autre aspect de l'invention, la fonction prédéterminée est déterminée par la mise en oeuvre d'un algorithme d'apprentissage sur la base d'un ensemble de données d'entrainement relatives à l'encodage d'une pluralité de contenus multimédias d'entrainement selon différents profils d'encodage d'entrainement, chaque profil d'encodage d'entrainement étant caractérisé 25 par une résolution et un débit vidéo global, et à la mesure d'une valeur relative à la qualité de l'encodage suite à chaque encodage. Comme expliqué précédemment, la fonction prédéterminée joue un râle important dans l'analyse et permet notamment de ne pas avoir à encoder le contenu multimédia source selon chacun des profils. Le fait de prendre en entrée la qualité visée pour déterminer le débit vidéo 30 correspondant en complément de la résolution permet de déterminer des profils dont la qualité 5 estimée est celle visée ou attendue. La fonction prédéterminée est d'autant plus efficace qu'elle est déterminée par apprentissage. Autrement dit, cette fonction est déterminée en encodant typiquement un grand nombre de contenus multimédias, différant les uns des autres de par les caractéristiques temporelles et spatiales des images, selon différents profils et en 5 mesurant pour chaque profil testé la qualité obtenue. La mise en commun de ces résultats permet la construction d'une fonction établissant une relation entre la résolution, la qualité, les caractéristiques temporelles, les caractéristiques spatiales et le débit vidéo. Ainsi, une telle fonction a une fonction « réciproque » au sens où, pour une valeur de qualité ciblée et pour une image dont les caractéristiques ont été 10 déterminées, elle permet dc calculer le débit vidéo de sorte à obtenir un profil, caractérisé par la résolution et le débit vidéo calculé, dont la qualité est a priori celle visée. Par exemple, dans un mode de réalisation, l'algorithme d'apprentissage utilise un modèle de réseau de neurones. En variante, l'algorithme d'apprentissage comprend une méthode des moindres carrés. 15 Selon un autre aspect de l'invention, le débit vidéo global associé à une version et à une valeur dc la gamme donnée dc valeurs théoriques de qualité d'encodage est une moyenne des débits vidéo associés à la valeur théorique de qualité d'encodage pour chaque image de la succession d'images de la version. Comme expliqué précédemment, les caractéristiques spatiales et temporelles sont. déterminées 20 pour chaque image de sorte que, pour une valeur de qualité donnée issue de la gamme, le débit vidéo calculé est propre à une image et non à la succession d'images au sein de laquelle se trouve l'image. Il est donc nécessaire d'avoir, pour chaque valeur de qualité, un débit vidéo global pour la succession d'images et donc pour la version, le débit vidéo global étant bien entendu déterminé sur la base des débits vidéo des images. 25 Selon un autre aspect de l'invention, le procédé comprend en outre : sélectionner au moins un groupe de profils d'encodage en fonction de l'ensemble de couples de valeurs débit vidéo global-qualité théorique de chaque version, chaque profil d'encodage étant caractérisé par une résolution et un débit vidéo 6 - encoder le contenu multimédia en un ou plusieurs flux vidéo, chaque flux vidéo étant obtenu par encodage dudit contenu multimédia selon un profil de l'au moins un groupe de profil sélectionné. Avantageusement., le procédé comprend en outre, suite à l'encodage du contenu multimédia 5 en un ou plusieurs flux vidéo : - analyser chaque flux vidéo obtenu pour déterminer la valeur de qualité d'encodage du profil d'encodage dudit flux vidéo, - comparer, pour chaque flux vidéo analysé, la valeur de qualité d'encodage effectivement obtenue avec la valeur théorique de qualité d'encodage visée du 10 profil d'encodage correspondant, et - sur la base de la comparaison effectuée, modifier la fonction prédéterminée en vue d'améliorer ultérieurement la fiabilité du calcul de la gamme de valeurs de débit vidéo et l'obtention de l'ensemble de couples de valeurs débit vidéo-qualité théorique d'une image. 15 Comme expliqué précédemment, la fonction prédéterminée permet de déterminer des profils d'encodage sans avoir à encoder effectivement le contenu multimédia source. Néanmoins, la finalité étant la diffusion de flux vidéo obtenus par encodage du contenu multimédia source selon différents profils, l'encodage sera nécessairement mis en oeuvre en aval du procédé. On comprend donc qu'il peut être pertinent de mesurer la qualité effectivement obtenue pour un 20 flux vidéo correspondant à un profil d'encodage pour comparer cette valeur à la valeur-cible, utilisée en entrée de la fonction prédéterminée pour calculer le débit vidéo global nécessaire à la définition du profil en complément d'une valeur de résolution. Cette comparaison permet ainsi de modifier la fonction prédéterminée pour en améliorer l'efficacité. Dans un mode de réalisation, la fonction prédéterminée est modifiée sur la base de la 25 comparaison effectuée si la différence entre la valeur de qualité d'encodage obtenue pour un flux vidéo et la valeur théorique de qualité d'encodage visée du profil correspondant. au flux vidéo est supérieure ou égale à un seuil prédéterminé. Il est possible de constater une différence entre la qualité obtenue et la qualité visée sans pour autant que cette différence soit de nature à remettre en cause les performances de la fonction 30 prédéterminée. Il est donc intéressant de fixer un seuil en dessous duquel il n'est pas nécessaire de modifier la fonction prédéterminée quand bien même un écart serait constaté 7 entre la qualité visée et la qualité obtenue. Bien entendu, dans un mode de réalisation, la fonction prédéterminée est modifiée sur la base de la comparaison effectuée quels que soit les résultats de cette comparaison. On comprend donc que, dans ce mode de réalisation, le seuil prédéterminé est de valeur nulle, cc qui est équivalent à considérer qu'il n'y a pas de seuil 5 prédéterminé. Selon un autre aspect de l'invention, la fonction prédéterminée est déterminée par la mise en oeuvre d'un algorithme d'apprentissage sur la base d'un ensemble de données d'entrainement relatives à l'encodage d'une pluralité de contenus multimédias d'entrainement selon différents profils d'encodage d'entrainement et à la mesure d'une valeur relative à la qualité de 10 l'encodage suite à chaque encodage, la modification de la fonction prédéterminée sur la base de la comparaison effectuée comprenant l'intégration d'un ensemble de nouvelles données relatives à l'encodage du contenu multimédia source et à l'analyse du ou des flux vidéo obtenus, les nouvelles données ayant un poids supérieur à celle des données d'entrainement. La présente invention concerne en outre un programme informatique comprenant des 15 instructions pour la mise en oeuvre du procédé selon l'une des revendications précédentes, lorsque les instructions sont exécutées par au moins un processeur. Enfin, la présente invention concerne également un système comprenant un module d'analyse, en vue d'encoder numériquement un contenu multimédia source en un ou plusieurs flux vidéo pour une diffusion à la demande à au moins un terminal de réception. Le module 20 d'analyse est agencé pour : - générer un ensemble de versions du contenu multimédia, chaque version étant caractérisée par une résolution et comprenant une succession d'images, - déterminer, pour chaque image de la succession d'images de chaque version, au moins une caractéristique temporelle et au moins une caractéristique spatiale, 25 - calculer, pour chaque image de la succession d'images de chaque version, une gamme de valeurs de débit vidéo, chaque valeur de débit vidéo étant calculée par application d'une fonction prédéterminée à l'au moins une caractéristique temporelle de l'image, l'au moins une caractéristique spatiale de l'image et une valeur d'une gamme donnée de valeurs théoriques relatives à une qualité 30 d'encodage visée de manière à obtenir, pour chaque image, un ensemble de couples de valeurs débit vidéo-qualité théorique, 8 - calculer, pour chaque version et pour chaque valeur de la gamme donnée de valeurs théoriques de qualité d'encodage, un débit vidéo global fonction des débits vidéo associés à la valeur théorique de qualité d'encodage pour chaque image de la succession d'images de la version de manière à obtenir, pour chaque version, un 5 ensemble de couples de valeurs débit vidéo global-qualité théorique. Selon un aspect de l'invention, le système comprend en outre : - un module de sélection agencé pour recevoir l'ensemble de couples de valeurs débit vidéo global-qualité théorique associé à chaque version, le module de sélection étant agencé en outre pour sélectionner au moins un groupe de profils 10 d'encodage du contenu multimédia, chaque profil d'encodage étant caractérisé par une résolution et un débit vidéo global, et - un module d'encodage agencé pour encoder le contenu multimédia en un ou plusieurs flux vidéo, chaque flux vidéo étant obtenu par encodage dudit contenu multimédia selon un profil d'encodage de l'au moins un groupe de profils 15 d'encodage sélectionné par le module de sélection. Selon un autre aspect de l'invention, le module d'encodage est agencé en outre pour : - analyser chaque flux vidéo obtenu pour déterminer la valeur de qualité d'encodage du profil d'encodage dudit flux vidéo, - comparer, pour chaque flux vidéo analysé, la valeur de qualité d'encodage 20 effectivement obtenue avec la valeur théorique de qualité d'encodage visée du profil d'encodage correspondant, et - transmettre les résultats de la comparaison au module d'analyse. Par ailleurs, le module d'analyse est agencé en outre pour, sur la base de la comparaison effectuée, modifier la fonction prédéterminée en vue d'améliorer ultérieurement la fiabilité du 25 calcul de la gamme de valeurs de débit vidéo et l'obtention de l'ensemble de couples de valeurs débit vidéo-qualité théorique d'une image. D'autres caractéristiques, détails et avantages de l'invention apparaîtront à la lecture de la description détaillée ci-après, et à l'analyse des dessins annexés, sur lesquels : - la Figure 1 illustre un système selon l'invention, comprenant un module d'analyse, un 30 module dc sélection d'au moins un groupe dc profils et un module d'encodage ; 9 - La Figure 2 illustre une estimation de mouvement mise en oeuvre au sein du module d'analyse selon un mode de réalisation ; - la Figure 3 illustre une courbe débit vidéo global-qualité théorique obtenue par le module d'analyse pour une version d'un contenu multimédia source caractérisée par 5 une résolution de 1920x1080 à partir de plusieurs courbes débit-distorsion relatives à plusieurs images de la version ; - la Figure 4 illustre un procédé selon l'invention ; et - la Figure 5 illustre une étape de détermination d'au moins une caractéristique temporelle d'une image et une étape de détermination d'au moins une caractéristique 10 spatiale d' une image du procédé de la Figure 4. La Figure 1 illustre un système 1. Le système 1 est agencé pour encoder numériquement un contenu multimédia source M en un ou plusieurs flux vidéo en vue d'une diffusion à la demande, notamment en direct, à au moins un terminal de réception. Par « encoder numériquement », on entend ici qu'un flux vidéo obtenu est un flux compressé 15 selon un standard donné de compression. Ces standards de compression désignent des normes existantes connues de l'homme du métier. A titre d'exemple uniquement, ces normes sont des normes telles que H.265, aussi appelée MPEG- HEVC (acronyme anglophone pour « High Efficient.), Video Coding »), H.264 aussi appelée MPEG-4 AVC (acronyme anglophone pour « Advanced Video Coding »). Bien entendu, d'autres standards de compression sont possibles. 20 Pour chaque standard de compression, on peut définir plusieurs profils d'encodage, ou profils de compression. Dans la suite de la description on utilisera plus simplement le terme profil. Chaque profil est caractérisé par au moins une valeur de paramètre d'encodage. Par exemple, un profil est caractérisé par deux valeurs de paramètre d'encodage : une résolution et un débit vidéo. On comprend donc que dans le contexte de l'invention, un profil désigne un type 25 d'encodage et non le flux vidéo résultant de l'encodage du contenu multimédia source selon le profil en question. Il apparaît donc que le système 1 est agencé pour encoder numériquement le contenu multimédia source M selon différents profils, chaque profil correspondant à un standard de compression caractérisé, par exemple, par une résolution et un débit vidéo. La diversité des 30 profils proposés permet une distribution OTT (Over-The-Top) à différents terminaux de réception, sachant. que les conditions de téléchargement. et de diffusion du contenu multimédia source M sont variables d'un terminal de réception à un autre, d'où la nécessité de proposer 10 plusieurs formats (lu même contenu multimédia, chaque format correspondant à un flux vidéo compressé selon un profil spécifique. Le système 1 comprend un module d'analyse 3, un module de sélection 5 et un module d'encodage 7. 5 Le module d'analyse 3 est agencé pour recevoir le contenu multimédia source M et pour générer un ensemble de profils d'encodage du contenu multimédia source M. Comme expliqué précédemment, un profil est typiquement. caractérisé par une résolution et un débit vidéo. D'autre part, il est possible d'associer une qualité vidéo au couple de valeurs formé par la résolution et. le débit. vidéo. Autrement dit, il est possible d'associer une qualité vidéo à un 10 profil. Par exemple, la qualité vidéo peut comprendre la « distorsion ». La distorsion permet de caractériser la qualité de reconstruction d'une image compressée, ici une image du flux vidéo après encodage puis décodage, par rapport à une image originale, ici l'image correspondante du contenu multimédia source M. La métrique de mesure de la distorsion est par exemple le PSNR (acronyme anglophone pour 15 « Peak Signal to Noise Ration »). Le PSNR peut être défini comme suit : d2 PSNR = 10 - logio(EQM) où : - d est une dynamique du flux vidéo après encodage puis décodage, c'est-à-dire la valeur maximum possible pour un pixel d'une image du flux vidéo en question, et - EQM est l'erreur quadratique moyenne définie comme suit pour une image originale 11, 20 du contenu multimédia source M et une image compressée le du flux vidéo, chaque image étant une matrice de men pixels : m-1 n-1 1 EQM = - mn (10(i,j) - 1,(i,j))2 où : - 10(i, j) est la valeur du pixel de la i-èmc ligne et de la j-èmc colonne de l'image 25 originale Io ; et 11 - L(i, .1) est la valeur du pixel de la i-ème ligne et de la j-ème colonne de l'image compressée Ie. Par ailleurs, il est bien connu de l'homme du métier que, pour le calcul du PSNR, il est classique d'ajouter une valeur réelle strictement positive c à l'erreur quadratique moyenne. 5 L'ajout d'une telle valeur permet par exemple de pouvoir calculer une valeur de PSNR même lorsque l'erreur quadratique moyenne est nulle. Le PSNR peut s'exprimer sans unité ou en décibels (dB). La distorsion n'est qu'un exemple et d'autres définitions de la qualité vidéo d'un profil sont possibles. 10 On comprend donc ici que, en sortie du module d'analyse 3, on dispose d'un ensemble de profils d'encodage du contenu multimédia source M, chaque profil étant caractérisé par une résolution et un débit vidéo de sorte qu'une qualité théorique ou qualité visée est associée à chaque profil. Comme illustré en Figure 1, le module d'analyse 3 comprend au moins une mémoire 9, ici 15 trois mémoires 9vi, 9v2, 9v3, au moins un module de détermination de caractéristique temporelle Il, ici trois modules de détermination de caractéristique temporelle 11v1, 1 11 v3, au moins un module de détermination dc caractéristique spatiale 13, ici trois modules de détermination de caractéristique spatiale 13vi, 13v2, 13v3, au moins un module de calcul 15, ici trois modules dc calcul 15v1, 15v,, 15v3, et au moins un module d'accumulation 17, ici 20 trois modules d'accumulation 17vi, 17v2, 17v3. Le module d'analyse 3 comprend en outre une mémoire 19 et un processeur 21. Comme expliqué précédemment, le module d'analyse 3 est agencé pour recevoir en entrée le contenu multimédia source M. Le module d'analyse 3 est également agencé pour générer un ensemble de versions de cc contenu multimédia M, chaque version étant caractérisée par une 25 résolution et comprenant une succession d'images. Dans la description, on utilise le terme résolution, néanmoins on peut parler plus généralement de résolution spatio-temporelle. Par exemple, chaque version est générée par sous-échantillonnage du contenu multimédia source M à une résolution donnée. On comprend ici qu'une version comprend des images du contenu multimédia source M à une résolution donnée. Par exemple, la succession d'images d'une 30 version comprend toutes les images du contenu multimédia source M. Alternativement, la succession d'images d'une version comprend une partie seulement des images du contenu 12 multimédia source M. La succession d'images d'une version peut donc ne pas comprendre toutes les images du contenu multimédia source M. Dans l'exemple décrit ici, trois versions VI, V2 et V3 du contenu multimédia source M ont été générées. On comprend donc que chacune de ces versions est caractérisée par une résolution qui lui est propre. 5 La mémoire 9 est agencée pour stocker les images de la succession d'images d'une version du contenu multimédia source M. Comme expliqué précédemment, il n'est pas nécessaire d'utiliser toutes les images du contenu multimédia source M pour générer les différentes versions qui seront stockées. On comprend donc qu'il n'est pas nécessaire de stocker toutes les images du contenu multimédia source M. Par ailleurs, dans un mode de réalisation, les 10 versions du contenu multimédia source M sont générées progressivement. La mémoire 9 est alors agencée, à la manière d'une fenêtre glissante, pour stocker au fur et à mesure les images d'une version générées progressivement. Comme expliqué par la suite, ces images sont extraites de la mémoire 9 au fur et à mesure pour être traitées, les premières images d'une version pouvant donc commencer à être traitées avant même que les dernières images de cette 15 même version aient été générées et stockées dans la mémoire 9. Dans l'exemple illustré en Figure 1, il y a donc une mémoire 9 pour chaque version du contenu multimédia source M générée. En l'occurrence, la mémoire 9vi est agencée pour stocker les images de la succession d'images de la version V1, la mémoire 9v2 est agencée pour stocker les images de la succession d'images de la version V2 et la mémoire 9v3 est agencée pour stocker les images 20 de la succession d'images de la version V3. Bien entendu, l'homme du métier comprend que les trois mémoires 9v1, 9v2, 9v3 peuvent être trois mémoires distinctes ou bien une seule et même mémoire. Avantageusement, la mémoire 9 est une mémoire de type FIFO (First-In-First-Out). Autrement dit, la première image stockée dans la mémoire 9 est également la première image 25 extraite de la mémoire 9 pour le traitement expliquée dans la suite de la description. Comme expliqué précédemment, les images des versions sont typiquement générées en temps réel, au fur et à mesure, de sorte que les images stockées progressivement dans la mémoire 9 de type FIFO sont extraites puis traitées dans l'ordre dans lequel elles ont été générées. Le module de détermination de caractéristique temporelle 11, ci-après module 11, est agencé 30 pour déterminer, pour chaque image de la succession d'images d'une version du contenu multimédia source M, au moins une caractéristique temporelle. Dans le cas décrit ici, le module 1 l vi est agencé pour déterminer au moins une caractéristique temporelle pour chaque 13 image de la succession d'images de la version V1, le module 11v2 est agencé pour déterminer au moins une caractéristique temporelle pour chaque image de la succession d'images de la version V2, le module 11v3 est agencé pour déterminer au moins une caractéristique temporelle pour chaque image de la succession d'images de la version V3. 5 Bien entendu, l'homme du métier comprend que les trois modules 1 lvi, 11v,, 11v3 peuvent être trois modules distincts ou bien un seul et même module. La Figure 2 illustre un mode de réalisation de la détermination d'au moins une caractéristique temporelle d'une image mise en oeuvre par le module 11. Dans le cas décrit ici, le module 11 détermine au moins une caractéristique temporelle de la k10 ième image de la succession d'images d'une version Vi du contenu multimédia source M. La version Vi est par exemple la version V1, V2 ou V3. L'image en question est donc notée par la suite Dans ce mode de réalisation, le module 11 est agencé pour partitionner une image de la succession d'images d'une version du contenu multimédia source M en un ensemble de blocs 15 de pixels. Sur la Figure 2, l'image partitionnée est l'image B/lk,v; et on a donc représenté un premier bloc B1 et un deuxième bloc B2 de l'image IMksi. Le bloc B1 de l'image IMtvi est un bloc de pixels 2x2 tandis que le bloc B2 de l'image 114k.vi est un bloc de pixels 3x2. Toujours dans cc mode de réalisation, le module 11 est agencé en outre pour comparer l'image IMks, avec l'image source correspondante, c'est-à-dire l'image IMk,M du contenu 20 multimédia source M, pour réaliser une estimation de mouvement sur chaque bloc de pixels. Chaque bloc de pixels est caractérisé, après l'estimation de mouvement, par un vecteur de mouvement. Par exemple, le bloc B1 est comparé à tous les blocs 2x2 de l'image source [Mk.m pour déterminer le bloc B1' le plus susceptible de lui correspondre. De même, le bloc B, est comparé à tous les blocs 3x2 de l'image source IMk.m pour déterminer le bloc B2' le plus 25 susceptible de lui correspondre. Après l'estimation de mouvement mise en oeuvre par le module 11, le bloc B1 est donc caractérisé par un vecteur de mouvement noté V[131]. De même, le bloc 132 est caractérisé par un vecteur de mouvement noté V[132]. Le vecteur de mouvement est relatif au « mouvement » d'un bloc de l'image source 'Mol du contenu multimédia source M à l'image correspondante 30 IM1,,vi de la version Vi. 14 Différentes méthodes sont connues de l'homme du métier pour réaliser une estimation de mouvement. Par exemple, l'estimation de mouvement réalisée par le module 11 peut comprendre un algorithme de type block- matching Par ailleurs, chaque bloc de pixels est caractérisé en outre, après l'estimation de mouvement, 5 par une mesure de la qualité de l'estimation de mouvement. Par exemple, la qualité de l'estimation de mouvement comprend une somme des différences absolues (connue également sous l'acronyme anglophone SAD pour « Stnn of Absolute Di erences »). La somme des différences absolues associée à un bloc de pixels Bi de l'image IMkvi peut être calculée comme suit : m n SAD (Bi j(a, b) - (a, 6)1 b=1 a=1 10 où : - SAD(Bi) est la somme des différences absolues associées au bloc Bi de l'image IMtvi ; - m et n sont respectivement le nombre de lignes et le nombre de colonnes du bloc Bi ; - B(a,b) est la valeur du pixel situé sur la a-ième ligne et la b-ième colonne du bloc Bi ; - Bi' est le bloc de l'image source IMLm du contenu multimédia source M 15 correspondant au bloc B1; et - B;(a,b) est la valeur du pixel situé sur la a-ièmc ligne et la b-ième colonne du bloc Bi'. Dans ce mode de réalisation, les caractéristiques temporelles de l'image IMoii comprennent les vecteurs de mouvement respectifs des blocs de pixels de l'image et les mesures de qualité associées, en l'occurrence ici la somme des différences absolues. 20 Bien entendu, d'autres mesures de qualité sont envisageables lors de la détermination des caractéristiques temporelles de chaque image. Par exemple, en complément ou à la place de la somme des différences absolues, d'autres métriques de mesures de qualité de l'estimation de mouvement sont possibles comme l'erreur quadratique moyenne ou la variance. En sortie du module 11, chaque image de la succession d'images de chaque version du 25 contenu multimédia source M est donc caractérisée par au moins une caractéristique temporel le. 15 Le module de détermination de caractéristique spatiale 13, ci-après module 13, est agencé pour déterminer, pour chaque image de la succession d'images d'une version du contenu multimédia source M, au moins une caractéristique spatiale. Dans le cas décrit ici, le module 13vi est agencé pour déterminer au moins une caractéristique spatiale pour chaque image de 5 la succession d'images de la version V 1, le module 13v, est agencé pour déterminer au moins une caractéristique spatiale pour chaque image de la succession d'images de la version V2, le module 13v3 est agencé pour déterminer au moins une caractéristique spatiale pour chaque image de la succession d'images de la version V3. Bien entendu, l'homme du métier comprend que les trois modules 13vi, 13v,, 13v3 peuvent 10 être trois modules distincts ou bien un seul et même module. Dans un ou plusieurs modes de réalisation, le module 13 est agencé pour partitionner une image de la succession d'images d'une version du contenu multimédia source M en un ensemble de blocs de pixels. Ce partitionnement peut être le même que celui mis en oeuvre par le module 11. 15 Toujours dans ce mode de réalisation, le module 13 est agencé en outre pour mesurer la variance de chaque bloc de pixels de l'image en question. La variance d'un bloc de pixels Bi de l'image peut être calculée comme suit : rn n 1 o-(13j)2 v' =(Bj(a, b) - )2 b=1 a=1 ou : - a(Bi)2 est la variance associée au bloc Bi de l'image IMicsi ; 20 - m et n sont respectivement le nombre de lignes et le nombre de colonnes du bloc Bi ; - Bi(a,b) est la valeur du pixel situé sur la a-ième ligne et la b-ième colonne du bloc Bi ; - Ri est la moyenne des valeurs respectives des pixels du bloc Bi. Les caractéristiques spatiales d'une image comprennent alors les variances respectives des blocs de pixels de l'image. 25 De même qu'il est possible d'utiliser d'autres caractéristiques temporelles que celles déterminées à l'issue de l'estimation de mouvement, il apparaît évident à l'homme du métier que d'autres caractéristiques spatiales peuvent être exploitées en complément ou à la place de 16 la variance par bloc. A titre d'exemples uniquement, le module 13 peut également mettre en oeuvre des histogrammes, de la détection de contour ou encore des histogrammes de gradient. Par ailleurs, cette détermination de caractéristique spatiale par le module 13 sur une image donnée peut être mise en oeuvre par blocs de l'image ou de manière globale sur toute l'image. 5 Le module de calcul 15, ci-après module 15, est agencé pour déterminer, pour chaque image de la succession d'images d'une version du contenu multimédia source M, une courbe débit vidéo-qualité théorique. Le module de calcul 15 peut é2alement être appelé module d'estimation de coût de codage ou encore module de modélisation débit-qualité. Dans le cas décrit ici, le module 15v1 est agencé pour déterminer une courbe débit vidéo-qualité théorique 10 pour chaque image de la succession d'images de la version V 1, le module 13v2 est agencé pour déterminer une courbe débit vidéo-qualité théorique pour chaque image de la succession d'images de la version V2, le module 13v3 est agencé pour déterminer une courbe débit vidéo-qualité théorique pour chaque image de la succession d'images de la version V3. Bien entendu, l'homme du métier comprend que les trois modules 15vi. 15v2, 15v3 peuvent 15 être trois modules distincts ou bien un seul et même module. Plus particulièrement, le module 15 est agencé pour calculer, pour chaque image, une gamme de valeurs de débit vidéo. Chaque valeur de débit vidéo est calculée par application d'une fonction prédéterminée F à l'au moins une caractéristique temporelle de l'image, l'au moins une caractéristique spatiale de l'image et une valeur d'une gamme donnée de valeurs 20 théoriques relatives à une qualité d'encodage visée. En d'autres termes, le module 15 est agencé pour recevoir, pour chaque image de la succession d'images d'une version, les caractéristiques temporelles déterminées par le module Il et les caractéristiques spatiales déterminées par le module 13. En notant CT l'ensemble des caractéristiques temporelles d'une image et CS l'ensemble des caractéristiques spatiales d'une 25 image, on a la relation suivante : D = F (Q, CT, CS) où : - D est une valeur débit vidéo ; - Q est une valeur théorique de qualité d'une gamme de valeurs théoriques relatives à une qualité d'encodage visée ; et 17 - F est une fonction prédéterminée. On rappelle par ailleurs que chaque image a une résolution donnée puisque les différentes versions du contenu multimédia source M sont chacune caractérisées par une résolution. Le module 15 est donc agencé pour déterminer un ensemble de couples débit vidéo-qualité 5 théorique (D,Q) en appliquant la fonction prédéterminée F à chaque valeur théorique de qualité de la gamme de valeurs théoriques relatives à une qualité d'encodage visée, les caractéristiques spatiales et temporelles étant connues pour chaque image grâce aux modules 11 et 13 décrits précédemment La fonction F est une fonction prédéterminée. Dans un ou plusieurs modes de réalisation, la 10 fonction prédéterminée F est déterminée par la mise en oeuvre d'un algorithme d'apprentissage sur la base d'un ensemble de données d'entrainement relatives à l'encodage d'une pluralité de contenus multimédias d'entrainement selon différents profils d'encodage d'entrainement, chaque profil d'encodage d'entrainement étant caractérisé par une résolution et un débit vidéo global, et à la mesure d'une valeur relative à la qualité de l'encodage suite à 15 chaque encodage. En d'autres termes, pour déterminer la fonction prédéterminée F et ainsi l'appliquer à différentes valeurs théoriques de qualité visée, on procède en amont à l'encodage de plusieurs contenus multimédias prédéterminés selon différents profils. Suite à l'encodage selon un profil donné, on mesure la qualité du flux vidéo obtenu. On obtient. alors une qualité associée 20 au couple formé par un débit vidéo et une résolution, c'est-à-dire la qualité associée au profil correspondant.. Il est alors possible de construire la fonction F par apprentissage sur la base des données d'entrainement, à savoir les données obtenues par encodage des contenus multimédias selon différents profils et de la mesure de qualité suite à chaque encodage. Plusieurs algorithmes d'apprentissage sont possibles pour déterminer la fonction F. Par 25 exemple, l'algorithme d'apprentissage comprend une méthode des moindres carrés. Alternativement ou parallèlement, l'algorithme d'apprentissage utilise un modèle de réseau de neurones. En sortie du module 15, un ensemble de couples débit vidéo-qualité théorique est donc associé à chaque image de la succession d'images de chaque version, chaque version étant. 30 caractérisée par une résolution. 18 A titre d'exemple, pour une image donnée, ayant des caractéristiques temporelles CT et des caractéristiques spatiales CS, et pour une gamme de valeurs théoriques relative à une qualité d'encodage visée (QI- Q2, Q3- (24). on calcule autant de valeurs de débit vidéo qu'il y a de valeurs de qualité, donc quatre valeurs de débit vidéo : Dl = F (Qi, CT, CS) D2 = F(Q2, CT, CS) D3 = F(Q3, CT, CS) D4 = F(Q4, CT, CS) 5 Avantageusement, et comme illustré en Figure 3, l'ensemble de couples débit vidéo-qualité théorique d'une image peut-être illustré sous la forme d'une courbe débit vidéo-qualité théorique. Par exemple, le module 15 cst agencé pour réaliser une interpolation à partir des points débit vidéo-qualité théorique calculés. Dans l'exemple illustré en Figure 3, la distorsion est utilisée pour caractériser la qualité. Sur 10 cette figure, les courbes en trait discontinu représentent chacune la relation débit vidéo-qualité théorique respectivement de deux images d'unc succession d'images d'unc version caractérisée par une résolution 1920x1080. Dans le cas illustré ici, les courbes débit vidéo-qualité théorique de deux images seulement sont représentées. On comprend qu'avantageusement, la succession d'images d'une version du contenu 15 multimédia source M comprend un nombre beaucoup plus élevé d'images cc qui conduirait au tracé d'une courbe en trait discontinu pour chaque image. Le trait continu représenté sur ccttc figure sera explicité ci-après dans la description du module d'accumulation 17. Le module d'accumulation 17, ci-après module 17, est agencé pour déterminer, pour chaque version, une courbe débit vidéo global-qualité théorique. La notion de débit vidéo global sera 20 détaillée ci-après. Dans le cas décrit ici, le module 17vi cst agencé pour déterminer une courbe débit vidéo global-qualité théorique pour chaque image de la succession d'images de la version V1, le module 17v2 est agencé pour déterminer une courbe débit vidéo global-qualité théorique pour chaque image de la succession d'images de la version V2, le module 17v3 est agencé pour déterminer une courbe débit vidéo global-qualité théorique pour chaque 25 image de la succession d'images de la version V3. 19 Bien entendu, l'homme du métier comprend que les trois modules 17vi, 17v/, 17v3 peuvent être trois modules distincts ou bien un seul et même module. Comme expliqué précédemment, en sortie du module 15, chaque image de la succession d'images de chaque version est associée à un ensemble de couples débit vidéo-qualit.é 5 théorique. Cet. ensemble de couples débit. vidéo-qualité théorique est. parfois représenté sous la forme d'une courbe débit vidéo-qualit.é théorique. Néanmoins, il est nécessaire d'obtenir une relation entre le débit. vidéo et. la qualité pour la succession d'images dans sa totalité et non uniquement pour chaque image. Le module 17 est donc agencé pour calculer, pour chaque version et pour chaque valeur de la 10 gamme donnée de valeurs théoriques de qualité d'encodage, un débit vidéo global fonction des débits vidéo associés à la valeur théorique de qualité d'encodage pour chaque image de la succession d'images de la version de manière à obtenir, pour chaque version, un ensemble de couples de valeurs débit vidéo global-qualité théorique. En effet., la gamme de valeurs théoriques de qualit.é d'encodage visée pour laquelle des 15 valeurs de débit vidéo sont calculées est la même pour chaque image d'une succession d'images d'une vers-ion donnée. Il est donc possible de déterminer, pour une valeur théorique de qualité donnée, le débit vidéo global en fonction des débits vidéo associés à cette valeur de qualité respectivement pour chacune des images de succession d'images. Par exemple, le débit vidéo global est la moyenne des débits vidéo. 20 On considère à titre d'exemple une version du contenu multimédia source M comprenant une succession de N -images. Ces images sont notées comme suit : {IMk,m avec k E [[1; Ana Pour une k-ième image donnée de cette succession d'images, les caractéristiques temporelles et spatiales associées déterminées respectivement par les modules 11 et 13 sont notées CTk et CSk. On considère enfin une gamme donnée de P valeurs théoriques relatives à une qualité 25 d'encodage visée notée comme suit : {QI avec i E [[1; Pi} En sortie du module 15 on a donc, pour chaque image INilk,m et. pour chaque qualit.é Q un débit vidéo DkJ définit comme suit : 20 = F(Qi,CTk,CSk) Pour obtenir un débit vidéo global Da,.; pour la succession d'images et pour chaque qualité Q. on applique une formule de type : = G (Dti, , Dk , DN,i) où : G est une fonction prédéterminée permettant d'obtenir un débit vidéo global en fonction de plusieurs débits vidéo. 5 Par exemple, le débit vidéo global est la moyenne arithmétique des débits vidéo : N 1 = k=1 Bien entendu, d'autres modes de réalisation sont possibles. Par exemple le débit vidéo global peut être calculé par une moyenne géométrique, harmonique ou pondérée sur les débits vidéo ou par d'autres formules. Comme expliqué précédemment, les courbes en trait discontinu sur la Figure 3 représentent 10 chacune la relation débit vidéo-qualité théorique respectivement de deux images d'une succession d'images d'une version caractérisée par une résolution 1920x1080. Le module 17 est agencé pour générer une courbe représentant la relation débit vidéo global-qualité théorique de la succession d'images de la version caractérisée par la résolution 1920x1080. Cette courbe est représentée en trait continu sur la Figure 3. 15 La mémoire 19 est configurée pour stocker des instructions sous la forme d'un programme informatique dont l'exécution par le processeur 21 se traduit par le fonctionnement du module d'analyse 3. Avantageusement, la mémoire 19 est configurée en outre pour stocker des données telles que la gamme de valeurs théoriques relatives à une qualité d'encodage visée, la fonction prédéterminée F et/ou des données relatives aux calculs et mesures réalisés par les 20 modules 11, 13, 15 et 17. Comme expliqué précédemment, le module d'analyse 3 est agencé en outre pour générer un ensemble de profils d'encodage du contenu multimédia source M. Un profil est caractérisé par une résolution et un débit vidéo, donc un débit vidéo global au sens des explications fournies précédemment. Par ailleurs, une qualité peut être associée à un couple formé par une valeur de 25 résolution et une valeur de débit vidéo global, donc à un profil. Sur la Figure 3, un premier 21 profil P1 et un deuxième profil P2 sont illustrés. Le premier profil P1 est caractérisé par une résolution 1920x1080 et un débit vidéo global de 2955 kbps. La qualité théorique associée au premier profil P1 est une distorsion de 24. Le deuxième profil P2 est caractérisé par une résolution 1920x1080 et un débit vidéo global de 2258 kbps. La qualité théorique associée au 5 deuxième profil P2 est une distorsion de 32. Le module de sélection 5 est agencé pour recevoir l'ensemble de profils d'encodage généré par le module d'analyse 3. Typiquement, l'ensemble de profils d'encodage comprend l'ensemble de couples de valeurs débit vidéo global-qualité théorique associé à chaque version, chaque version étant caractérisée par une résolution. Le module de sélection 5 est 10 agencé en outre pour sélectionner au moins un groupe de profils d'encodage du contenu multimédia source M. Comme illustré en Figure 1, le module de sélection 5 comprend une mémoire 23 et un processeur 25. La mémoire 23 est configurée pour stocker des instructions sous la forme d'un programme 15 informatique dont l'exécution par le processeur 25 se traduit par le fonctionnement du module de sélection 5. Le module d'encodage 7 est agencé pour encoder le contenu multimédia source M en un ou plusieurs flux vidéo, chaque flux vidéo étant obtenu par encodage du contenu multimédia source M selon un profil d'encodage de l'au moins un groupe de profils d'encodage 20 sélectionné par le module de sélection 5. Par ailleurs, le module d'encodage 7 est agencé en outre pour analyser la qualité des flux vidéo obtenu après encodage en vue de faire un retour au module d'analyse 3 et de modifier, si besoin, la fonction prédéterminée F. Comme illustré en Figure 1, le module d'encodage 7 comprend un sous-module d'encodage 27, une unité de contrôle 29 et. un module de communication 31. Le module d'encodage 7 25 comprend en outre une mémoire 33 et un processeur 35. Le sous-module d'encodage 27 est agencé pour encoder le contenu multimédia source M en un ou plusieurs flux vidéo. Comme illustré en Figure 1, le sous-module d'encodage 27 a pour entrées à la fois le ou les groupes de profils sélectionnés par le module de sélection 5 et le contenu multimédia source M. On comprend que le sous-module d'encodage 27 est agencé 30 pour générer autant de flux vidéo qu'il y a de profils dans le ou les groupe de profils 22 sélectionnés. Chaque flux vidéo généré par le sous-module d'encodage 27 est un flux compressé selon un profil caractérisé par une résolution et. un débit. vidéo. L'unité de contrôle 29 est agencée pour analyser chaque flux vidéo obtenu en sortie du sous-module d'encodage 27 pour déterminer la valeur effective de qualité d'encodage du profil 5 d'encodage de chaque flux vidéo. L'unité de contrôle 29 est agencée en outre pour comparer, pour chaque flux vidéo analysé, la valeur de qualité d'encodage effectivement. obtenue avec la valeur théorique de qualité d'encodage visée du profil d'encodage correspondant. Par exemple, en référence à nouveau à la Figure 3, la valeur théorique de qualité d'encodage 10 pour le premier profil Pi correspond à une distorsion de 24. Si le premier profil Pi a été sélectionné par le module de sélection 5 et qu'un flux vidéo a été généré par encodage du contenu multimédia source M selon le premier profil P1, l'unité de contrôle 29 est alors agencée pour comparer la valeur de qualité d'encodage obtenue avec la qualité théorique visée, à savoir la qualité correspondant à une distorsion de 24. 15 Par ailleurs, l'unité de contrôle 29 est agencée en outre pour transmettre les résultats de la comparaison effectuée pour chaque flux vidéo au module d'analyse 3. Sur réception des résultats de la comparaison effectuée par l'unité de contrôle 29, le module d'analyse 3 est agencé en outre pour modifier la fonction prédéterminée F en vue d'améliorer ultérieurement la fiabilité du calcul de la gamme de valeurs de débit vidéo et l'obtention de 20 l'ensemble de couples de valeurs débit vidéo-qualité théorique d'une image. Dans un mode de réalisation, le module d'analyse 3 est configure pour modifier la fonction prédéterminée F sur la hase de la comparaison effectuée si la différence entre la valeur de qualité d'encodage obtenue pour un flux vidéo et la valeur théorique de qualité d'encodage visée du profil correspondant au flux vidéo est supérieure ou égale à un seuil prédéterminé. Il 25 s'a2it bien évidemment ici d'une différence absolue. Par exemple, pour un PSNR moyenne sur une seconde, le seuil prédéterminé est typiquement de l'ordre de 1 dB. Dans ce cas de figure, on comprend donc que la fonction F prédéterminée est modifiée si la différence entre la valeur de qualité d'encodage obtenue pour un flux vidéo et la valeur théorique de qualité d'encodage visée du profil correspondant au flux vidéo est 30 supérieure ou égale à 1dB. 23 L'homme du métier comprend aisément qu'il est également possible, dans un mode de réalisation, de modifier la fonction prédéterminée F quels que soient les résultats de la comparaison effectuée par l'unité de contrôle 29.. Dans ce mode de réalisation, il n'y a donc pas de seuil prédéterminé et la fonction prédéterminée F est toujours modifiée sur la base de 5 la comparaison effectuée. On peut également considérer de manière équivalente qu'il y a bien un seuil prédéterminé et que celui-ci est de valeur nulle. Bien entendu, cette condition peut être vérifiée au niveau de l'unité de contrôle 29, et non au niveau du module d'analyse 3, de sorte que celle-ci est agencée pour transmettre les résultats de la comparaison au module d'analyse 3 seulement si la différence entre la qualité 10 effectivement mesurée et la qualité théorique visée est supérieure ou égale à un seuil prédéterminée. Comme expliqué précédemment, la fonction prédéterminée F peut être déterminée par la mise en oeuvre d'un algorithme d'apprentissage sur la hase d'un ensemble de données d'entrainement relatives à l'encodage d'une pluralité de contenus multimédias d'entrainement 15 selon différents profils d'encodage d'entrainement et à la mesure d'une valeur relative à la qualité de l'encodage suite à chaque encodage. Dans un tel mode de réalisation, la modification de la fonction prédéterminée F sur la base de la comparaison effectuée par l'unité de contrôle 29 comprend par exemple l'intégration d'un ensemble de nouvelles données relatives à l'encodage du contenu multimédia source M et à l'analyse du ou des flux 20 vidéo obtenus, de sorte que les nouvelles données ont un poids supérieur à celle des données d' entrainement. Autrement dit, les nouvelles données issues de la comparaison effectuée par l'unité de contrôle 29 sont ajoutées aux données d'entrainement tout en ayant. un poids plus important que les données d'entrainement. 25 Le module de communication 31 est agencé pour émettre au moins un flux vidéo généré par le sous-module d'encodage 27 à destination d'un terminal de réception (non représenté sur la Figure 1). La mémoire 33 est configurée pour stocker des instructions sous la forme d'un programme informatique dont l'exécution par le processeur 35 se traduit par le fonctionnement du module 30 d'encodage 7. 24 Avantageusement, la mémoire 33 est configurée en outre pour stocker le ou les flux vidéo générés par le sous-module d'encodage 27 en vue d'une diffusion à la demande, et notamment une diffusion en direct, à un ou plusieurs terminaux de réception. La mémoire 33 peut être également configurée en outre pour stocker les données résultant de la comparaison 5 réalisée par l'unité de contrôle 29. Un procédé selon l'invention va maintenant. être décrit en référence aux Figures 4 et. 5. Lors d'une première étape S1, le contenu multimédia source M est transmis au module d'analyse 3. Un ensemble de versions du contenu multimédia source M est alors généré, chaque version étant. caractérisée par une résolution. Chaque version comprend une 10 succession d'images Par exemple, chaque version est générée par sous-échantillonnage du contenu multimédia source M. Dans l'exemple illustré en Figure 1, trois versions V1, V2 et V3 du contenu multimédia source M ont été générées, chacune étant caractérisée par une résolution qui lui est propre. Par exemple, la version V1 est caractérisée par une résolution 1920x1080, la version V2 est 15 caractérisée par une résolution 1280x720 et la version V3 est caractérisée par une résolution 832x468. Chaque version générée est ensuite stockée dans une mémoire 9 du module d'analyse 3. Toujours dans le cas décrit ici, la version VI est stockée dans la mémoire 9v]., la version V2 est stockée dans la mémoire 9v2 et. la version V3 est stockée dans la mémoire 9v3. Comme 20 expliqué précédemment, la mémoire 9 est par exemple une mémoire de type FIFO. Lors d'une deuxième étape S2, le module 11 détermine, pour chaque image de la succession d'images d'une version, au moins une caractéristique temporelle. Dans le cas illustré en Figure 1, le module 1 1 vi détermine au moins une caractéristique temporelle pour chaque image de la succession d'images de la version V1, le module 11v2 25 détermine au moins une caractéristique temporelle pour chaque image de la succession d'images de la version V2 et le module 11v3 détermine au moins une caractéristique temporelle pour chaque image de la succession d'images de la version V3. Un mode de réalisation de la deuxième étape S2 de détermination d'au moins une caractéristique temporelle de chaque image est illustré en Figure 5. 25 Lors d'une première opération S21, le module 11 partitionne chaque image en un ensemble de blocs de pixels. On a par exemple représenté sur la Figure 2 un premier bloc de pixels B1 et un deuxième bloc de pixels B2 de la k-ième image IMicsi d'une version Vi du contenu multimédia source M. 5 Lors d'une deuxième opération S22, le module 11 réalise une estimation de mouvement sur chaque bloc de pixels de sorte que chaque bloc de pixels est caractérisé, après l'estimation de mouvement, par un vecteur de mouvement et par une mesure de la qualité de l'estimation de mouvement. En d'autres termes, l'image IMic,vi de la version Vi est comparée avec l'image correspondante IMk,m du contenu multimédia source M à partir de laquelle le mouvement du 10 bloc Bi par rapport au bloc B1' est déterminé dc même que le mouvement du bloc B2 par rapport au bloc 13/'. Dans le cas illustré en Figure 2, le bloc Bi est ainsi caractérisé par un vecteur de mouvement V[B1] tandis que le bloc 131 est caractérisé par un vecteur dc mouvement V[132]. Par ailleurs, la mesure de la qualité de l'estimation de mouvement est par exemple une somme 15 des différences absolues. En référence à nouveau à la Figure 4, lors d'une troisième étape S3, le module 13 détermine, pour chaque image de la succession d'images d'une version, au moins une caractéristique spatiale. Dans le cas illustré en Figure 1, le module 13vi détermine au moins une caractéristique 20 spatiale pour chaque image dc la succession d'images de la version V1, le module 13v2 détermine au moins une caractéristique spatiale pour chaque image de la succession d'images de la version V2 et. le module 13v3 détermine au moins une caractéristique spatiale pour chaque image de la succession d'images de la version V3. Un mode de réalisation de la troisième étape S3 de détermination d'au moins une 25 caractéristique spatiale de chaque image est. illustré en Figure 5. Lors d'une première opération S31, le module 13 partitionne chaque image en un ensemble de blocs de pixels. Ce partitionnement est par exemple le même que celui réalisé lors de la détermination des caractéristiques temporelles. Lors d'une deuxième opération S32, le module 13 mesure la variance de chaque bloc de 30 pixels dc l'image. 26 En référence à nouveau à la Figure 4, lors d'une quatrième étape S4, le module 15 calcule, pour chaque image de la succession d'images d'une version, une gamme de valeurs de débit vidéo. Chaque valeur de débit vidéo de cette gamme est calculée par application d'une fonction prédéterminée F à l'au moins une caractéristique temporelle de l'image, l'au moins 5 une caractéristique spatiale de l'image et une valeur d'une gamme donnée de valeurs théoriques relatives à une qualité d'encodage visée de manière à obtenir, pour chaque image, un ensemble de couples de valeurs débit vidéo-qualité théorique. En d'autres termes, le module 15 utilise lors de cette étape une fonction prédéterminée F et une gamme de valeurs théoriques relatives à une qualité d'encodage visée. Pour une image 10 donnée, la fonction prédéterminée F a donc pour entrées une valeur théorique de qualité, la ou les caractéristiques temporelles de l'image considérée et la ou les caractéristiques spatiales de l'image considérée. L'application de cette fonction prédéterminée F permet d'obtenir une valeur de débit vidéo qui est donc associée à la valeur théorique de qualité sélectionnée. En effet, pour une même image, seule peut varier la valeur théorique de qualité d'encodage. La 15 ou les caractéristiques temporelles et spatiales ne varient que d'une image à l'autre. A l'issue de cette étape on a donc, pour chaque image de la succession d'images de chaque version du contenu multimédia source M, un ensemble de couples débit vidéo-qualité théorique. Par ailleurs cet. ensemble de couples peut. être représenté sous la forme d'une courbe débit vidéo-qualité théorique. Dans l'exemple illustré en Figure 3, la qualité est 20 caractérisée par la distorsion et les deux courbes en trait discontinu représentent respectivement les courbes débit vidéo-qualité théorique de deux images d'une même version. Daris le cas illustré en Figure 1, le module 15vi détermine un ensemble de couples de valeurs débit vidéo-qualité théorique pour chaque image de la succession d'images de la version V1, le module 15v, détermine un ensemble de couples de valeurs débit vidéo-qualité théorique 25 pour chaque image de la succession d'images de la version V2 et le module 15v3 détermine un ensemble de couples de valeurs débit vidéo-qualité théorique pour chaque image de la succession d'images de la version V3. Lors d'une cinquième étape S5, le module 17 calcule, pour une version et pour chaque valeur de la gamme donnée de valeurs théoriques de qualité d'encodage, un débit vidéo global. Ce 30 débit vidéo global est fonction des débits vidéo associés à une même valeur théorique de qualité d'encodage pour chaque image de la succession d'images de la version de manière à 27 obtenir, pour la version considérée, un ensemble de couples de valeurs débit vidéo global-qualité théorique. En d'autres termes, pour une version donnée, le module 17 calcule un débit vidéo global pour chaque valeur de la gamme de valeurs théoriques relatives à une qualité d'encodage visée. En 5 effet, pour chaque image, une valeur de débit vidéo associée à une valeur théorique de qualité est calculée par le module 15. Or, on souhaite avoir une seule valeur de débit vidéo, à savoir le débit vidéo global, pour l'ensemble de la succession d'images. Le module 17 calcule donc, au cours de cette étape, pour une version donnée et pour chaque valeur théorique de qualité, un débit vidéo global. Comme expliqué précédemment, le débit vidéo global associé à une 10 valeur théorique de qualité est par exemple la moyenne arithmétique des valeurs de débit vidéo associées à cette même valeur théorique de qualité pour chaque image de la succession d'images. A l'issue de cette étape on a donc, pour chaque version du contenu multimédia source M, un ensemble de couples débit vidéo global-qualité théorique. Par ailleurs cet ensemble de 15 couples peut être représenté sous la forme d'une courbe débit vidéo global-qualité théorique. Dans l'exemple illustré en Figure 3, la qualité est caractérisée par la distorsion et la courbe en trait continu représente la courbe débit vidéo global-qualité théorique de la version caractérisée par la résolution 1920x1080. Dans le cas illustré en Figure 1, le module 17vi détermine un ensemble de couples de valeurs 20 débit vidéo global-qualité théorique pour chaque image de la succession d'images de la version V1, le module 17v2 détermine un ensemble de couples de valeurs débit vidéo global-qualité théorique pour chaque image de la succession d'images de la version V2 et le module 17v3 détermine un ensemble de couples de valeurs débit vidéo global-qualité théorique pour chaque image de la succession d'images de la version V3. 25 Lors d'une sixième étape S6, le module de sélection 5 reçoit l'ensemble de couples débit vidéo global-qualité théorique de chaque version, c'est-à-dire l'ensemble de couples débit. vidéo global-qualité théorique de chaque résolution. Le module de sélection 5 sélectionne alors au moins un groupe de profils d'encodage en fonction de l'ensemble de couples de valeurs débit vidéo global-qualité théorique de chaque version, chaque profil d'encodage étant 30 caractérisé par une résolution et un débit vidéo global. Comme expliqué précédemment, chaque profil d'encodage est associé en outre à une valeur théorique de qualité d'encodage visée. 28 Le module de sélection 5 transmet. ensuite le ou les groupes de profils d'encodage au module d'encodage 7. Lors d'une septième étape S7, le module d'encodage 7 reçoit le ou les groupes de profils d'encodage transmis par le module de sélection 5. Le module d'encodage 7, et. plus 5 précisément le sous-module d'encodage 27, encode alors le contenu multimédia source M en un ou plusieurs flux vidéo, chaque flux vidéo étant obtenu par encodage du contenu multimédia source M selon un profil. Lors d'une huitième étape S8, l'unité de contrôle 29 du module d'encodage 7 analyse chaque flux vidéo obtenu pour déterminer la valeur de qualité d'encodage du profil d'encodage du 10 flux vidéo. Cette valeur mesurée est donc la valeur effective, réelle, de la qualité d'encodage du profil d'encodage du flux vidéo et peut donc être différente de la valeur théorique de la gamme de valeurs théoriques relatives à une qualité d'encodage visée. Lors d'une neuvième étape S9, l'unité de contrôle 29 compare donc, pour chaque flux vidéo analysé, la valeur de qualité d'encodage effectivement obtenue avec la valeur théorique de 15 qualité d'encodage visée du profil d'encodage correspondant. Les résultats de la comparaison sont ensuite transmis au module d'analyse 3. Lors d'une dixième étape SlO, sur la base de la comparaison effectuée, le module d'analyse 3 modifie la fonction prédéterminée F en vue d'améliorer ultérieurement la fiabilité du calcul de la gamme de valeurs de débit vidéo et l'obtention de l'ensemble de couples de valeurs débit 20 vidéo-qualité théorique d'une image. On obtient alors une nouvelle fonction prédéterminée F'. Dans un mode de réalisation, la fonction prédéterminée F est modifiée sur la base de la comparaison effectuée si la différence entre la valeur de qualité d'encodage obtenue pour un flux vidéo et la valeur théorique de qualité d'encodage visée du profil correspondant. au flux 25 vidéo est supérieure ou égale à un seuil prédéterminé. Comme expliqué précédemment, il est évident pour l'homme du métier qu'il s'agit ici d'une différence absolue. Par exemple, lors de l'étape précédente S9, les résultats de la comparaison ne sont transmis au module d'analyse 3 que si la différence entre la valeur théorique de qualité visée et la valeur réelle de qualité effectivement mesurée est supérieure ou égale à ce seuil prédéterminé. 29 Comme expliqué précédemment, la fonction prédéterminée F peut être déterminée par la mise en oeuvre d'un algorithme d'apprentissage sur la base d'un ensemble de données d'entrainement relatives à l'encodage d'une pluralité de contenus multimédias d'entrainement selon différents profils d'encodage d'entrainement et à la mesure d'une valeur relative à la 5 qualité de l'encodage suite à chaque encodage. Dans un tel mode de réalisation, le module d'analyse 3 modifie la fonction prédéterminée F sur la base de la comparaison effectuée par l'unité de contrôle 29 en intégrant l'ensemble des nouvelles données relatives à l'encodage du contenu multimédia source M et à l'analyse du ou des flux vidéo obtenus, de sorte que les nouvelles données ont un poids supérieur à celle des données d'entrainement. 10 Par exemple, si l'algorithme d'apprentissage comprend une méthode des moindres carrés, la nouvelle fonction prédéterminée F' peut être déterminée en utilisant une équation des moindres carrés pondérée pour combiner les données d'entrainement initiales avec les nouvelles données résultant des mesures sur le ou les flux vidéo obtenus au niveau du module d'encodage 9 en donnant, par exemple, davantage d'importance à ces nouvelles données. 15 La présente invention présente plusieurs avantages. L'utilisation d'une fonction prédéterminée pour générer un ensemble de couples débit vidéo global-qualité théorique pour différentes versions du contenu multimédia source permet d'obtenir un ensemble de profils d'encodage potentiels sans avoir à encoder le contenu multimédia source pour évaluer la qualité de chaque encodage. En effet, aucun encodage n'est 20 réalisé au niveau du module d'analyse. Le seul traitement du contenu multimédia source consiste à générer plusieurs versions de ce contenu à différentes résolutions. La fonction prédéterminée, déterminée par apprentissage, permet ainsi d'anticiper et d'estimer avec une certaine fiabilité la qualité d'un encodage sans avoir à mettre en oeuvre effectivement cet encodage. Cette passe d'analyse rapide puisque mise en oeuvre sans encodage est adaptée à un 25 contexte de diffusion en direct. Par ailleurs, le contrôle de la qualité des flux vidéo générés par encodage selon différents profils d'encodage au niveau du module d'encodage permet d'améliorer les performances de la fonction prédéterminée tout. en s'assurant. de la qualité des flux vidéo générés et destinés à être diffusés aux utilisateurs de terminaux de réception. 30 Enfin, grâce au procédé et au système visés, non seulement l'encodage n'est pas nécessaire mais en plus la qualité est une variable d'entrée de la fonction prédéterminée et non la sortie, 30 d'où la possibilité de déterminer le profil permettant d'obtenir la qualité souhaitée. A l'inverse, lorsqu'un encodage est réalisé en amont, l'analyse de cet encodage permet de connaître la qualité d'encodage d'un profil testé mais ne permet pas, pour une valeur de qualité souhaitée, REVENDICATIONS: 1. Procédé mis en oeuvre par des moyens informatiques en vue d'encoder numériquement un contenu multimédia source (M) en un ou plusieurs flux vidéo pour une diffusion à la demande à au moins un terminal de réception, le procédé comprenant les étapes suivantes: - générer (S1) un ensemble de versions (Vi) dudit contenu multimédia, chaque version étant caractérisée par une résolution et comprenant une succession d'images, - déterminer (S2, S3), pour chaque image de la succession d'images de chaque version, au moins une caractéristique temporelle et au moins une caractéristique spatiale, - calculer (54), pour chaque image de la succession d'images de chaque version, une gamme de valeurs de débit vidéo, chaque valeur de débit vidéo étant calculée par application d'une fonction prédéterminée (F) à l'au moins une caractéristique temporelle de ladite image, l'au moins une caractéristique spatiale de ladite image et une valeur d'une gamme donnée de valeurs théoriques relatives à une qualité d'encodage visée de manière à obtenir, pour chaque image, un ensemble de couples de valeurs débit vidéo-qualité théorique, - calculer (S5), pour chaque version et pour chaque valeur de la gamme donnée de valeurs théoriques de qualité d'encodage, un débit vidéo global fonction des débits vidéo associés à ladite valeur théorique de qualité d'encodage pour chaque image de la succession d'images de ladite version de manière à obtenir, pour chaque version, un ensemble de couples de valeurs débit vidéo global-qualité théorique. 2. Procédé selon la revendication 1, dans lequel chaque image comprend une matrice de pixels, la détermination d'au moins une caractéristique temporelle d'une image de la succession d'images d'une version comprenant : - partitionner (S21) ladite image en un ensemble de blocs de pixels, et - réaliser (S22) une estimation de mouvement sur chaque bloc de pixels de sorte que chaque bloc de pixels est caractérisé, après ladite estimation de mouvement, par un vecteur de mouvement et par une mesure de la qualité de l'estimation de mouvement, 32 l'au moins une caractéristique temporelle de l'image comprenant les vecteurs de mouvement respectifs des blocs de pixels de ladite image et les mesures de qualité associées. 5 3. Procédé selon la revendication 2, dans lequel la qualité de l'estimation de mouvement comprend une somme des différences absolues. 4. Procédé selon l'une des revendications précédentes, dans lequel chaque image comprend une matrice de pixels, la détermination d'au moins une caractéristique 10 spatiale d'une image de la succession d'images d'une version comprenant : partitionner (S31) ladite image en un ensemble de blocs de pixels, et. mesurer (S32) la variance de chaque bloc de pixels de ladite image, l'au moins une caractéristique spatiale de l'image comprenant les variances respectives des blocs de pixels de ladite image. 15 5. Procédé selon l'une des revendications précédentes, dans lequel la fonction prédéterminée est déterminée par la mise en oeuvre d'un algorithme d'apprentissage sur la hase d'un ensemble de données d'entraincment relatives à l'encodage d'une pluralité de contenus multimédias d' entrai nement selon 20 différents profils d'encodage d' entraincment, chaque profil d'encodage d'cntraincmcnt étant caractérisé par une résolution et un débit vidéo global, et à la mesure d'une valeur relative à la qualité de l'encodage suite à chaque encodage. 6. Procédé selon la revendication 4 ou 5, dans lequel l'algorithme d'apprentissage 25 utilise un modèle de réseau de neurones. 7. Procédé selon l'une des revendications précédentes, dans lequel le débit vidéo global associé à une version et à une valeur de la gamme donnée de valeurs théoriques de qualité d'encodage est une moyenne des débits vidéo associés à 30 ladite valeur théorique de qualité d'encodage pour chaque image de la succession d'images de ladite version. 8. Procédé selon l'une des revendications précédentes, comprenant en outre : 33 - sélectionner (S6) au moins un groupe de profils d'encodage en fonction de l'ensemble de couples de valeurs débit vidéo global-qualité théorique de chaque version, chaque profil d'encodage étant caractérisé par une résolution et un débit vidéo global, 5 - encoder (57) le contenu multimédia en un ou plusieurs flux vidéo, chaque flux vidéo étant obtenu par encodage dudit contenu multimédia selon un profil de l'au moins un groupe de profil sélectionné. 9. Procédé selon la revendication 8, comprenant en outre, suite à l'encodage du 10 contenu multimédia en un ou plusieurs flux vidéo : - analyser (S8) chaque flux vidéo obtenu pour déterminer la valeur de qualité d'encodage du profil d'encodage dudit flux vidéo, - comparer (S9), pour chaque flux vidéo analysé, la valeur de qualité d'encodage effectivement obtenue avec la valeur théorique de qualité d'encodage visée du 15 profil d'encodage correspondant, et - sur la base de la comparaison effectuée, modifier (S10) la fonction prédéterminée en vue d'améliorer ultérieurement la fiabilité du calcul de la gamme de valeurs de débit vidéo et l'obtention de l'ensemble de couples de valeurs débit vidéo-qualité théorique d'une image. 20 10. Procédé selon la revendication 9, dans lequel la fonction prédéterminée est modifiée sur la base de la comparaison effectuée si la différence entre la valeur de qualité d'encodage obtenue pour un Ilux vidéo et la valeur théorique de qualité d'encodage visée du profil correspondant audit flux vidéo est supérieure ou égale à 25 un seuil prédéterminé. 11. Procédé selon la revendication 9 ou 10, dans lequel la fonction prédéterminée est déterminée par la mise en oeuvre d'un algorithme d'apprentissage sur la base d'un ensemble de données d'entrainement relatives à l'encodage d'une pluralité de 30 contenus multimédias d'entrainement selon différents profils d'encodage d'entrainement et à la mesure d'une valeur relative à la qualité de l'encodage suite à chaque encodage, la modification de la fonction prédéterminée sur la base de la comparaison effectuée comprenant l'intégration d'un ensemble de nouvelles données relatives à l'encodage du contenu multimédia source et à l'analyse du ou 34 des flux vidéo obtenus, lesdites nouvelles données ayant un poids supérieur à celle des données d' entrainement.. 12. Programme informatique comprenant des instructions pour la mise en oeuvre du 5 procédé selon l'une des revendications précédentes, lorsque lesdites instructions sont exécutées par au moins un processeur (21, 25, 35). 13. Système (1), comprenant un module d'analyse (3), en vue d'encoder numériquement un contenu multimédia source (M) en un ou plusieurs flux vidéo 10 pour une diffusion à la demande à au moins un terminal de réception, ledit module d'analyse étant agencé pour : - générer un ensemble de versions (Vi) dudit contenu multimédia, chaque version étant caractérisée par une résolution et comprenant une succession d'images, - déterminer, pour chaque image de la succession d'images de chaque version, au 15 moins une caractéristique temporelle et au moins une caractéristique spatiale, - calculer, pour chaque image dc la succession d'images dc chaque version, une gamme de valeurs de débit vidéo, chaque valeur de débit vidéo étant calculée par application d'une fonction prédéterminée (F) à l'au moins une caractéristique temporelle de ladite image, l'au moins une caractéristique spatiale de ladite image 20 et une valeur d'une gamme donnée de valeurs théoriques relatives à une qualité d'encodage visée de manière à obtenir, pour chaque image, un ensemble de couples de valeurs débit vidéo-qualité théorique, - calculer, pour chaque version et pour chaque valeur de la gamme donnée de valeurs théoriques de qualité d'encodage, un débit vidéo global fonction des débits 25 vidéo associés à ladite valeur théorique de qualité d'encodage pour chaque image de la succession d'images de ladite version dc manière à obtenir, pour chaque version, un ensemble de couples de valeurs débit vidéo global-qualité théorique. 14. Système selon la revendication 13, comprenant en outre : 30 - un module de sélection (5) agencé pour recevoir l'ensemble de couples de valeurs débit vidéo global-qualité théorique associé à chaque version, ledit module de sélection étant agencé en outre pour sélectionner au moins un groupe de profils d'encodage du contenu multimédia, chaque profil d'encodage étant caractérisé par une résolution et un débit vidéo global, et - un module d' encodage (7) agencé pour encoder le contenu multimédia en un ou plusieurs flux vidéo, chaque flux vidéo étant obtenu par encodage dudit contenu multimédia selon un profil d'encodage de l'au moins un groupe de profils d'encodage sélectionné par le module de sélection. 5 15. Système selon la revendication 14, dans lequel le module d'encodage est agencé en outre pour : - analyser chaque flux vidéo obtenu pour déterminer la valeur de qualité d'encodage du profil d'encodage dudit flux vidéo, 10 - comparer, pour chaque flux vidéo analysé, la valeur de qualité d'encodage effectivement obtenue avec la valeur théorique de qualité d'encodage visée du profil d'encodage correspondant, et - transmettre les résultats de ladite comparaison au module d'analyse, le module d'analyse étant agencé en outre pour, sur la base de la comparaison 15 effectuée, modifier la fonction prédéterminée en vue d'améliorer ultérieurement la fiabilité du calcul de la gamme de valeurs de débit vidéo et l'obtention de l'ensemble de couples de valeurs débit vidéo-qualité théorique d'une image.