FR 3025925 A1 20160318 FR 1458793 A 20140917 1 Procédé de contrôle de modes de présentation de sous-titres DOMAINE DE L'INVENTION [0001] La présente invention concerne le domaine du sous-titrage vidéo, et en particulier du sous-titrage en temps réel. Elle se rapporte à la fois à la génération de sous-titres et à la présentation de ceux-ci. ETAT DE L'ART PRECEDENT [0002] L'application de sous-titres est un élément important de la production de flux vidéo. En effet, ces sous-titres permettent à un utilisateur d'avoir une meilleure compréhension du contenu de la vidéo, et particulièrement des paroles prononcées, lorsque celles-ci sont peu ou pas compréhensibles. Ceci est particulièrement utile lorsqu'un programme est émis dans une langue non connue de l'utilisateur, ou encore lorsque la perception auditive du langage est perturbée par une mauvaise transmission, des paroles mal articulées ou encore du bruit de fond. Enfin, les sous-titres permettent aux personnes malentendantes d'accéder à la compréhension du programme. [0003]L'application de sous-titres peut s'effectuer principalement de deux manières : en différé ou en temps réel (sous-titres dits live dans le langage courant du domaine). L'application de sous-titres en différé s'effectue sur un support préparé à l'avance. On trouve ce type de sous-titrage, par exemple, dans les DVD, disques Blu-ray ou émissions diffusées en différé. Cette application en différé ne présente pas de contrainte de temps particulière. Ainsi, il est possible dans ce cas d'insérer manuellement des sous-titres dans le flux vidéo, un opérateur vérifiant que les sous-titres sont parfaitement synchronisés avec la vidéo, tout en présentant un aspect visuel perçu comme agréable par l'utilisateur. Bien que subjective, cette notion de perception agréable des sous-titres peut être ramenée à des éléments objectifs, par exemple obtenir des sous-titres qui s'affichent à une vitesse modérée, ou qui conservent une position fixe par rapport à l'écran. Il est également possible d'utiliser des méthodes d'analyse audio qui peuvent 302 592 5 2 s'avérer coûteuses en temps de calcul, afin de synchroniser au mieux les sous-titres et l'audio / vidéo. [0004]Dans le cas des sous-titres live, il n'est en revanche pas possible d'utiliser ces techniques. En effet, dans ce cas le contenu vidéo produit est 5 immédiatement transmis. La production de sous-titres live s'effectue de manière générale par un opérateur produisant les sous-titres en direct et les envoyant dans le flux. Cette opération produit un délai inévitable entre le moment ou la vidéo est transmise et le moment ou le sous-titres correspondant est produit. Ce délai est encore plus important lorsque la 10 tâche de l'opérateur induit une traduction d'une langue à l'autre pour la production des sous-titres. [0005]L'approche généralement utilisée pour traiter les sous-titres live est de transmettre chaque mot de sous-titres dès qu'il est disponible, afin de ne pas ajouter de délai supplémentaire. Cette approche induit cependant des 15 inconvénients additionnels pour l'utilisateur : en plus d'un délai inévitable, les mots arrivent les uns à la suite des autres, en ne formant pas toujours un tout cohérent. De plus, lorsque les sous-titres sont formés à partir d'une source télétexte, le changement de ligne peut entraîner un décalage des mots vers le haut. Ce décalage vers le haut, ou « shift up » selon la terminologie anglo- 20 saxonne, consiste, lorsqu'une nouvelle ligne de sous-titres démarre, à décaler l'ensemble des lignes de sous-titres d'une ligne vers le haut et à supprimer la plus ancienne. Cet effet peut être particulièrement perturbant pour le spectateur, car si un mot qu'il lisait est décalé vers le haut, il devra produire un effort supplémentaire pour suivre ce mot tout en conservant le 25 sens global du sous-titre. [0006]Les sous-titres live sont ainsi souvent perçus par les utilisateurs comme désagréables et de mauvaise qualité. La présentation des mots de sous-titres a été listée comme l'une des principales causes de mauvaise perception des sous-titres live par les utilisateurs par Ofcom (Office of 30 Communications), The quality of live subtitling, pp. 29-30, http://stakeholders.ofcom.orq.u/inaries/consultations/subtitlinq/summar/su bffiling.pdf. [0007]D'après cette étude, les utilisateurs semblent préférer les sous-titres présentés par blocs. Cependant, la définition d'un « bloc » reste large, et 35 certains utilisateurs peuvent préférer des sous-titres présentés ligne par 302 5 9 2 5 3 ligne, alors que d'autres préfèrent des sous-titres présentés phrase par phrase, ou encore mot par mot. [0008]Les méthodes connues de l'état de l'art consistent à produire ou mettre à jour une page de sous-titres dans un encodeur vidéo, et décoder 5 puis afficher cette page ou mise à jour de page. Les sous-titres peuvent être encodés sous forme d'images, comme par exemple dans le standard DVBSUB (selon l'acronyme anglais Digital Video Braodcasting Subtitles, ou Sous-titres Radiotélévision Vidéo Numérique). Dans ce cas, le style de sous-titres (couleur, taille des caractères...) est totalement défini par l'image. Ils 10 peuvent également être encodés sous formes de caractères textuels, comme par exemple dans les différents standards basés sur W3C TTML (selon l'acronyme World Wide Web Consortium Timed Text Markup Language, ou Consortium Toile sur la Largeur du Monde Langage Extensible de Texte Temporisé).. Dans ce cas, les sous titres sont stockés sous forme de 15 caractères formant des mots comme dans un fichier texte, et éventuellement des informations d'en-tête précisant un style de présentation à appliquer. Le style de présentation contient alors des informations telles que la taille de caractères à appliquer, la police, etc... A titre d'exemple, les styles de présentation disponibles dans le standard EBU-TT (de l'acronyme anglais 20 European Broadcasting Union-Timed Text, ou Union Européenne de Radiodiffusion - Texte Temporisé), issu de W3C TTML, sont décrits dans le document EBU-UER, EBU-TT Part 1, Subtitling format definition, (https://tech.ebu.ch/docs/tech/tech3350.pdf). [0009]Le brevet US 8695048 décrit une méthode permettant de transcrire 25 des sous-titrages pour sourds et malentendants depuis un premier format vers un second format indépendant de la plate-forme. Ce second format peut notamment être basé sur les standards DVB-SUB ou des standards basés sur W3C TTML, tels que par exemple EBU-TT ou SMPTE-TT (de l'acronyme anglais Society of Motion Picture and Television Engineers-Timed Text, ou 30 Société des Ingénieurs de l'Image Animée et de la Télévision - Texte Temporisé). [0010]Le brevet US 5497241 décrit un système permettant d'afficher dans une vidéo des sous-titres par blocs. Cependant, les blocs sont ici des blocs prédéfinis, chaque bloc étant associé à un langage. Ainsi, le choix du 35 langage détermine la forme des blocs et de la présentation. 3025925 4 [0011 ]Les standards et techniques de codage de sous-titres disponibles aujourd'hui permettent donc de représenter des sous-titres avec des styles variés (essentiellement des fontes de caractères différentes), séparer ces sous-titres en blocs et afficher les blocs de sous-titres selon le style voulu. 5 Cependant, les techniques connues de l'état de l'art ne permettent pas à l'utilisateur de choisir, à partir d'une même source de sous-titres, un mode de présentation et de segmentation en blocs. Ce problème affecte particulièrement les sous-titres live ou le seul mode de présentation est souvent le mode mot-à-mot. Cependant, il s'applique aussi aux sous-titres 10 préparés à l'avance, pour lesquels un mode de présentation préparé à l'avance (par exemple, affichage ligne par ligne) peut être différent du mode de présentation préféré de l'utilisateur (par exemple, phrase par phrase). [0012]Un but de l'invention est donc de proposer un procédé de contrôle de la forme de présentation des sous-titres, permettant de proposer à 15 l'utilisateur plusieurs modes de présentation pour un même contenu de sous-titres, tout en lui laissant une grande flexibilité dans le choix de son mode de présentation préféré. L'invention peut s'appliquer quel que soit le mode de transport. Elle peut en particulier s'appliquer à des flux multimédia, par exemple aux flux MPEG-TS (de l'acronyme anglais Motion Picture Experts 20 Group - Transport Stream, ou Groupe d'Expert de l'Image Animée - Flux de Transport), mais aussi à des fichiers, par exemple aux fichiers au format ISOBMFF (de l'acronyme anglais International Standards Organisation Base Media File Format, ou Format de Ficher Média de Base de l'Organisation de Normalisation internationale). Elle peut également s'appliquer à tout type de 25 représentation des sous-titres. Elle peut en particulier s'appliquer à des sous-titres représentés sous-forme d'image, par exemple dans le cadre du standard DVB-SUB, mais aussi à des sous-titres représentés sous forme textuelle, par exemple dans le cadre des différents standards basés sur W3C TTML (EBU-TT, SMPTE-TT, ..). 30 3025925 5 RESUME DE L'INVENTION [0013]A cet effet, l'invention concerne un procédé de création d'un flux ou fichier de sous-titres composé d'éléments de sous-titres, ledit procédé 5 comprenant au moins, pour chaque élément de sous-titres, une étape d'insertion dudit élément de sous-titres dans le flux ou fichier de sous-titres ; au moins une étape de vérification d'au moins une condition de fin de bloc, un bloc comprenant au moins un élément de sous-titres, ladite condition de fin de bloc étant liée à un mode de présentation des sous-titres; lorsque 10 ladite au moins une condition de fin de bloc est vérifiée, l'insertion dans le flux ou fichier de sous-titres d'une donnée représentative de la fin d'un bloc selon ledit mode de présentation de sous-titres. [0014]Dans un ensemble de modes de réalisation de l'invention, la condition de fin de bloc comprend la détection d'au moins un caractère prédéfini 15 marquant la fin d'un bloc. [0015]Avantageusement, au moins un caractère prédéfini est un point, une virgule, un point virgule ou un caractère de ponctuation. [0016]Dans un ensemble de modes de réalisation, l'invention s'applique à un procédé de création d'un flux de sous-titres respectant le standard MPEG20 TS. [0017]Dans un ensemble de modes de réalisation, l'invention s'applique à un procédé de création d'un fichier de sous-titres respectant au moins un standard basé sur W3C TTML. [0018]Avantageusement, une donnée représentative de la fin d'un bloc y est 25 écrite dans une balise spécifique. [0019]L'invention concerne également un procédé de présentation d'un flux ou d'un fichier de sous-titres sur le terminal d'un utilisateur, ledit procédé comprenant au moins une étape de sélection sur ledit terminal d'un mode de 30 présentation de sous-titres ; une étape de lecture d'un bloc de sous-titres associé au dit mode de présentation dans ledit flux ou fichier ; une étape de présentation sur le terminal dudit au moins un bloc de sous-titres selon ledit mode de présentation. [0020]Avantageusement, le procédé de présentation d'un flux ou d'un fichier 35 de sous-titres selon l'invention comprend la lecture dudit flux ou fichier 3025925 6 jusqu'à une donnée représentative de la fin d'un bloc de sous-titres selon le mode de présentation de sous-titres sélectionné. [0021]Dans un ensemble de modes de réalisation, l'invention s'applique à un procédé de présentation d'un flux de sous-titres respectant la norme MPEG5 TS. [0022]Dans un ensemble de modes de réalisation, l'invention s'applique à un procédé de présentation de fichiers de sous-titres respectant au moins un standard basé sur W3C TTML. [0023]Avantageusement, la donnée représentative de la fin d'un bloc est 10 écrite dans une balise spécifique. [0024] L'invention concerne également un système de création d'un flux ou fichier de sous-titres composé d'éléments de sous-titres, ledit système comprenant au moins, pour chaque élément de sous-titres, au moins un module configuré pour insérer ledit élément de sous-titres dans le flux ou 15 fichier de sous-titres ; au moins un module configuré pour vérifier au moins une condition de fin de bloc, un bloc comprenant au moins un élément de sous-titres, ladite condition de fin de bloc étant liée à un mode de présentation des sous-titres; au moins un module configuré pour, lorsque ladite au moins une condition de fin de bloc est vérifiée, l'insertion dans le 20 flux ou fichier de sous-titres d'une donnée représentative de la fin d'un bloc selon ledit mode de présentation de sous-titres. [0025]L'invention concerne également un terminal utilisateur configuré pour présenter un flux ou fichier de sous-titres à au moins un utilisateur, ledit terminal comprenant au moins, pour chaque élément de sous-titres : au 25 moins un élément pour mettre en oeuvre la sélection d'un mode de présentation de sous-titres par ledit au moins un utilisateur ; au moins un élément configuré pour lire un bloc de sous-titres associé audit mode de présentation de sous-titres ; au moins un élément configuré pour présenter ledit au moins un bloc de sous-titres selon ledit au moins un mode de 30 présentation. [0026]L'invention concerne également un programme d'ordinateur pour créer, lorsqu'il est exécuté sur un processeur, un flux ou fichier de sous-titres composé d'éléments de sous-titres, ledit programme d'ordinateur comprenant au moins, pour chaque élément de sous-titres : des éléments de 35 code informatique pour insérer ledit élément de sous-titres dans le flux ou 3025925 7 fichier de sous-titres ; des éléments de code informatique pour vérifier au moins une condition de fin de bloc, un bloc comprenant au moins un élément de sous-titres, ladite condition de fin de bloc étant liée à un mode de présentation de sous-titres ; des éléments de code informatique pour, 5 lorsque ladite au moins une condition de fin de bloc est vérifiée, insérer dans le flux ou fichier de sous-titres une donnée représentative de la fin d'un bloc selon ledit mode de présentation de sous-titres. [0027]L'invention concerne également un programme d'ordinateur configuré pour, lorsqu'il est exécuté sur un processeur, présenter un flux ou fichier de io sous-titres sur le terminal utilisateur, ledit programme d'ordinateur comprenant au moins : des éléments de code informatique pour mettre en oeuvre la sélection d'un mode de présentation de sous-titres par au moins un utilisateur ; des éléments de code informatique pour lire un bloc de sous-titres associé audit mode de présentation de sous-titres ; des éléments de 15 code informatique pour présenter ledit au moins un bloc de sous-titres selon ledit au moins un mode de présentation. [0028]Le procédé selon l'invention permet ainsi à un utilisateur de choisir la forme de présentation qu'il juge la plus appropriée pour les sous-titres. 20 [0029] Le procédé selon l'invention permet à l'utilisateur une grande flexibilité pour la présentation des sous-titres. [0030]Lorsqu'elle est mise en oeuvre à l'aide de métadonnées ou d'extension de standards existants, l'invention est rétro-compatible avec les systèmes de décodage de sous-titres existants. 25 [0031 ]Un encodeur peut être mis à jour avec de nouveaux modes de présentation, de manière transparente pour le spectateur qui pourra choisir parmi un plus grand choix de modes de présentation de sous-titres. [0032]L'invention est compatible avec tous les modes de transmissions de sous-titres, notamment sous forme de flux ou fichiers. 30 [0033]L'invention est notamment applicable aux flux multimédia selon les standards MPEG-TS. [0034] L'invention est notamment applicable aux fichiers multimédia selon les standards ISOBMFF. [0035]L'invention est applicable aux représentations de sous-titres sous 35 forme d'images, comme par exemple dans le standard DVB-SUB. 3025925 8 [0036]L'invention est applicable aux représentations de sous-titres sous forme de texte, comme par exemple pour les différents standards basés sur W3C TTML (EBU-TT, SMPTE-TT, ..). 5 LISTE DES FIGURES [0037]D'autres caractéristiques apparaîtront à la lecture de la description détaillée donnée à titre d'exemple et non limitative qui suit faite au regard de dessins annexés qui représentent: 10 - les figures I a et 1 b, deux exemples d'encodeurs vidéo produisant un flux avec des sous-titres, l'un à partir de contenus live, l'autre à partir d'un fichier, selon l'état de l'art ; - les figures 2a et 2b, des schémas illustrant des structures de flux multimédia intégrant des sous-titres, respectivement MPEG-TS et 15 EBU-TT, un des standards basés sur W3C TTML, selon l'état de l'art ; - la figure 3, un diagramme de flux illustrant un procédé de création de sous-titres selon l'invention ; - les figures 4a, 4b, 4c et 4d, quatre exemples de sous-titres produits par un procédé selon l'invention, respectivement dans une structure 20 de flux MPEG-TS et des fichiers selon les standards EBU-TT, SMPTE-TT et W3C TTML ; - la figure 5, un diagramme de flux illustrant un procédé de présentation d'un flux ou d'un fichier de sous-titres sur le terminal d'un utilisateur; - les figures 6a, 6b et 6c, trois schémas illustrant respectivement trois 25 exemples de modes de présentation de sous-titres, selon l'art antérieur dans la figure 6a et selon l'invention dans les figures 6b et 6c. 3025925 9 DESCRIPTION DETAILLEE [0038] Dans la suite de la description le procédé selon l'invention est illustré par des exemples relatifs à la génération de sous-titres dans un encodeur et 5 la présentation de sous-titres par un décodeur, même s'il convient de noter que l'invention peut être appliquée à tout type de dispositif traitant des sous-titres, notamment un transcodeur inclus dans une chaîne de traitement vidéo. [0039]Certains acronymes anglo-saxons couramment utilisés dans le domaine technique de la présente demande pourront être employés au cours 10 de la description et des figures. Ces acronymes sont listés dans le tableau ci-dessous, avec notamment leur expression anglo-saxonne et leur signification. Acronyme Expression Signification AAC Advanced Audio Coding Codage Audio Avancé. Standard de compression et de codage Audio. ABR Adaptive Bit Rate Débit binaire Adaptatif. Décrit un flux multimédia dont le débit binaire peut être adapté, notamment pour ne fournir que les données suffisantes pour atteindre une qualité donnée, ou pour s'adapter à une capacité de transmission. AVC Advanced Video Codage Vidéo Avancé. Standard de Coding compression et de codage vidéo, également appelée H.264. DDS Display Definition Segment de Défintion de l'Affichage. Segment Segment de la norme DVBSUB indiquant la résolution (Hauteur x Largeur) sur laquelle les sous-titres doivent être affichés. DVB Digital Video Radiodiffusion Vidéo Numérique. Broadcasting Consortium ayant produit plusieurs standards pour la télévision numérique. S'applique aussi aux standards produites, notamment le standard de sous-titres 302 5 92 5 10 DVBSUB, ou standard ETSI EN 300 743. DVBSUB Digital Video Sous-titres Radiotélévision Vidéo Braodcasting Subtitles Numérique. Standard de sous-titrage éditée par le DVB, également désignée ETSI EN 300 743. EBU European Broadcasting Union Union Européenne de Radiodiffusion. Association internationale de radiodiffuseurs. L'acronyme s'applique également aux standards produits par l'organisation. EBU-TT European Broadcasting Union-Timed Text Union Européenne de Radiodiffusion - Texte Temporisé. Standard de codage de sous-titres produite par l'EBU et basée sur le standard TTML du W3C.. ETSI European Institut des Standards Européens de Telecommunication Standard Institute Télécommunication. Organisme de standardisation européen du domaine des télécommunications. L'acronyme s'applique également aux standards produits par l'institut. HD High Definition Haute Définition. Désigne un flux vidéo de haute résolution et qualité, présentant généralement un nombre bits par seconde élevé. HEVC High Efficiency Codage Vidéo Haute Efficacité. Standard Video Coding de compression et de codage vidéo, également appelée H.265. ISO International Standard Organisation Organisation de Normalisation Internationale. Organisation établissant des standards, notamment dans le domaine multimédia. ISOBMFF ISO Base Media Format de Ficher Média de Base de l'ISO. Format de fichier générique contenant des File Format données multimédia. De nombreux formats de fichiers, tels que le .mp4 ou le 3025925 11 .m4a, sont basés sur l'ISOBMFF. MPEG Motion Picture Groupe d'Experts de l'Image Animée. Experts Group Groupe d'experts ayant édité des standards pour les contenus multimédia. Ce nom est également appliqué à certains des standards produits, par exemple le standard MPEG-2 MPEG-TS Motion Picture Groupe d'Expert de l'Image Animée - Flux de Transport. Standard définissant un flux Experts Group - de transport multimedia défini par le Transport Stream comité MPEG. OTT Over The Top Au-dessus. Envoi d'un média d'un fournisseur de contenu vers un lecteur via une connexion internet standard plutôt qu'une infrastructure dédiée. PCM Pulse Code Modulation de Codage d'Impulsion. Modulation Représentation numérique non compressée d'un signal analogique via une technique d'échantillonnage. PCR Program Clock Horloge de Reference du Programme. Reference Donnée temporelle permettant de synchroniser les différents flux multimédia au sein d'un programme dans les flux MPEG-TS. PES Packetized Flux élémentaire par Paquet. Spécification Elementary Stream dépendant du standard MPEG-2, et décrivant la syntaxe d'un flux élémentaire (vidéo, audio, sous-titres...) au sein d'un flux MPEG-TS. Un flux PES est divisé en paquets PES pouvant être multiplexés avec des paquets d'autres flux élémentaires PES au sin d'un flux MPEGTS. PCS Page composition Segment de la norme DVBSUB indiquant la composition de la page de sous titres. segment 3025925 12 PTS Presentation Time Estampille Temporelle de Présentation. Stamp Indique une estampille temporelle à laquelle un élément doit être présenté au sein d'un flux. SD Standard Definition Définition Standard. Désigne un flux vidéo de résolution moyenne. SDI Serial Digital Interface Numérique Série. Protocole de Interface transport ou de diffusion de différents formats multimédia, notamment utilisé comme mode de communication interne entre les différents modules d'un encodeur vidéo. SMPTE Society of Motion Société des Ingénieurs de l'Image Animée Picture and et de la Télévision. Association Television Engineers internationale, située aux Etats-Unis, développant des standards vidéo. SMPTE- TT SMPTE-Timed Text Texte Temporisé SMPTE. Standard de codage de sous-titres élaboré par la SMPTE et basé sur W3C TTML. XML Extensible Markup Langage de Balise extensible. Langage Language informatique de balisage d'informations. W3C World Wide Web Consortium Consortium Toile sur la Largeur du Monde. Organisme de normalisation chargé de promouvoir la compatibilité des technologies Web, notamment le langage XML. W3C TTML W3C Timed Text Markup Language W3C Langage Extensible de Texte Temporisé. W3C TTML est une technique de présentation d'un support textuel de façon synchronisée avec un autre support, par exemple audio ou vidéo. [0040] Dans la suite de la description, on appellera « élément de sous-titres » un ensemble de caractères destinés à être affichés à l'écran de manière 3025925 13 simultanée. Un élément de sous-titres consiste généralement en un mot, un ensemble de mots ou une phrase. [0041]On appellera « mode de présentation de sous-titres » un ensemble de règles de groupage et segmentation d'éléments de sous-titres en blocs de 5 sous-titres destinées à obtenir une présentation cohérente des sous-titres. Ainsi, un mode de sous-titres définit la manière dont les éléments de sous-titres sont groupés entre eux pour être présentés. On peut par exemple considérer un mode de présentation de sous-titres « phrase par phrase » consistant à créer un bloc de sous-titres à afficher simultanément pour 10 chaque phrase dans le flux de sous-titres. Ainsi le mode de présentation de sous-titres décrit la manière dont les mots et caractères sont groupés ensemble, et ne doit pas être confondu avec le style de présentation de sous-titres. Le style de présentation de sous-titres décrit, pour chaque caractère, groupe de caractères ou pour l'ensemble d'un flux ou fichier de 15 sous-titres la manière dont il doit être représenté à l'écran (police et taille de caractères, couleur, etc...). [0042]Le standard TTML du W3C, basé sur le format XML, permet un codage particulièrement flexible des sous-titres. Il est conçu pour fournir un langage de description de sous-titres générique et extensible, et il en existe 20 des implémentations particulières telles que le standard EBU-TT et le standard SMPTE-TT. Dans la suite de la description, les expressions « un des standards W3C TTML », « un des standards basés sur W3C TTML », « un des standards TTML du W3C », ou des expressions similaires, se référeront au standard TTML du W3C lui-même, ainsi qu'aux standards qui 25 en constituent des implémentations, tels que le standard EBU-TT ou le standard SMPTE-TT, par exemple. [0043]Les figures 1 a et 1 b représentent deux exemples d'encodeurs vidéo produisant un flux avec des sous-titres, l'un à partir de contenus live, l'autre à 30 partir d'un fichier d'entrée, selon l'état de l'art. [0044]La figure 1a représente un exemple d'encodeur vidéo traitant des sous-titres live connu de l'état de l'art. Cet encodeur comprend notamment : - Un encodeur multimédia 100a, comprenant lui-même : o Un encodeur vidéo 101a ; 35 o Un encodeur audio 102a ; 3025925 14 o Un encodeur de sous-titres 103a ; o Un multiplexeur de flux 104a ; - Un inséreur de sous-titres 112a ; - Des interfaces SDI permettant de transmettre les flux multimédia au 5 sein de l'encodeur [0045]Cet encodeur produit au moins un flux multimédia en direct, par exemple uniquement illustratif et non limitatif du champ d'application de l'invention, pour des retransmissions télévisées d'événements sportifs ou de bulletins météo. Selon une chaîne de conception de contenu multimédia en 10 live courante dans l'état de l'art, un flux multimédia 110a contenant un ou plusieurs canaux audio et vidéo est produit en continu. [0046]Un flux de sous-titres 111a est alors ajouté en temps réel au flux multimédia 110a par l'inséreur de sous-titres 112a, afin de produire un flux multimédia brut 113a contenant des sous-titres. Ces sous-titres sont 15 généralement produits par un opérateur retranscrivant en temps réel les paroles exprimées à l'écran. D'une manière générale, l'opérateur écrit chaque mot séparément, puis envoie celui-ci à l'inséreur de sous-titres immédiatement afin de minimiser le temps de latence entre le contenu audio / vidéo et le contenu des sous-titres. Le flux de sous-titres produit peut ainsi, 20 selon les variations de vitesse d'écriture et de compréhension de l'opérateur, présenter des vitesses variables de présentation de mots successifs, pouvant, lorsque la vitesse devient excessive, porter préjudice à la qualité du sous-titre produit. En effet, cette technique est susceptible de produire, sur certaines séquences, des apparitions de mots successifs extrêmement 25 rapides, qui seront ainsi difficilement lisibles par le spectateur. Le flux multimédia avec sous-titres 113a est alors envoyé, par exemple par l'intermédiaire d'un protocole SDI, à l'encodeur multimédia 100a. [0047]L'inséreur de sous-titres peut insérer un canal de sous-titres unique dans le flux multimédia. Il peut également insérer plusieurs canaux de sous- 30 titres en parallèle, notamment si les sous-titres doivent être disponibles en plusieurs langues. L'inséreur de sous-titres peut insérer des sous-titres selon tous les standards admis au sein du protocole SDI. Il peut par exemple insérer des sous-titres au format télétexte dans le SDI. [0048]Au sein de l'encodeur multimédia 100a, les différents canaux d'un flux 35 multimédia tel que le flux 113a sont séparés afin d'être traités par les 3025925 15 modules d'encodage correspondants. Chaque canal vidéo est traité par un encodeur vidéo 101a, chaque canal audio par un encodeur audio 102a, et chaque canal de sous-titres par un encodeur de sous-titres 103a. [0049]L'encodeur vidéo 101a convertit un flux vidéo issu du SDI en format 5 vidéo compressé pour permettre la transmission du flux vidéo avec un débit binaire réduit. Le flux vidéo au sein du SDI est codé selon le mode dit YUV 4:2:2. Selon ce mode, les pixels sont codés dans l'espace colorimétrique YUV, au sein duquel la couche dite « Y » contient les informations d'intensité lumineuse, et les couches dites « U » et « V » contiennent les informations 10 de colorimétrie. En mode YUV 4:2:2, une partie des informations contenues dans les couches U et V, considérées comme moins perceptibles par l'oeil humain, sont supprimées. L'encodeur vidéo 101a transforme ce flux en flux compressé, présentant un débit binaire beaucoup plus faible. Afin d'être lisibles facilement, les flux vidéo sont généralement produits selon des 15 standards établis, par exemple les standards MPEG-2 Vidéo, H.264-AVC, ou H.265-HEVC. [0050]L'encodeur audio 102a convertit un flux audio issu du SDI en format audio compressé pour permettre la transmission du flux audio avec un débit binaire réduit. Le flux audio au sein du SDI est généralement codé en PCM. 20 Par exemple, les valeurs d'échantillonnage PCM du signal audio peuvent être 48 kHz et 24 bits, ce qui signifie que chaque canal audio comprend 48.000 échantillons par seconde, chacun d'eux contenant une valeur d'intensité sonore codée sur 24 bits. L'encodeur audio 102a transforme ce flux en flux audio compressé, présentant un débit binaire beaucoup plus 25 faible. Afin d'être lisible facilement, les flux audio sont généralement produits selon des standards établis, par exemple les standards MPEG-3 Audio ou MPEG-4-AAC. [0051 ]L'encodeur de sous-titres 103a convertit un flux de sous-titres issu du SDI en un flux de sous-titres standard pour la diffusion. Il convertit 30 notamment, à partir des formats portés par le SDI, les sous-titres dans un format décodable par les décodeurs standards. Les sous-titres portés par le SDI peuvent par exemple être des sous-titres télétexte. A titre d'exemple, l'encodeur de sous-titres 103a peut convertir les canaux de sous-titres portés par le SDI en sous-titres selon le standard DVBSUB. Il peut également 35 produire des sous-titres selon un standard utilisant le format XML, 3025925 16 notamment un des standards basés sur W3C TTML. Le multiplexeur de flux 104a concatène les flux audio, vidéo, sous-titres issus des encodeurs 101a, 102a et 103a au sein d'un flux multimédia 114a pouvant être envoyé à l'utilisateur. Un multiplexeur de flux peut produire un flux unique comprenant 5 les flux audio, vidéo et de sous-titres. Il peut également produire plusieurs flux multimédia. Par exemple, si l'audio et les sous-titres sont disponibles dans plusieurs langages, il peut produire un flux multimédia pour chacun des langages utilisés. De même, si l'encodeur vidéo 101a est configuré pour produire plusieurs flux vidéo selon plusieurs niveaux de compression et/ou 1 0 des résolutions multiples, le multiplexeur de flux 114a peut produire un flux multimédia selon plusieurs niveaux de compression et/ou de résolution. Ceci est particulièrement utile lorsque le flux doit être envoyé à des clients présentant des contextes de résolution et/ou de bande passante différents. Par exemple, un multiplexeur de flux 104a peut préparer à la fois un flux HD 15 haute qualité pour des télévisions connectées par câble, et un flux SD pour des appareils mobiles. [0052]Le flux 114a produit peut notamment être de type MPEG-TS, pour une transmission en live. Un flux MPEG-TS peut contenir des canaux vidéo, audio et sous-titres, ainsi que des informations de synchronisation et de 20 description des canaux disponibles. Il peut être produit et envoyé en continu par l'encodeur multimédia 100a. Un flux MPEG-TS autorise la diffusion dite multicast, c'est-à-dire pour laquelle l'encodeur produit et diffuse un flux unique, qui est reçu par différents récepteurs. Ce type de flux est par exemple couramment utilisé dans les systèmes de télévision numérique 25 terrestre. [0053]Le flux multimédia produit peut également être du type format de fichier ISOBMFF (ISO Based Media File format). Ce type de fichier est couramment utilisé pour les transmissions vidéos dites OTT. L'acronyme OTT signifie Over The Top, c'est-à-dire au-dessus de l'ensemble du réseau. 30 Le but de ce mode de transmission est de pouvoir transmettre un flux multimédia via n'importe quelle connexion internet, sans réseau dédié. Ce type de flux consiste à séquencer le flux multimédia en fichier courts, par exemple de l'ordre de quelques secondes, entre 1 et 10 secondes par exemple. Les fichiers peuvent alors être envoyés dès qu'ils sont formés à un 35 client ou lecteur, qui les lira au fur et à mesure. Dans ce type de flux, un 302 5 9 2 5 17 fichier manifest décrivant les différents flux disponibles doit être envoyé préalablement aux fichiers multimédia. Ce fichier manifest peut par exemple contenir la liste des canaux audio et de sous-titres, si ceux-ci sont disponibles en plusieurs langues. Ce type de transmission autorise 5 également des modes dits ABR, pour Adaptive Débit binaire. Dans ces modes, l'encodeur vidéo produit plusieurs flux vidéo, selon plusieurs débits binaires, et le multiplexeur de flux 104a produit de petits fichiers séparés selon ces différents débits binaires. Selon la bande passante disponible et les requêtes envoyés par les clients, des fichiers présentant des débits 10 binaires plus ou moins importants sont envoyés, afin d'adapter le débit binaire du flux multimédia à la capacité de transmission pour chaque client. [0054]La figure 1 b représente un exemple d'encodeur multimédia opérant à partir d'un fichier selon l'état de l'art. L'encodeur 100b prend en entrée un fichier multimédia 113b contenant des canaux vidéo, audio et sous-titres. Il 15 sépare les différents canaux et les fournit à des encodeurs vidéo 101b, audio 102b et de sous-titres 103b semblables aux encodeurs 101a, 102a et 103a. Les encodeurs 101b et 102b peuvent également comprendre des moyens de décompression lorsque les flux audio/vidéo du fichier 113b sont compressés. Les flux sont alors décompressés puis re-compressés par les encodeurs. On 20 parle dans ce cas de transcodage. Il est également possible, lorsque les flux présents dans un fichier 113b sont compressés, de ne pas modifier l'un d'eux, par exemple en conservant le flux audio initial, tout en transcodant le flux vidéo. L'encodeur de sous-titres 103b peut également transcoder les sous-titres, par exemple en transformant des sous-titres télétexte et sous- 25 titres selon un des standards TTML du W3C. Il peut également apporter des modifications sur les sous-titres eux-mêmes, par exemple modifier leurs polices de caractères ou timings. [0055]Un multiplexeur 104b selon l'état de l'art est capable de multiplexer les différents flux audio, vidéo, sous-titres au sein d'un ou plusieurs flux 30 multimédia 114b. Les multiplexeurs 104b et flux multimédia 114b présentent respectivement les mêmes propriétés que les multiplexeurs 104a et flux multimédia 114a. [0056]Les figures 2a et 2b représentent des schémas illustrant des 35 structures de flux multimédia intégrant des sous-titres, respectivement 3025925 18 MPEG-TS et EBU-TT, un des standards basés sur W3C TTML, selon l'état de l'art. [0057]Ces flux peuvent être par exemple des flux 114a ou 114b produits par des encodeurs de flux 104a ou 104b. L'invention peut s'appliquer à ces types 5 de flux, mais également à tout type de flux intégrant des sous-titres temporisés. [0058]La figure 2a représente la structure d'un paquet 20a de flux MPEG-TS pouvant contenir des sous-titres selon l'état de l'art. [0059]Ce paquet 20a peut contenir par exemple de l'audio, de la vidéo ou 10 des sous-titres, et comprend : - Un en-tête 200a ; - Des informations utiles 210a, comprenant : o Un préfixe de début de paquet 211a ; o Un identifiant de flux 212a ; 15 o Une taille de paquet 213a ; o Deux octets dits de « flags » permettant d'appliquer des propriétés au paquet 214a ; o Une information de taille de paquet 215a ; o Une estampille temporelle de présentation, ou PTS 216a ; 20 o Divers autres champs d'en-tête 217a ; o Une plage de données utiles 218a ; [0060]L'en-tête 200a comprend des informations de synchronisation avec l'ensemble du flux. Les informations utiles 210a comprennent l'ensemble des informations permettant de présenter correctement le paquet 20a. 25 [0061]L'identifiant de flux 212a permet à un lecteur de déterminer à quel flux appartient le paquet. Les différents flux peuvent notamment être numérotés 1,2, 3, etc... Cet identifiant fait référence à des informations de description envoyées dans le flux à intervalles réguliers. Ces informations de description listent notamment l'ensemble des flux, ainsi que les données qu'ils 30 contiennent. Ainsi un flux peut désigner un flux audio, vidéo ou de sous-titres dont les propriétés ont été définies précédemment. En particulier la description du flux de sous-titres décrit le type de flux de sous-titres, par exemple si le flux est un flux de sous-titres de type DVBSUB. Le décodeur est ainsi capable, connaissant le type de flux, de le décoder via un décodeur 35 ou algorithme de décodage approprié. 3025925 19 [0062]L'information de taille de paquet 215a contient la taille du paquet. Elle permet à un décodeur de récupérer l'ensemble des informations utiles du paquet, afin de décoder celui-ci correctement. [0063]L'estampille temporelle de présentation 216a contient l'estampille 5 temporelle à laquelle le sous-titre contenu dans le paquet doit être affiché. Cette estampille temporelle est exprimée dans une référence commune aux paquets audio, vidéo et sous-titres, ce qui permet d'afficher ces trois données de manière synchronisée. L'unité de l'estampille temporelle est standardisée (les PTS sont ramenés à une unité de temps de 90000 10 échantillons par seconde), et l'estampille temporelle initiale est définie par l'horloge de service, qui correspond à l'estampille temporelle de début de présentation du programme dans le décodeur. Un décodeur est donc capable, à partir de ces données, d'afficher les sous-titres de manière synchronisée avec l'audio et la vidéo. 15 [0064]La plage de données utiles 218a contient les données brutes liées à l'élément de sous-titres à présenter. Par exemple, si le flux de sous-titres respecte le standard DVBSUB, il peut s'agir d'une image de type bitmap selon la dénomination communément admise dans ce domaine technique. Dans ce cas, chaque élément de sous-titres est représenté sous la forme 20 d'une image affichée en surimpression de la vidéo. Pour chaque image, les valeurs d'intensité lumineuse de chaque pixel sont stockées les unes à la suite des autres pour former une image représentative des caractères à transmettre dans le sous-titre. 25 [0065]La figure 2b représente une séquence de sous-titres 200b selon le standard EBU-TT, un des standards basés sur W3C TTML, selon l'état de l'art. Un sous-titre selon ce standard est organisé de manière hiérarchique avec différents niveaux de balises XML. [0066]La séquence de sous-titres 200b comprend notamment un en-tête 30 210b. Cet en-tête contient notamment des informations sur les différents styles (polices, tailles de caractères, couleurs, alignements...) à appliquer au sous-titre. Elle peut également contenir une information sur la langue du sous-titres 200b, « en » signifiant anglais dans le cas d'espèce. [0067]La séquence de sous-titres 200b contient également, pour chaque 35 élément, un corps ou section « body » 220b, contenant au moins une section 3025925 20 dite « div » 230b. Pour chaque élément de sous-titres, une section « p » 240b contient notamment un numéro d'identifiant 243b, une estampille temporelle de début 241b et une estampille temporelle de fin 242b. Les estampilles temporelles de début et de fin sont exprimées en heure absolue. 5 Le lecteur peut ainsi synchroniser la présentation de l'élément de sous-titres avec l'audio et la vidéo. Une balise « span » 250b comprend le texte à afficher 251b, et peut contenir des informations de style 252b. [0068]Dans un encodeur 100a ou 100b selon l'état de l'art, un élément de 10 sous-titres est créé pour chaque élément de sous-titres du flux ou fichier entrant, par exemple des éléments du flux 113a ou du fichier 113b. Lorsque ces sous-titres sont produits en live, ces éléments de sous-titres peuvent être présentés mot à mot, et entraîner une expérience utilisateur désagréable. L'invention décrit un procédé de contrôle de la forme de présentation des 15 sous-titres. Elle peut donc s'appliquer à tout système, procédé ou programme d'ordinateur traitant des séquences de sous-titres comprenant au moins deux éléments. Par exemple, cette invention peut être intégrée dans des encodeurs de sous-titres 103a ou 103b. L'invention peut s'appliquer à tout format de sous-titres. Par exemple, elle peut s'appliquer à des paquets 20 de sous-titres MPEG-TS 20a, ou des séquences de sous-titres respectant un des standards TTML du W3C200b. Il convient cependant de noter que ces exemples sont fournis à titre indicatif uniquement. Ainsi l'invention s'applique également à un décodeur, qui affiche sur le terminal d'un utilisateur les sous-titres selon le mode de présentation souhaité. Elle peut également 25 s'appliquer à un transcodeur, qui générera, à partir d'une première séquence de sous-titres, une seconde séquence dont chaque élément sera issu d'un bloc de sous-titres selon un mode de présentation sélectionné au sein de la première séquence. 30 [0069]La figure 3 représente un diagramme illustrant un procédé selon l'invention. Un procédé selon l'invention s'applique à un élément de sous titres 310 comprenant notamment : - Une étape d'insertion de l'élément de sous-titres dans un flux ou fichier de sous-titres 320 ; 3025925 21 - Une étape de vérification 330 d'au moins une condition de fin de bloc 340, ladite condition de fin de bloc étant liée à un mode de présentation de sous-titres 360 ; - Lorsque au moins une condition de fin de bloc est vérifiée, l'insertion 5 dans le flux de sous-titres d'une donnée représentative de la fin d'un bloc selon ledit mode de présentation de sous-titres 350 ; [0070]Un élément de sous-titres 310 peut consister en un mot, un ensemble de mots ou plus globalement une suite de caractères initialement prévus pour être affichés à la même estampille temporelle. Il peut par exemple s'agir 1 0 de mots contenus dans des octets de données utiles de paquet PES 218a, ou de mots 252b contenus au sein d'une balise « span » d'un fichier selon un des standards basés sur W3C TTML. L'élément de sous-titres peut être issu d'un flux, d'un fichier, ou plus globalement de toute source permettant d'afficher un flux de sous-titres comportant des éléments successifs. 15 [0071 ]L'étape 320 d'insertion de l'élément de sous-titres dans un flux ou un fichier de sous-titres consiste à insérer le contenu de l'élément de sous-titres 310 dans le flux ou fichier de sortie. L'insertion est propre à chaque type de fichier/flux de sortie, et peut comprendre l'écriture des données sur une mémoire lisible par ordinateur, ou l'envoi de données sur un réseau. L'étape 20 320 peut notamment comprendre la création, dans le flux ou fichier de sortie, d'un élément de sous-titres comprenant les données contenues dans l'élément 310. Elle peut par exemple comprendre, si le flux ou fichier de sortie est un flux MPEG-TS, la création d'au moins un paquet MPEG-TS tel que celui représenté en figure 2a ; si le flux ou fichier de sortie est un fichier 25 selon l'un des standards basés sur W3C TTML, la création et l'écriture d'au moins une balise « div » et une balise « span ». [0072]L'étape 330 de vérification d'au moins une condition de fin de bloc 340 se base sur le contenu de l'élément de sous-titres 310, un ensemble de modes de présentation de sous-titres 360 comportant des conditions de fin 30 de bloc 340, et éventuellement sur l'historique des éléments précédemment insérés dans le flux ou fichier de sortie. [0073]Les modes de présentation de sous-titres 360 sont un ensemble de modalités de présentation des sous-titres, tels que, à titre d'exemples non limitatifs, « ligne par ligne », « phrase par phrase », « par groupe d'au moins 302 5 9 2 5 22 50 caractères », etc... Ces modes de présentation peuvent correspondre à des préférences d'utilisateurs. [0074]Chaque mode de présentation est associé à une condition de fin de bloc 340. Une condition de fin de bloc est une règle permettant de séparer 5 les blocs de sous-titres pour un mode de présentation donné, et découle généralement de la définition de ce mode de présentation. Par exemple, pour un mode de présentation « phrase par phrase », la condition de fin de bloc sera la présence, au sein de l'élément de sous-titres, d'un élément représentatif d'une fin de phrase, par exemple un point. De même, pour un 10 mode de présentation « par groupe d'au moins 50 caractères », un bloc sera formé lorsque le nombre de caractères cumulés par les différents éléments de sous-titres depuis le dernier bloc sera supérieur ou égal à 50. Dans un autre exemple, pour un mode de présentation «fin de temps », il est prévu qu'un bloc s'affiche dès qu'une durée est dépassée entre deux blocs 15 successifs. Dans ce mode de présentation, dès qu'un bloc est créé, son estampille temporelle de présentation est notée, et le bloc suivant est créé dès qu'un élément de sous-titres dont l'estampille temporelle de présentation est postérieure à l'estampille temporelle de présentation du 1er bloc, à laquelle est ajoutée la durée minimale, est identifié. Ces exemples sont 20 donnés à titre non limitatif, et une grande variété de modes de présentation et de règles de segmentation de blocs sont a priori admissibles. [0075]L'étape 330 consiste alors à déterminer quelles sont les conditions de fin de bloc 340 vérifiées par l'élément de sous-titres 310. [0076]Lorsqu'au moins une condition de fin de bloc 340 est vérifiée par 25 l'élément de sous-titres 310, l'étape 350 d'insertion d'une donnée représentative d'une fin de bloc est activée. Cette étape consiste à écrire dans un fichier ou insérer dans un flux une donnée exprimant la fin du bloc de sous-titres pour le mode de présentation concerné. Des exemples seront donnés dans la suite de la description, dans des exemples de flux MPEG-TS 30 et de fichiers selon l'un des standards basés sur W3C TTML. [0077]Dans un mode de mise en oeuvre de l'invention, chacune des conditions de fin de bloc 340 est vérifiée pour chacun des modes de présentation de sous-titres 360 ; à chaque fois qu'une condition 340 est vérifiée, l'étape 350 d'insertion d'une donnée représentative d'une fin de bloc 35 est activée pour le mode de présentation de sous-titres 360 correspondant. 3025925 23 [0078]Les figures 4a, 4b, 4c et 4d, représentent quatre exemples de sous-titres produits par un procédé selon l'invention, respectivement dans une structure de flux MPEG-TS et dans des fichiers selon les standards EBU-TT, 5 SMPTE-TT et W3C TTML. [0079]La figure 4a représente un exemple de paquet MPEG-TS 400a produit par un procédé selon l'invention, dans une structure de flux MPEG-TS. Ce paquet MPEG-TS comprend, comme un paquet MPEG-TS selon l'état de 10 l'art, un en-tête 200a, des données utiles 210a, un préfixe de début de paquet 211a, un identifiant de flux 212a, et un octet de fin de paquet 218a. Il peut également comprendre un segment DDS 401a indiquant la résolution sur laquelle afficher les sous-titres, et un segment PCS 402a indiquant la composition d'une page de sous titres tel que le nombre de régions à afficher 15 ainsi que leurs positions dans la page. [0080]11 comprend également un segment de métadonnées 410a, comprenant un octet de synchronisation 411a, un type de segment 412a, un identifiant de page 413a, une longueur de segment 414a et au moins un octet représentatif d'une fin de bloc 420a. Les octets de synchronisation 20 411a, type de segment 412a, identifiant de page 413a, et longueur de segment 414a sont connus de l'état de l'art. Cet ensemble d'éléments permet de définir un nouveau type de segment, indiquant les fins de blocs. L'au moins un octet représentatif d'une fin de bloc 420a est créé pendant l'étape d'insertion d'une donnée représentative de fin de bloc 350, et 25 comprend au moins un octet représentatif de la fin d'au moins un bloc selon un mode de présentation. [0081]A titre d'exemple non limitatif, le paquet 400a comprend des octets représentatifs de la fin de 5 blocs selon 5 modes de présentations différents : « fin de ligne » 421a, « fin de temps » 422a, « nouvelle couleur » 423a, 30 « analyse grammaire simple » 424a et « analyse grammaire améliorée » 425a. Dans le cas d'espèce et à titre d'exemple non limitatif, le mode « fin de ligne » génère un bloc pour chaque ligne de sous-titres ; le mode « fin de temps » génère un bloc pour l'ensemble des éléments de sous-titres générés pendant des périodes de temps successives dont la durée est fixe ; le mode 35 « nouvelle couleur » génère un bloc à chaque changement de couleur dans 302 5 9 2 5 24 des sous-titres DVBSUB; le mode « analyse grammaire simple » génère un bloc à chaque fois qu'il rencontre certains caractères de ponctuation, par exemple un point ; enfin, le mode « analyse grammaire améliorée » génère un bloc pour chaque marque de ponctuation limitant des phrases ou partie 5 de phrases. Le mode « analyse grammaire améliorée » se démarque alors du mode « analyse grammaire simple » en ce que, en rencontrant un caractère de ponctuation, il entraîne une analyse sémantique pour déterminer si ce caractère de ponctuation délimite des phrases ou propositions. Par exemple, en présence d'une virgule, le mode « analyse 10 grammaire améliorée » génèrera un nouveau bloc uniquement si cette virgule sépare deux propositions au sein d'une phrase. Le mode « nouvelle couleur » intègre une fin de bloc à chaque changement de couleur. Ce mode est intéressant dans le cas de certains sous-titres pré-processés dans lesquels chaque couleur a une signification particulière. Par exemple, 15 certains sous-titres assignent une couleur à chaque personnage. Le mode de mise en oeuvre « nouvelle couleur » permet alors de segmenter automatiquement les sous-titres par bloc selon le personnage ayant la parole. Dans une mise en oeuvre dans la norme DVBSUB, l'étape de vérification de la condition de fin de bloc peut comprendre l'analyse, au sein 20 des images représentant les sous-titres dans la norme DVBSUB, des triplets de couleur RGB dominants. Ces exemples de modes de présentation sont donnés à titre illustratif du large champ d'application de l'invention. D'autres exemples peuvent être introduits, sans sortir du champ d'application de l'invention. 25 [0082]De nombreux modes de mises en oeuvre sont possibles pour créer des octets représentatifs de fin de bloc 350. Dans un mode de mise en oeuvre de l'invention, au moins un octet est alloué pour chaque mode de présentation, dont le contenu indique si une fin de bloc est atteinte pour ce mode de présentation ou non. Dans ce mode de mise en oeuvre, le nombre 30 d'octets dans l'ensemble d'octets représentatifs des fins de bloc 420a reste constant. Dans un autre mode de mise en oeuvre de l'invention, un segment de métadonnée 410a contenant des octets représentatifs des fins de blocs 420a est créé si et seulement si une fin de bloc est atteinte pour au moins un mode de présentation. Les octets représentatifs d'une fin de bloc selon un 35 mode de présentation, par exemple « fin de ligne » 421a, contiennent un 3025925 25 identifiant désignant ce mode. Un bloc est terminé pour chacun des modes dont l'identifiant est présent dans l'au moins un octet représentatif d'une fin de bloc 420a. Dans un troisième mode de mise en oeuvre de l'invention, un segment de métadonnée 410a est créé pour chaque fin de bloc selon un 5 mode de présentation. L'au moins un octet représentatif d'une fin de bloc 420a contient alors uniquement un identifiant de mode de présentation, par exemple « fin de temps » 422a. Pour un paquet 400a, autant de segments de métadonnées 410a sont créés que de fins de blocs sont rencontrées pour l'élément de sous-titres contenu dans le paquet 400a. Ces modes de mise en 10 oeuvre sont décrits à titre d'exemples non limitatifs. [0083]Dans un ensemble de modes de réalisation de l'invention, un en-tête envoyé périodiquement dans le flux MPEG-TS contient des informations de description pour au moins un mode de présentation de sous-titres. Ces informations peuvent comprendre les nom et description du mode de 15 présentation. [0084]La figure 4b représente un exemple de fichier de sous-titres 400b produit par un procédé selon l'invention, selon le standard EBU-TT, l'un des standards W3C TTML. Ce fichier 400b comprend, comme un fichier 20 respectant le standard EBU-TT selon l'état de l'art, un en-tête 410b, un corps contenu dans une section « body » 420b, au moins une section « div » 430b, comprenant au moins une section « p » 440b. Comme dans un fichier respectant le standard EBU-TT selon l'état de l'art, la section « p » 440b comprend au moins une estampille temporelle de début 441b, une estampille 25 temporelle de fin 442b, un identifiant de flux 443b, une section « span » 450b, un texte à afficher 451b et peut comprendre une information de style 452b. [0085]Dans un ensemble de modes de réalisation de l'invention, la balise « p » 440b de ce fichier 400b comprend également au moins une donnée 30 représentative de la fin d'un bloc selon un mode de présentation, par exemple une balise « tt:display mode » 460b. Dans un mode de réalisation de l'invention, cette balise contient une référence sur chacun des modes disponibles, indiquant si l'élément de sous titres compris dans la balise « p » 440b correspond à une fin de bloc, pour chacun de ces modes. A titre 35 d'exemple non limitatif, la balise 460b de la figure 4b indique une fin de bloc 3025925 26 selon trois modes : « Fin de ligne » 461b, « Analyse grammaire simple » 464b et « Analyse grammaire améliorée » 465b, alors qu'elle indique une absence de fin de bloc pour deux modes « Fin de temps » 462b et « Nouvelle couleur » 463b. Dans l'exemple indiqué, la présence ou l'absence 5 d'une fin de bloc est indiquée respectivement par le mot-clé « vrai » ou « faux ». Dans un autre mode de réalisation, il peut être indiqué par des valeurs prédéfinies telles que « 1 » et « 0 ». Il peut également être indiqué par les mots anglais « true » ou « false », ou de manière générale par tout mot-clé exprimant si une proposition est vraie ou non. 10 [0086]La flexibilité des langages XML permet une grande variétés de modes de réalisation de l'invention pour indiquer une fin de bloc dans le standard EBU-TT, et plus généralement dans les standards basés sur W3C TTML. A titre d'exemple non limitatif, dans un mode de réalisation, la balise 460b comprend, au lieu de la liste exhaustive des modes, une liste de modes pour 15 lesquelles l'élément de sous-titres courant correspond à une fin de bloc. Dans un second mode de réalisation, une balise est créée pour chaque fin de bloc selon un mode de présentation. Dans un troisième mode de réalisation, une liste des modes de présentation pour lesquels l'élément de sous-titres courant est une fin de bloc est intégrée comme attribut d'une 20 balise, par exemple la balise « span » 450. Dans ce mode de réalisation, la balise 450b pourrait devenir par exemple : , indiquant que l'élément de sous-titres courant marque une fin de bloc pour les trois modes de présentation « Fin de 25 ligne », « Analyse grammaire simple » et « Analyse grammaire améliorée ». Bien entendu, cette liste peut également être comprise dans une autre balise, par exemple la balise « p » 440b ou « div » 430b. [0087]Dans un ensemble de modes de réalisation de l'invention, l'en-tête 410b contient des informations de description pour au moins un mode de 30 présentation de sous-titres Ces informations peuvent comprendre les nom et description du mode de présentation, ainsi que la définition d'un style de présentation (police, couleur des caractères) à affecter audit mode de présentation pour un affichage optimal. 302 5 9 2 5 27 [0088] Les figures 4c et 4d représentent un exemple de fichier de sous-titres produit par un procédé selon l'invention, respectivement selon les standards SMPTE-TT et W3C TTML. Les standards SMPTE-TT et EBU-TT étant issus du standard W3C TTML, les fichiers 400c et 400d produits par un procédé 5 selon l'invention selon les standards SMPTE-TT et W3C TTML sont semblables à un fichier 400b produit selon le standard EBU-TT. [0089]Ainsi, les en-têtes 410c, 410d, corps 420c, 420d, balise « div » 430c, 430d balises « p » 440c, 440d, estampille temporelle de début 441c, 441d, estampille temporelle de fin 442c, 442d, identifiant de flux 443d, balise 10 « span » 450c, 450d, texte à afficher 451c, 451d sont-ils respectivement semblables, mis à part quelques différences sémantiques entre les standards, aux en-têtes 210b, 410b, corps 220b, 420b, balise « div » 230b, 430b, balises « p » 240b, 440b, estampilles temporelles de début 241b, 441b, estampille temporelle de fin 242b, 442b, identifiant de flux 243b ,443b, 15 balise « span » 250b, 450b, et texte à afficher 251b, 451b dans les standards EBU-TT selon l'état de l'art et selon l'invention. [0090] Les différences sémantiques entre les standards intègrent notamment des nommages différents de balises, par exemple la balise d'en-tête, nommée « tt:head » dans le standard EBU-TT, et « head » dans les 20 standards W3C TTML et SMPTE-TT. Les standards dépendant de W3C TTML peuvent également contenir des informations et balises supplémentaires, comme par exemple les balises ttm:title, ttm:desc, ttm:copyright, smpte:information contenues dans la balise d'en-tête 410c, et l'information d'origine 444c dans le standard SMPTE-TT. 25 [0091 ]Cependant, ces différences n'affectent pas la capacité de mettre en oeuvre l'invention dans les différents standards issus de W3C TTML. Ainsi l'homme de l'art peut aisément mettre en oeuvre l'invention dans chacun des standards W3C TTML de manière équivalente à sa mise en oeuvre dans EBU-TT. A titre d'exemple non limitatif, les balises « display mode » 460c et 30 460d reprennent des règles de fin de bloc identiques à celle de la balise 460b, avec une valeur représentative de la présence ou non d'une fin de bloc, par exemple selon les modes de présentation « fin de ligne » 461c, 461d, « fin de temps » 462c, 462d, « nouvelle couleur » 463c, 463d, « analyse grammaire simple » 464c, 464d, « analyse grammaire améliorée » 35 465c, 465d. 3025925 28 [0092]De la même manière que pour le standard EBU-TT, la flexibilité des langages XML permet de mettre en oeuvre l'invention de diverses manières dans les standards basés sur W3C TTML. A titre d'exemples non limitatifs, il est possible d'insérer une balise pour chaque fin de bloc dans les balises 5 « p » 440c, 440d, ou encore d'insérer une liste de blocs dont l'élément de sous-titres courant marque la fin au sein des balises « span » 450c, 450d ou encore « p » 440c, 440d. [0093]Dans un ensemble de modes de réalisation de l'invention, les en-têtes 410c, 410d contiennent des informations de description pour au moins un 10 mode de présentation de sous-titres Ces informations peuvent comprendre les nom et description du mode de présentation, ainsi que la définition d'un style de présentation (police, couleur des caractères) à affecter audit mode de présentation pour un affichage optimal. 15 [0094]La figure 5 représente un diagramme de flux illustrant un procédé de présentation d'un flux ou d'un fichier de sous-titres sur le terminal d'un utilisateur. Ce processus peut être mis en oeuvre pour la présentation de sous-titres sur le terminal d'un utilisateur, par exemple dans le cadre de la présentation d'une vidéo avec sous-titres. Il peut par exemple être mis en 20 oeuvre dans une set-top box, un lecteur DVD / blu-ray, un ordinateur ou smartphone possédant des fonctions multimédia. [0095]Ce processus comprend notamment : - Une étape 510 de sélection sur le terminal d'un mode de présentation de sous-titres; 25 - Une étape 520 de lecture d'un bloc de sous-titres associé audit mode de présentation dans ledit flux ou fichier ; - Une étape 530 de présentation sur le terminal dudit au moins un bloc de sous-titres selon ledit mode de présentation ; [0096]L'étape 510 consiste à sélectionner le mode de présentation de sous- 30 titres sur le terminal. Ce choix peut s'effectuer de manière manuelle, en fonction des capacités du terminal. Par exemple, il peut s'effectuer à l'aide d'un menu et d'une télécommande sur une set-top box, ou via une interface tactile sur un smartphone. La liste des modes de présentation peut comprendre uniquement les noms des modes. Elle peut également être 35 associée à une description et/ou représentation graphique de chacun de ces modes. Le choix du mode de présentation peut également s'effectuer de 302 5 9 2 5 29 manière automatique. Dans ce cas, le terminal peut, s'il dispose d'un fichier de préférence utilisateur, sélectionner automatiquement le mode préféré d'un utilisateur. Dans le cadre d'applications vidéo connectées entre différents appareils, par exemple entre un ordinateur portable et une set-top box, un 5 terminal peut également sélectionner automatiquement le dernier mode utilisé par l'utilisateur, même s'il s'agissait d'un affichage de sous-titres sur un terminal différent. Il est également possible de prévoir sur un même terminal un mode pour chaque utilisateur, ledit mode étant automatiquement sélectionné lorsque cet utilisateur se connecte au terminal. Il est enfin 10 possible qu'un même utilisateur dispose de plusieurs modes sur un terminal, et sélectionne celui qui lui paraît le plus approprié, par exemple au démarrage du terminal ou au début de la lecture d'une vidéo. [0097]L'étape 520 consiste à lire un bloc de sous-titres dans le flux ou fichier. Elle peut notamment comprendre la lecture d'un d'au moins une 15 partie d'un fichier ou d'un flux de sous-titres. Dans un ensemble de modes de mises en oeuvre de l'invention, elle comprend la lecture des caractères à afficher jusqu'à rencontrer une donnée représentative de la fin d'un bloc de sous-titres selon le mode de présentation sélectionné. [0098]L'étape 530 comprend la présentation du bloc de sous-titres lu à 20 l'étape 530, en fonction des capacités du terminal. Dans un ensemble de modes de mise en oeuvre de l'invention, la segmentation en bloc permet en elle-même d'afficher le bloc de sous-titres de la manière voulue. C'est par exemple le cas pour un affichage « phrase par phrase », pour lequel un bloc forme une phrase. D'autres modes de présentation selon d'autres modes de 25 mise en oeuvre de l'invention contraignent la présentation des sous-titres. Par exemple, dans un mode de présentation « ligne par ligne », chaque bloc doit être affiché sur une nouvelle ligne au sein du terminal. [0099] Dans un ensemble de modes de réalisation de l'invention, l'étape 520 de lecture d'un bloc de sous-titres comprend au moins : 30 - Une étape 521 de lecture d'un élément de sous-titres ; - Une étape 522 d'ajout de l'élément au bloc de sous-titres courant ; - Une étape 523 de vérification de fin de bloc selon le mode sélectionné [00100] L'étape 521 comprend la lecture d'un élément de sous-titres dans un flux ou fichier. Elle peut correspondre à la lecture d'un paquet TS 35 400a dans un mode de mise en oeuvre de l'invention selon le standard 302 5 9 2 5 30 MPEG-TS, ou la lecture d'une balise de sous-titres 440b, 440c, 440d dans un mode de mise en oeuvre de l'invention selon un standard W3C TTML. [00101] L'étape 522 comprend l'ajout du contenu de l'élément de sous- titres dans un bloc de sous-titres courant. Le contenu de l'élément de sous- 5 titres peut comprendre des caractères, par exemple ceux contenus dans des données utiles 217a d'un paquet TS ou les caractères 251b contenus dans une balise tt:span. [00102] L'étape 523 consiste à vérifier, au sein de l'élément de sous- titres lu, la présence ou non d'un élément représentatif d'une fin de bloc 10 selon le mode de présentation sélectionné. Dans l'exemple représenté en figure 4a, cette étape comprend la vérification, dans l'octet de la plage 420a lié au mode de présentation sélectionné, s'il indique une fin de bloc ou non. Dans l'exemple représenté en figure 4b, cette étape comprend la vérification, dans la balise tt:display 460b, de la présence ou de l'absence de fin de bloc 15 pour le mode de présentation sélectionné. [00103] Si une fin de bloc est détectée, l'étape 530 de présentation du bloc est activée, et le bloc courant réinitialisé. Dans le cas contraire, un nouvel élément de sous-titres est lu à l'étape 521. [00104] Dans un ensemble de modes de réalisation de l'invention, les 20 sous-titres sont représentés sous forme textuelle. C'est par exemple le cas dans les sous-titres 400b, 400c et 400d, avec une représentation textuelle des éléments de sous-titres 451b, 451c et 451d. [00105] Les figures 6a, 6b et 6c représentent trois schémas illustrant 25 respectivement trois exemples de modes de présentation de sous-titres, selon l'art antérieur dans la figure 6a et selon l'invention dans les figures 6b et 6c [00106] La figure 6a représente un exemple de mode de présentation de sous-titres selon l'art antérieur. Elle comprend un axe temporel 600 30 indiquant le moment où les éléments de sous-titres sont affichés, une ligne 610 représentant les sous-titres transmis et une ligne 630a représentant les sous-titres affichés selon l'état de l'art. Dans cet exemple, les sous-titres transmis comprennent 10 éléments 611, 612, 613, 614, 615, 616, 617, 618, 619, 620 et 621. Ces sous-titres peuvent être transmis sous forme de flux, 35 par exemple de flux MPEG-TS. Dans ce cas, chaque élément de sous-titres 3025925 31 correspond à au moins un paquet TS 20a, dont l'estampille temporelle de présentation est un PTS 216a. Ces sous-titres peuvent également être transmis sous-forme de fichier, par exemple des fichiers selon l'un des standards basés sur W3C TTML. Dans ce cas, chaque élément de sous- 5 titres comprend au moins une balise « p » 440b, 440c, 440d, avec une estampille temporelle de présentation 441b, 441c, 441d. [00107] Un affichage selon l'état de l'art met à jour la présentation de sous-titres pour chaque nouvel élément, par exemple en le concaténant aux éléments précédents. On obtient ainsi 10 affichages successifs 631a, 632a, 10 633a, 634a, 635a, 636a, 637a, 638a, 639a, 640a et 641a. Chacun de ces affichages de sous-titres est effectué à l'estampille temporelle défini par l'élément de sous-titres correspondant. L'absence d'unité dans la forme de présentation des sous-titres peut alors être déplaisante pour l'utilisateur. 15 [00108] La figure 6b représente un exemple de présentation de sous- titres selon l'invention. Elle comprend l'axe temporel 600, la ligne des sous-titres transmis 610, identique à celle de la figure 6a. Elle comprend également une ligne 630b représentant la présentation successif des sous-titres dans cet exemple, et une ligne 650b représentant les données 20 représentatives de fin de bloc selon un mode de présentation « fin de ligne ». [00109] A titre d'exemple non limitatif, le mode sélectionné pour affichage sur le terminal de l'utilisateur est le mode « fin de ligne ». La transmission des sous-titres comporte, en plus des éléments 611 à 621, des données représentatives de fin de blocs, au moins les données 25 représentatives de fins de blocs selon le mode « fin de ligne » 656b et 661b dans cet exemple. Si les sous-titres sont transmis dans un flux MPEG-TS, les données 656b et 661b peuvent par exemple être comprises dans les métadonnées 421a. Si les sous-titres sont transmis dans un fichier selon l'un des standards basés sur W3C TTML, les données 656b et 661b peuvent par 30 exemple être comprises dans une balise 460b, 460c ou 460d. [00110] Lors de la présentation sur le terminal de l'utilisateur, un bloc 636b, 641b comprenant le contenu des éléments de sous-titres précédents est affiché à l'estampille temporelle de la donnée représentative de fin de bloc 656b, 661b correspondante. Un positionnement adéquat des données 35 représentatives de fin de bloc à l'encodage permet donc d'afficher les sous- 3025925 32 titres ligne par ligne et d'obtenir un affichage plus agréable des sous-titres pour l'utilisateur. [00111] La figure 6c représente un exemple de présentation de sous- titres selon l'invention. Elle comprend l'axe temporel 600, la ligne des sous- 5 titres transmis 610, identique à celle de la figure 6a. Elle comprend également une ligne 630c représentant la présentation successif des sous-titres dans cet exemple, et une ligne 650c représentant les données représentatives de fin de bloc selon un mode de présentation « grammaire simple ». 10 [00112] A titre d'exemple non limitatif, le mode sélectionné pour affichage sur le terminal de l'utilisateur est ici le mode « grammaire simple ». De manière analogue à l'exemple précédent, la transmission des sous-titres comporte, en plus des éléments 611 à 621, des données représentatives de fin de blocs, au moins les données représentatives de fins de blocs selon le 15 mode « grammaire simple » 651c et 658c dans cet exemple. [00113] Lors de la présentation sur le terminal de l'utilisateur, un bloc 631c, 638c comprenant le contenu des éléments de sous-titres précédents est affiché à l'estampille temporelle de la donnée représentative de fin de bloc 656b, 661b correspondante. Dans cet exemple, un positionnement 20 adéquat des éléments représentatifs de fin de bloc permet d'afficher les sous-titres jusqu'à rencontrer une marque de ponctuation telle qu'une virgule ou un point, et d'obtenir un affichage des sous-titres plus agréable pour l'utilisateur. 25 [00114] Les exemples donnés ci-dessus sont donnés à titre indicatif uniquement, et ne limitent en rien la portée de l'invention, définie par les revendications ci-dessous. REVENDICATIONS1. Procédé de création d'un flux ou fichier de sous-titres composé d'éléments de sous-titres, ledit procédé comprenant au moins, pour chaque élément de sous-titres (310): - Une étape d'insertion dudit élément de sous-titres dans le flux ou fichier de sous-titres (320) ; - Au moins une étape de vérification (330) d'au moins une condition de fin de bloc (340), un bloc comprenant au moins un élément de sous-titres, ladite condition de fin de bloc étant liée à un mode de présentation des sous-titres (360); - Lorsque ladite au moins une condition de fin de bloc est vérifiée, l'insertion dans le flux ou fichier de sous-titres d'une donnée représentative de la fin d'un bloc selon ledit mode de présentation de sous-titres (350) ; 2. Procédé selon la revendication 1, caractérisé en ce que la condition de fin de bloc comprend la détection d'au moins un caractère prédéfini marquant la fin d'un bloc. 3. Procédé selon la revendication 2, caractérisé en ce qu'au moins un caractère prédéfini est un point, une virgule, un point-virgule ou un caractère de ponctuation. 4. Procédé de création d'un flux de sous-titres selon l'une des revendications 1 à 3, caractérisé en ce que le flux de sous-titres respecte le standard MPEG-TS (400a). 5. Procédé de création d'un fichier de sous-titres selon l'une des revendications 1 à 3, caractérisé en ce que le fichier respecte au moins un standard basé sur W3C TTML (400b, 400c, 400d). 3025925 34 6. Procédé selon la revendication 5, caractérisé en ce qu'une donnée représentative de la fin d'un bloc est écrite dans une balise spécifique. (460b, 460c, 460d). 5 7. Procédé de présentation d'un flux ou d'un fichier de sous-titres sur le terminal d'un utilisateur, ledit procédé comprenant au moins : - Une étape de sélection sur ledit terminal d'un mode de présentation de sous-titres (510) ; - Une étape de lecture d'un bloc de sous-titres associé audit mode 10 de présentation dans ledit flux ou fichier (520) ; - Une étape de présentation sur le terminal dudit au moins un bloc de sous-titres selon ledit mode de présentation (530) ; 8. Procédé selon la revendication 7, caractérisé en ce que l'étape de 15 lecture d'un bloc de sous-titres comprend la lecture dudit flux ou fichier jusqu'à une donnée représentative de la fin d'un bloc de sous-titres selon le mode de présentation de sous-titres sélectionné. 9. Procédé de présentation d'un flux de sous-titres selon l'une des 20 revendications 7 et 8, caractérisé en ce que le flux respecte la norme MPEG-TS. 10. Procédé de présentation d'un fichier de sous-titres selon l'une des revendications 7 et 8, caractérisé en ce que le fichier respecte au 25 moins un standard basé sur W3C TTML (400b, 400c, 400d). 11. Procédé de présentation d'un fichier de sous-titres selon la revendication 10, caractérisé en ce qu'une donnée représentative de la fin d'un bloc est écrite dans une balise spécifique. (460b, 460c, 460d). 30 12.Système de création d'un flux ou fichier de sous-titres composé d'éléments de sous-titres, ledit dispositif comprenant au moins, pour chaque élément de sous-titres (310) : - au moins un module configuré pour insérer ledit élément de sous- titres dans le flux ou fichier de sous-titres (320) ; 3025925 35 - au moins un module configuré pour vérifier au moins une condition de fin de bloc (340), un bloc comprenant au moins un élément de sous-titres, ladite condition de fin de bloc étant liée à un mode de présentation de sous-titres (360) ; 5 - au moins un module configuré pour, lorsque ladite au moins une condition de fin de bloc est vérifiée, insérer dans le flux ou fichier de sous-titres une donnée représentative de la fin d'un bloc selon ledit mode de présentation de sous-titres (350). 10 13.Terminal utilisateur configuré pour présenter un flux ou fichier de sous- titres à au moins un utilisateur, ledit terminal comprenant au moins : - au moins un élément configuré pour mettre en oeuvre la sélection d'un mode de présentation de sous-titres par ledit au moins un utilisateur (510); 15 - au moins un élément configuré pour lire un bloc de sous-titres associé audit mode de présentation de sous-titres (520) ; - au moins un élément configuré pour présenter ledit au moins un bloc de sous-titres selon ledit au moins un mode de présentation (530) ; 20 14. Programme d'ordinateur pour créer, lorsqu'il est exécuté sur un processeur, un flux ou fichier de sous-titres composé d'éléments de sous-titres, ledit programme d'ordinateur comprenant au moins, pour 25 chaque élément de sous-titres : - Des éléments de code informatique pour insérer ledit élément de sous-titres dans le flux ou fichier de sous-titres (320) ; - Des éléments de code informatique pour vérifier au moins une condition de fin de bloc (340), un bloc comprenant au moins un 30 élément de sous-titres, ladite condition de fin de bloc étant liée à un mode de présentation de sous-titres (360) ; - Des éléments de code informatique pour, lorsque ladite au moins une condition de fin de bloc est vérifiée, insérer dans le flux ou fichier de sous-titres une donnée représentative de la fin d'un bloc 35 selon ledit mode de présentation de sous-titres (350). 3025925 36 15. Programme d'ordinateur configuré pour, lorsqu'il est exécuté sur un processeur, présenter un flux ou fichier de sous-titres sur le terminal utilisateur, ledit programme d'ordinateur comprenant au moins : - Des éléments de code informatique pour mettre en oeuvre la 5 sélection d'un mode de présentation de sous-titres par au moins un utilisateur (510) ; - Des éléments de code informatique pour lire un bloc de sous-titres associé audit mode de présentation de sous-titres (520) ; - Des éléments de code informatique pour présenter ledit au moins 10 un bloc de sous-titres selon ledit au moins un mode de présentation (530).