Brevet FR3131059A1 — publié le 20230623

Dispositif de modification d’échelle temporelle d’un signal audio Dispositif de traitement de signal audio comprend une mémoire (4) pour recevoir un signal audio comprenant de la parole, un moteur de reconnaissance automatique de la parole (6) pour en tirer des unités acoustiques associées à un mot ou un silence, et comprenant des données de marqueur de temps, un adaptateur (8) pour déterminer, pour chaque unité acoustique, un facteur d’échelle local en fonction d’un facteur d’échelle global et d’un jeu de règles utilisant les données associées avec des règles distinctes selon que l’unité acoustique est associée à un mot ou un silence pour adapter le facteur d’échelle global, et un modificateur (10) pour appliquer un procédé de modification par addition et recouvrement de fenêtres en utilisant les facteurs d’échelle locaux pour déterminer une suite d’instants du signal audio, et associer à chacun une largeur de fenêtre et un instant de synthèse pour générer un signal audio modifié. Fig.1 Dispositif de modification d’échelle temporelle d’un signal audio L’invention concerne le domaine de la modification d’échelle temporelle d’un signal audio. La consommation de médias audio a connu une croissance exponentielle avec les moyens modernes de communication. Plus particulièrement, la consultation des contenus liés à la parole, via les podcasts et vidéos d’interview ou de discours accessibles sur les plateformes de streaming ou encore les livres audio a explosé. Pour diverses raisons, des utilisateurs souhaitent écouter ces contenus à une vitesse distincte de celle de l’enregistrement qui leur est offert. Souvent, il s’agit d’accélérer le contenu afin de gagner du temps, mais dans certains cas il s’agit au contraire de ralentir celui-ci. L’article de Driedger J. et Müller M. “ A Review of Time-Scale Modification of Music Signals ” Applied Sciences. 2016 ; 6(2) :57. https://doi.org/10.3390/app6020057 décrit un panorama des techniques de modification d’échelle temporelle d’un signal audio musical. Ce document passe en revue les grandes familles de méthodes de traitement des signaux audio que sont les procédés de modification temporelle à base d’addition et recouvrement (« Overlap and add » ou « OLA » en anglais et leurs variantes), le vocodeur de phase, ou la séparation harmonique-percussive. Ces techniques représentent également une partie de l’état de l’art des techniques de modification d’échelle temporelle d’un signal audio comprenant de la parole. D’autres techniques, comme la demande de brevet CA 2 257 298 décrivent la modification d’un signal audio comprenant de la parole par une analyse spectrale en vue de détecter des points d’emphase. Aucune des solutions de l’état de l’art ne donne satisfaction pour l’accélération ou le ralentissent des signaux audio comprenant de la parole. L’invention vient améliorer la situation. À cet effet, elle propose un dispositif de traitement de signal audio, comprenant une mémoire agencée pour recevoir un signal audio comprenant de la parole, un moteur de reconnaissance automatique de la parole agencé pour recevoir un signal audio comprenant de la parole pour en tirer une pluralité d’unité acoustiques consécutives temporellement, chaque unité acoustique étant associée soit à un mot, soit à un silence, et comprenant des données de marqueur de temps de départ et des données de marqueur de temps de fin, un adaptateur agencé pour déterminer, pour chaque unité acoustique, un facteur d’échelle local en fonction d’un facteur d’échelle global reçu en entrée et d’un jeu de règles utilisant les données associées à l’unité acoustique pour adapter le facteur d’échelle global à l’unité acoustique, lequel jeu de règles comprenant des règles distinctes selon que l’unité acoustique est associée à un mot ou à un silence, et un modificateur agencé pour appliquer un procédé de modification temporelle à base d’addition et recouvrement de fenêtres du signal audio comprenant de la parole en utilisant les facteurs d’échelle locaux déterminés par l’adaptateur pour déterminer une suite d’instants du signal audio comprenant de la parole, et associer à chacun des instants de ladite suite d’instants du signal audio comprenant de la parole une largeur de fenêtre et un instant de synthèse permettant de générer un signal audio modifié temporellement selon le facteur d’échelle global. Ce dispositif est particulièrement avantageux car il permet, d’obtenir de biens meilleurs résultats grâce à l’utilisation d’un moteur de reconnaissance automatique de la parole, qui permet de réaliser une segmentation du signal en unités phonatoires avec leur durée et des informations linguistiques qui permettent de choisir les facteurs d’échelle temporelle de façon plus fine. Selon divers modes de réalisation, l’invention peut présenter une ou plusieurs des caractéristiques suivantes : - le modificateur comprend un découpeur pour déterminer des instants d’analyse dans le signal audio comprenant de la parole, et un sélectionneur agencé pour associer chaque instant d’analyse à un facteur d’échelle choisi comme étant le facteur d’échelle local associé à l’unité acoustique dont les données de marqueur de temps de départ et les données de marqueur de temps de fin encadrent ledit instant d’analyse, et définir la suite d’instants du signal audio comprenant de la parole à partir d’instants d’analyse tirés des couples ainsi formés en fonction du facteur d’échelle local qui leur est associé, - le sélectionneur est agencé pour parcourir les couples associant instants d’analyse et facteur d’échelle locale de manière récursive, et pour déterminer pour chaque instant d’analyse si celui-ci est ajouté à la suite d’instants du signal audio comprenant de la parole en fonction du facteur d’échelle local auquel il est associé ainsi que du nombre d’instants d’analyse précédents qui ont été ajoutés à la suite d’instants du signal audio comprenant de la parole, - le modificateur est agencé pour mettre en œuvre un procédé de modification temporelle à base d’addition et recouvrement du type PSOLA, - le modificateur comprend un sélectionneur agencé pour définir un premier instant de la suite d’instants du signal audio comprenant de la parole permettant de définir un signal audio modifié temporellement selon le facteur d’échelle global, et pour définir les autres instants à partir de l’instant immédiatement précédent dans la suite d’instants du signal audio comprenant de la parole et du facteur d’échelle local associé à l’unité acoustique dont les données de marqueur de temps de départ et les données de marqueur de temps de fin encadrent ledit instant immédiatement précédent de la suite d’instants du signal audio comprenant de la parole, - le modificateur est agencé pour mettre en œuvre un procédé de modification temporelle à base d’addition et recouvrement du type WSOLA, - l’adaptateur est agencé pour appliquer des règles selon lesquelles le facteur d’échelle local est calculé selon la formule où p désigne l’unité acoustique concernée, d(p) est la durée de l’unité acoustique concernée, et , α 1 , α 2 étant des facteurs d’échelle choisis en fonction du facteur d’échelle global et du fait que l’unité acoustique concernée est associée à un mot ou à un silence, et d 1 et d 2 sont des durées choisies en fonction du fait que l’unité acoustique concernée est associée à un mot ou à un silence, - l’adaptateur est agencé pour appliquer une règle selon laquelle, pour une unité acoustique associée à un mot, vaut 1 et α 2 vaut le facteur d’échelle globale, d 1 est supérieure à 25ms et d 2 est supérieure à 100ms, - l’adaptateur est agencé pour appliquer une règle selon laquelle, pour une unité acoustique associée à un silence, vaut 0 et α 2 vaut le facteur d’échelle globale élevé au carré, d 1 est supérieur à 300ms et d 2 est supérieur à 1s, - le moteur de reconnaissance automatique de la parole est agencé, lorsqu’une unité acoustique est associée à un mot, pour déterminer une unité phonatoire associée à cette unité acoustique, ainsi qu’une ou plusieurs caractéristiques de cette unité phonatoire, - l’adaptateur est agencé pour mettre en œuvre un jeu de règles basées sur un ou plusieurs critères choisis dans le groupe comprenant l’unité phonatoire associée à l’unité acoustique, une ou plusieurs caractéristiques de l’unité phonatoire associée à l’unité acoustique, la place de l’unité phonatoire associée à l’unité acoustique dans le mot, le nombre d’unités phonatoires dans le mot auquel est associée l’unité acoustique, la durée de l’unité acoustique, et un indice de confiance déterminé par le moteur de reconnaissance automatique de la parole pour l’unité acoustique, - le dispositif comprend en outre un synthétiseur agencé pour recevoir la suite d’instants du signal audio comprenant de la parole permettant de définir un signal audio modifié temporellement selon le facteur d’échelle global et pour produire le signal audio modifié temporellement selon le facteur d’échelle global en ajoutant à chaque instant de synthèse associé à un instant donné de ladite suite d’instants du signal audio comprenant de la parole une portion du signal audio comprenant de la parole sensiblement centrée sur ledit instant donné et présentant la largeur de la fenêtre associée audit instant donné, - le modificateur est agencé pour associer une largeur de fenêtre de taille fixe, - le modificateur est agencé pour associer une largeur de fenêtre basée sur des instants d’analyse entourant l’instant de la suite d’instants du signal audio comprenant de la parole dans le signal comprenant de la parole, et - le synthétiseur est agencé pour appliquer une fonction de modulation à la portion du signal audio comprenant de la parole. L’invention concerne également un procédé de traitement de signal audio, comprenant : a) recevoir un signal audio comprenant de la parole, b) utiliser un moteur de reconnaissance automatique de la parole (6) avec le signal audio comprenant de la parole reçu pour en tirer une pluralité d’unité acoustiques consécutives temporellement, chaque unité acoustique étant associée soit à un mot, soit à un silence, et comprenant des données de marqueur de temps de départ et des données de marqueur de temps de fin, c) déterminer, pour chaque unité acoustique, un facteur d’échelle local en fonction d’un facteur d’échelle global reçu en entrée et d’un jeu de règles utilisant les données associées à l’unité acoustique pour adapter le facteur d’échelle global à l’unité acoustique, lequel jeu de règles comprenant des règles distinctes selon que l’unité acoustique est associée à un mot ou à un silence, et d) appliquer un procédé de modification temporelle à base d’addition et recouvrement de fenêtres du signal audio comprenant de la parole en utilisant les facteurs d’échelle locaux déterminés à l’opération c) pour déterminer une suite d’instants du signal audio comprenant de la parole, et associer à chacun des instants de ladite suite d’instants du signal audio comprenant de la parole une largeur de fenêtre et un instant de synthèse permettant de générer un signal audio modifié temporellement selon le facteur d’échelle global. L’invention concerne également un programme informatique comprenant des instructions pour exécuter le procédé selon l'invention, un support de stockage de données sur lequel est enregistré un tel programme informatique et un système informatique comprenant un processeur couplé à une mémoire, la mémoire ayant enregistré un tel programme informatique. D’autres caractéristiques et avantages de l’invention apparaîtront mieux à la lecture de la description qui suit, tirée d’exemples donnés à titre illustratif et non limitatif, tirés des dessins sur lesquels : - la est un schéma générique d’un dispositif selon l’invention, - la représente un exemple de mise en œuvre d’un premier mode de réalisation du dispositif de la , - la représente un exemple de règle de calcul d’un facteur d’échelle local pour une unité acoustique associée à un mot, - la représente un exemple de règle de calcul d’un facteur d’échelle local pour une unité acoustique associée à un silence, et - la représente un exemple de mise en œuvre d’un second mode de réalisation du dispositif de la . Les dessins et la description ci-après contiennent, pour l'essentiel, des éléments de caractère certain. Ils pourront donc non seulement servir à mieux faire comprendre la présente invention, mais aussi contribuer à sa définition, le cas échéant. La représente un schéma générique d’un dispositif 2 selon l’invention. Le dispositif 2 comprend une mémoire 4, un moteur de reconnaissance automatique de la parole 6, un adaptateur 8, un modificateur 10 et un synthétiseur 12. Comme on le verra plus bas, le synthétiseur 12 peut être séparé du reste du dispositif 2 et n’être utile que pour la reproduction du signal audio modifié. La mémoire 4 peut être tout type de stockage de données propre à recevoir des données numériques : disque dur, disque dur à mémoire flash, mémoire flash sous toute forme, mémoire vive, disque magnétique, stockage distribué localement ou dans le cloud, etc. Les données calculées par le dispositif peuvent être stockées sur tout type de mémoire similaire à la mémoire 4, ou sur celle-ci. Ces données peuvent être effacées après que le dispositif a effectué ses tâches ou conservées. La mémoire 4 reçoit divers types de données : des données de signal audio comprenant de la parole, des données d’unité acoustique, des données de signal audio modifié, des données de facteur d’échelle global, des données de facteur d’échelle local et des données de procédé de modification temporelle à base d’addition et recouvrement. Les données de signal audio comprenant de la parole sont des données qui contiennent le signal que le dispositif 2 vise à modifier pour les accélérer ou les décélérer selon un facteur d’échelle global qui est reçu en tant qu’entrée. Ces données portent la référence 14 sur la . Le facteur d’échelle global peut être un nombre entier ou relatif, ou être désigné par une lettre ou autre expression qui est ensuite retranscrite en un nombre entier ou relatif. L’entrée peut être réalisée au moyen de toute interface adaptée, être choisie depuis une liste de valeurs prédéterminées, au moyen d’un bouton glissant (« slider » en anglais), etc. Comme on le verra plus bas, l’invention repose sur une adaptation fine du facteur d’échelle global en fonction de l’analyse qui est faite du signal audio comprenant de la parole par le moteur de reconnaissance automatique de la parole 6. Cette adaptation se traduit en des facteurs d’échelle locaux, qui sont utilisés pour réaliser la modification d’échelle temporelle du signal audio comprenant de la parole de manière locale. L’adaptation du facteur d’échelle globale en facteurs d’échelle locaux est réalisée par l’application d’un jeu de règles. Ces règles s’appuient sur les données d’unité acoustique détectée par le moteur de reconnaissance automatique de la parole. Les données d’unité acoustique contiennent dans leur version la plus simple au moins les éléments suivants : marqueur de temps de départ de l’unité acoustique dans le signal audio comprenant de la parole, marqueur de temps de fin de l’unité acoustique dans le signal audio comprenant de la parole, type d’unité acoustique (silence ou unité phonatoire appartenant à un mot). Ces données peuvent également comprendre un ou plusieurs des éléments suivants : le mot associé à l’unité acoustique le cas échéant, l’unité phonatoire associée à l’unité acoustique, une ou plusieurs caractéristiques de l’unité phonatoire associée à l’unité acoustique, la place de l’unité phonatoire associée à l’unité acoustique dans le mot associé le cas échéant, la durée de l’unité acoustique, un indice de confiance déterminé par le moteur de reconnaissance automatique de la parole 6 pour l’unité acoustique. Dans l’exemple décrit ici, le jeu de règles comprend des règles distinctes selon que l’unité acoustique est du type silence ou du type unité phonatoire appartement à un mot. Bien que des règles spécifiques soient présentées ici et ont été identifiées par la Demanderesse comme particulièrement avantageuses pour produire un signal audio modifié de meilleure qualité que les méthodes de l’art antérieur, d’autres règles pourront être envisagées et/ou ajoutées. Comme on le verra plus bas, l’invention repose sur la combinaison de l’affinage du facteur d’échelle global en facteurs d’échelle locaux adaptés pour chaque unité acoustique avec un traitement par un procédé de modification temporelle à base d’addition et recouvrement (« Overlap and add » ou « OLA » en anglais). Les recherches de la Demanderesse ont établi que les procédés de type PSOLA (décrits par exemple dans l’article de Moulines, Eric, and Francis Charpentier. “ Pitch-Synchronous Waveform Processing Techniques for Text-to-Speech Synthesis Using Diphones. ” Speech Communication, vol. 9, no. 5, 1990, pp. 453–467) ou WSOLA (décrits par exemple dans l’article de Driedger J. et Müller M. “ A Review of Time-Scale Modification of Music Signals ” Applied Sciences. 2016 ; 6(2) :57. https://doi.org/10.3390/app6020057) sont particulièrement adaptés et donnent de très bons résultats avec un bon compromis en termes de coûts de calcul. Toutes les données liées au paramétrage du ou des procédés à base d’addition et recouvrement ainsi que les données générées au cours de leur exécution forment les données de procédé à base d’addition et recouvrement. Le résultat du traitement du signal audio comprenant de la parole avec les facteurs d’échelle locaux et le procédé à base d’addition et recouvrement est une suite de fenêtres temporelles associées à des instants du signal audio comprenant de la parole et reproduites à des instants de synthèse choisis. Ces données portent la référence 16 sur la . Le signal audio modifié est obtenu par addition et recouvrement de ces fenêtres par le synthétiseur 12. Ces données portent la référence 18 sur la . Il apparaît donc que les données de signal audio modifié sont aussi bien définies par les données qui sont le résultat final de cette synthèse que par la suite d’instants du signal audio comprenant de la parole ensemble avec des paramètres définissant la manière d’extraire les fenêtres et de les réorganiser. Dans l’exemple décrit ici, le moteur de reconnaissance automatique de la parole 6, un adaptateur 8, le modificateur 10 et le synthétiseur 12 accèdent directement ou indirectement à la mémoire 4. Ils peuvent être réalisés sous la forme d’un code informatique approprié exécuté sur un ou plusieurs processeurs. Par processeurs, il doit être compris tout processeur adapté aux calculs décrits plus bas. Un tel processeur peut être réalisé de toute manière connue, sous la forme d’un microprocesseur pour ordinateur personnel, d’une puce dédiée de type FPGA ou SoC, d’une ressource de calcul sur une grille ou dans le cloud, d’une grappe de processeurs graphiques (GPUs), d’un microcontrôleur, ou de toute autre forme propre à fournir la puissance de calcul nécessaire à la réalisation décrite plus bas. Un ou plusieurs de ces éléments peuvent également être réalisés sous la forme de circuits électroniques spécialisés tel un ASIC. Une combinaison de processeur et de circuits électroniques peut également être envisagée. D’une manière générale, la description de la suite d’opérations exécutées lors du fonctionnement du dispositif 2 pour générer la suite d’instants du signal audio comprenant de la parole et/ou le signal audio modifié définit un procédé mis en œuvre par ordinateur selon l’invention. La représente un exemple de mise en œuvre d’une fonction traitant le signal audio comprenant de la parole dans le dispositif de la . Dans ce premier mode de réalisation, le modificateur 10 met en œuvre un procédé de type PSOLA. Dans une opération 200, la fonction commence par la réception du signal audio comprenant de la parole S(t). Ce signal est fourni à trois branches simultanément, bien que la troisième ne fonctionne que lorsque les deux premières ont convergé ensemble. Ainsi, dans une première branche, le signal S(t) fait l’objet d’une analyse par le moteur de reconnaissance automatique de la parole, avec l’exécution d’une fonction ASR() dans une opération 210 par le moteur de reconnaissance automatique de la parole 6. Dans l’exemple décrit ici, la fonction ASR() est basée sur une librairie de reconnaissance automatique de la parole appelée Vosk modifiée pour permettre de récupérer, en plus des mots, les éléments phonatoires qui les composent. Des informations concernant cette librairie peuvent être trouvées à l’adresse https://web.archive.org/web/20211124115527/https://alphacephei.com/vosk. Dans l’exemple décrit ici, la fonction ASR() est agencée pour récupérer l’ensemble des données décrites en référence aux données d’unité acoustique. En variante, elle pourrait se limiter à la version minimale décrit plus haut. Les données en sortie de la fonction ASR() pourraient être stockées dans la mémoire 4 en tant que métadonnées réutilisables plus tard. En effet, cette fonction représente la partie la plus significative du coût de calcul de mise en œuvre de l’invention, et ses résultats ne dépendent pas du facteur d’échelle global. Il pourrait donc être intéressant de les récupérer lors d’un nouveau traitement du même signal. Une fois les données d’unité acoustique déterminées, l’adaptateur 8 exécute dans une opération 220 une fonction Alphadapt() qui reçoit comme arguments d’une part le facteur d’échelle global, et d’autre part les données d’unité acoustique de l’opération 210. La fonction Alphadapt() exécute le jeu de règles afin d’adapter le facteur d’échelle global (ci-après α 0 ) à chacun des éléments acoustiques. Pour rappel, un facteur d’échelle est une valeur entre 0 et +∞ qui caractérise la modification temporelle que l’on souhaite appliquer à un signal audio, ou à une portion de celui-ci. Il correspond à l’inverse de la vitesse de lecture, donc une écoute deux fois plus rapide correspond à un facteur d’échelle de 0,5, et vice-versa. Dans l’exemple décrit ici, deux règles distinctes sont appliquées, selon que l’unité acoustique considérée est un silence ou une unité phonatoire. Dans ce qui suit, la durée d’une unité acoustique est appelée d(p) et est calculée à partir de la différence entre le marqueur de temps de départ et le marqueur de temps de fin de l’unité acoustique p. Les règles sont caractérisées par une fonction d’entrée-sortie qui à chaque durée initiale d(p) associe une durée visée D(p). Le facteur d’échelle local de l’unité acoustique est alors calculé par le rapport entre ces deux distances . Ces fonctions d’entrée-sortie permettent de contrôler l’accélération des unités acoustiques en fonctions de leur durée. Elles peuvent être définies par morceaux, par exemple sur trois domaines de définition : La représente un exemple de courbe de facteur d’échelle local obtenu avec la fonction D(p) ci-dessus en fonction de la durée d(p). Lorsque l’unité acoustique est une unité phonatoire associée à un mot, il est souhaitable de conserver les phonèmes déjà très courts. En fixant et , avec k(p) le nombre de phonèmes dans l’unité phonatoire (par exemple 1 pour un phonème ou 2 pour un di-phone), la durée des phonèmes de durée inférieure à 25ms est conservée. Les unités phonatoires de durée supérieure sont alors accélérées proportionnellement à cette dernière jusqu’à , à partir de laquelle la durée visée devient constante, égale à , peu importe la durée initiale. En fixant et , les unités acoustiques dont la durée des phonèmes avoisine les 100ms sont alors accélérées avec un facteur d’échelle proche du facteur d’échelle global. Au-delà, les unités phonatoires plus longues sont accélérées à la mesure de leur longueur pour être ramenées à la durée . De plus, les durées caractéristiques et peuvent être augmentées de 25% si l’unité phonatoire est en début ou fin de mot. Les recherches de la Demanderesse ont montré que cette représentation permet de modifier de manière extrêmement efficace les unités phonatoires, en préservant les unités phonatoires les plus courtes et en accélérant grandement les unités phonatoires les plus longues. Dans le cas d’une accélération, cette approche est particulièrement efficace. Bien sûr les valeurs des paramètres , , et , de la fonction d’entrée-sortie pourront être modifiés. Lorsque l’unité acoustique est un silence, il est souhaitable de ne conserver que les pauses qui rythment la parole et laissent le temps de respirer. En fixant et , tous les silences de moins de 300ms sont supprimés. Les silences de durée supérieure sont alors conservés mais accélérés de moins en moins jusqu’à à partir de laquelle la durée visée devient constante, égale à , peu importe la durée initiale. En fixant d 2 = 1s et , les silences dont la durée avoisine les 1s sont alors accélérés d’un facteur d’échelle proche du carré du facteur d’échelle global. Au-delà, les silences plus longs sont accélérés à la mesure de leur longueur pour être ramenés à la durée . La représente un exemple de courbe de facteur d’échelle local obtenu avec la fonction D(p) ci-dessus en fonction de la durée d(p) avec ces valeurs spécifiques. En variante, la Demanderesse a identifié qu’il est possible d’utiliser une fonction D(p) continue et dérivable afin d’assurer une évolution lisse des durées visées en fonction de la durée d(p). Ainsi, lorsque l’unité acoustique est un silence, la fonction d’entrée-sortie peut être adaptée selon la formule suivante : avec et par exemple. Et lorsque l’unité acoustique est une unité phonatoire associée à un mot, la fonction d’entrée-sortie peut être adaptée selon la formule suivante : avec , , , et , par exemple. Lorsque l’indice de confiance d’un silence est inférieur à 1 et que sa durée est inférieure à 300ms, il s’agit potentiellement une unité phonatoire qui a mal été catégorisée et la fonction Alphadapt() peut être conçue pour traiter cette unité acoustique en tant qu’unité phonatoire. Ici encore, les paramètres pourraient varier. La fonction Alphadapt() peut mettre plusieurs autres règles, cumulatives ou alternatives, pour calculer le facteur d’échelle local. Ainsi, des règles différentes peuvent être prévues pour chaque unité phonatoire (par exemple pour traiter différemment les /a/ et les /i/), pour chaque caractéristique de l’unité phonatoire (semiphone/phone/diphone/triphone, point d’articulation, ouverture, arrondie…), en fonction de la place de l’unité phonatoire dans le mot ou encore de la place du mot dans la phrase. Une fois que tous les éléments acoustiques ont été traités par la fonction Alphadapt(), la première branche se termine. En parallèle, le signal S(t) est traité par le modificateur 8 dans une opération 230. Dans l’exemple décrit ici, le modificateur 8 met en œuvre certaines parties un procédé de type PSOLA. D’une manière générale, ce procédé vise à préserver la fréquence fondamentale du signal. Pour cela, dans le procédé PSOLA, (i) une analyse de la forme d'onde vocale originale est réalisée afin de produire une représentation intermédiaire non paramétrique du signal, (ii) des modifications sont apportées à cette représentation intermédiaire, et enfin (iii) la synthèse du signal modifié à partir de la représentation intermédiaire modifiée. Dans l’exemple décrit ici, le modificateur 10 comprend un découpeur pour réaliser l’opération (i), et un sélectionneur pour réaliser l’opération (ii), tandis que l’opération (iii) est réalisée par le synthétiseur 12. Ainsi, la fonction PMA() réalise l’opération (i) et détermine des instants d’analyse qui vont être utilisés pour générer la suite d’instants du signal audio comprenant de la parole. Par exemple, la fréquence fondamentale peut être estimée toutes les 5ms en vue de déterminer les instants d’analyses. Une fois ceux-ci déterminés, ils peuvent être retraités afin de les placer aux instants de fermeture de la glotte (GCI) ou d’ouverture de la glotte (GOI). Dans tous les cas, N instants d’analyse sont choisis de sorte qu’ils soient espacés entre eux d’une période de la fréquence fondamentale locale (une valeur arbitraire est fixée pour les segments non-voisés, par exemple 10ms) à savoir . Ensuite, une fonction Modif() est exécutée par le sélectionneur du modificateur 10 dans une opération 240. La fonction Modif() reçoit comme arguments les instants d’analyse de l’opération 230 ainsi que les facteurs d’échelle locaux de l’opération 220. Le sélectionneur agit alors à la manière d’un procédé PSOLA classique, au détail près que, pour chaque instant considéré, le facteur d’échelle utilisé est le facteur d’échelle local associé à la unité acoustique dont les marqueurs de temps de départ et de fin encadrent l’instant considéré dans le signal audio contenant la parole. M instants de synthèse et les instants des fenêtres conservées associés peuvent être calculés par récursivité en utilisant des indexes non-entiers j(m). Le temps de synthèse se calcule par et l’instant de la fenêtre conservée associée par avec et une fonction arrondie. Par exemple, lorsque le facteur d’échelle est de 0,5 (soit un doublement de la vitesse de lecture), le sélectionneur n’introduit dans la suite d’instants du signal audio comprenant de la parole qu’un instant d’analyse sur deux, etc. Il va de soi que de nombreuses méthodes pourront être envisagées pour parcourir les instants d’analyse et remplir la suite d’instants du signal audio comprenant de la parole en respectant la succession de facteurs d’échelle locaux. En variante, si le dernier instant de synthèse n’est pas à un facteur d’échelle globale du dernier instant d’analyse , les facteurs d’échelle locaux de l’opération 220 peuvent être réajustés selon la formule , puis l’opération 240 est répétée. En effet, les facteurs d’échelle locaux n’étant pas uniformes, l'accélération globale introduite par le traitement sera systématiquement légèrement différent du facteur d’échelle globale. Dans l’exemple décrit ici, chaque fenêtre est centrée dans le signal audio comprenant de la parole autour de l’instant d’analyse qui a été stocké dans la suite d’instants du signal audio comprenant de la parole, et présente une taille , ou à gauche et , ou , à droite où est l’instant concerné, l’instant d’analyse immédiatement précédent en sortie de l’opération 230, et l’instant d’analyse immédiatement suivant en sortie de l’opération 230. Ainsi, les deux demi-fenêtres pourront ne pas avoir exactement la même taille. En variante, la taille des fenêtres peut être fixée, par exemple à . Une fois l’opération 240 exécutée, la deuxième branche se termine, et les données 16 de la sont constituées. Enfin la troisième branche peut s’exécuter lorsque la deuxième branche est terminée, avec une fonction Synth() mise en œuvre par le synthétiseur 12 dans une opération 250. Comme on l’a vu plus haut, cette opération consiste à prélever des fenêtres dans le signal audio comprenant de la parole S(t), chacune autour d’un instant de la suite d’instants du signal audio comprenant de la parole, et à réorganiser ces fenêtres pour former le signal audio modifié 18. En variante, les fenêtres peuvent être modulées par une fonction de fenêtrage de type Hanning, Hamming ou encore Blackman (ou autre) afin de lisser les extrémités. Dans cette figure, le traitement du signal S(t) a été présenté d’une manière globale, mais celui-ci peut parfaitement être traité en flux avec un buffer glissant. Cela peut notamment être nécessaire si le signal S(t) est très long, ou s’il est lui-même obtenu par streaming. La représente un exemple de mise en œuvre d’un second mode de réalisation du dispositif de la . Dans ce mode de réalisation, le procédé utilisé par le modificateur 10 est de type WSOLA, ce qui induit quelques modifications. En effet, le procédé WSOLA est moins sophistiqué que le procédé PSOLA, mais présente l’avantage d’être encore plus rapide à mettre en œuvre. Selon ce procédé, la taille des fenêtres est fixée (20ms par exemple) et les M instants de synthèse sont uniformément espacés d’une durée , 10ms par exemple. Les instants des fenêtres conservées se calculent toujours par récursivité mais de la façon suivante : . L’analyse préalable permettant d’extraire des instants d’analyse n’a donc plus lieu d’être. En revanche, une deuxième passe consiste à raffiner chaque instant afin de maximiser la similarité entre la fenêtre qu’il définit et la fenêtre définie par l’instant immédiatement précédent . Sans ce raffinage, il s’agit une méthode OLA classique moins performante. Les deux modes de réalisations étant assez proches seules les opérations différentes seront décrites. Ainsi, les opérations 500, 510, 520 et 550 sont identiques aux opérations 200, 210, 220 et 250. L’opération 530 n’a plus de raison d’être du fait de la différence entre WSOLA et PSOLA, et seule l’opération 540 décrite au paragraphe précédent est différente. Au-delà de la différence de fonctionnement décrite ci-dessus, la fonction 540 utilise les facteurs d’échelle locaux au lieu du facteur d’échelle globale pour définir chaque nouvel instant de la suite d’instants du signal audio comprenant de la parole. Pour le reste, elle opère conformément au procédé WSOLA connu. La Demanderesse a établi que ce deuxième mode de réalisation est particulièrement avantageux car il demande moins de puissance de calcul que le premier mode de réalisation, et l’utilisation des facteurs d’échelle locaux permet là encore d’améliorer significativement la qualité et l’intelligibilité du signal audio modifié grâce à l’utilisation du moteur de reconnaissance automatique de la parole pour adapter le facteur d’échelle aux besoins de la parole. Ce raffinement est en contraste avec les méthodes de l’art, qui se basent sur des paramètres plus “grossiers”, tels que l’énergie locale ou la variation spectrale, pour le calcul de leurs facteurs d’échelle. C’est également une surprise, dans la mesure où de nombreux documents de l’état de l’art (comme la demande de brevet CA 2 257 298) avaient totalement écarté l’utilisation de la reconnaissance automatique de la parole comme un outil potentiel. Dispositif de traitement de signal audio, comprenant une mémoire (4) agencée pour recevoir un signal audio comprenant de la parole, un moteur de reconnaissance automatique de la parole (6) agencé pour recevoir un signal audio comprenant de la parole pour en tirer une pluralité d’unité acoustiques consécutives temporellement, chaque unité acoustique étant associée soit à un mot, soit à un silence, et comprenant des données de marqueur de temps de départ et des données de marqueur de temps de fin, un adaptateur (8) agencé pour déterminer, pour chaque unité acoustique, un facteur d’échelle local en fonction d’un facteur d’échelle global reçu en entrée et d’un jeu de règles utilisant les données associées à l’unité acoustique pour adapter le facteur d’échelle global à l’unité acoustique, lequel jeu de règles comprenant des règles distinctes selon que l’unité acoustique est associée à un mot ou à un silence, et un modificateur (10) agencé pour appliquer un procédé de modification temporelle à base d’addition et recouvrement de fenêtres du signal audio comprenant de la parole en utilisant les facteurs d’échelle locaux déterminés par l’adaptateur (8) pour déterminer une suite d’instants du signal audio comprenant de la parole, et associer à chacun des instants de ladite suite d’instants du signal audio comprenant de la parole une largeur de fenêtre et un instant de synthèse permettant de générer un signal audio modifié temporellement selon le facteur d’échelle global. Dispositif selon la revendication 1, dans lequel le modificateur (10) comprend un découpeur pour déterminer des instants d’analyse dans le signal audio comprenant de la parole, et un sélectionneur agencé pour associer chaque instant d’analyse à un facteur d’échelle choisi comme étant le facteur d’échelle local associé à l’unité acoustique dont les données de marqueur de temps de départ et les données de marqueur de temps de fin encadrent ledit instant d’analyse, et définir la suite d’instants du signal audio comprenant de la parole à partir d’instants d’analyse tirés des couples ainsi formés en fonction du facteur d’échelle local qui leur est associé. Dispositif selon la revendication 2, dans lequel le sélectionneur est agencé pour parcourir les couples associant instants d’analyse et facteur d’échelle locale de manière récursive, et pour déterminer pour chaque instant d’analyse si celui-ci est ajouté à la suite d’instants du signal audio comprenant de la parole en fonction du facteur d’échelle local auquel il est associé ainsi que du nombre d’instants d’analyse précédents qui ont été ajoutés à la suite d’instants du signal audio comprenant de la parole. Dispositif selon la revendication 2 ou 3, dans lequel le modificateur (10) est agencé pour mettre en œuvre un procédé de modification temporelle à base d’addition et recouvrement du type PSOLA. Dispositif selon la revendication 1, dans lequel le modificateur (10) comprend un sélectionneur agencé pour définir un premier instant de la suite d’instants du signal audio comprenant de la parole permettant de définir un signal audio modifié temporellement selon le facteur d’échelle global, et pour définir les autres instants à partir de l’instant immédiatement précédent dans la suite d’instants du signal audio comprenant de la parole et du facteur d’échelle local associé à l’unité acoustique dont les données de marqueur de temps de départ et les données de marqueur de temps de fin encadrent ledit instant immédiatement précédent de la suite d’instants du signal audio comprenant de la parole. Dispositif selon la revendication 5, dans lequel le modificateur (10) est agencé pour mettre en œuvre un procédé de modification temporelle à base d’addition et recouvrement du type WSOLA. Dispositif selon l’une des revendications précédentes, dans lequel l’adaptateur (8) est agencé pour appliquer des règles selon lesquelles le facteur d’échelle local est calculé selon la formule où p désigne l’unité acoustique concernée, d(p) est la durée de l’unité acoustique concernée, et , α 1 , α 2 étant des facteurs d’échelle choisis en fonction du facteur d’échelle global et du fait que l’unité acoustique concernée est associée à un mot ou à un silence, et d 1 et d 2 sont des durées choisies en fonction du fait que l’unité acoustique concernée est associée à un mot ou à un silence. Dispositif selon la revendication 7, dans lequel l’adaptateur (8) est agencé pour appliquer une règle selon laquelle, pour une unité acoustique associée à un mot, α 1 vaut 1 et α 2 vaut le facteur d’échelle globale, d 1 est supérieur à 25ms et d 2 est supérieur à 100ms. Dispositif selon la revendication 7 ou 8, dans lequel l’adaptateur (8) est agencé pour appliquer une règle selon laquelle, pour une unité acoustique associée à un silence, α 1 vaut 0 et α 2 vaut le facteur d’échelle globale élevé au carré, d 1 est supérieur à 300ms et d 2 est supérieur à 1s. Dispositif selon l’une des revendications précédentes, dans lequel le moteur de reconnaissance automatique de la parole (6) est agencé, lorsqu’une unité acoustique est associée à un mot, pour déterminer une unité phonatoire associée à cette unité acoustique, ainsi qu’une ou plusieurs caractéristiques de cette unité phonatoire. Dispositif selon la revendication 10, dans lequel l’adaptateur (8) est agencé pour mettre en œuvre un jeu de règles basées sur un ou plusieurs critères choisis dans le groupe comprenant l’unité phonatoire associée à l’unité acoustique, une ou plusieurs caractéristiques de l’unité phonatoire associée à l’unité acoustique, la place de l’unité phonatoire associée à l’unité acoustique dans le mot, le nombre d’unités phonatoires dans le mot auquel est associée l’unité acoustique, la durée de l’unité acoustique, et un indice de confiance déterminé par le moteur de reconnaissance automatique de la parole (6) pour l’unité acoustique. Dispositif selon l’une des revendications précédentes, comprenant en outre un synthétiseur (12) agencé pour recevoir la suite d’instants du signal audio comprenant de la parole permettant de définir un signal audio modifié temporellement selon le facteur d’échelle global et pour produire le signal audio modifié temporellement selon le facteur d’échelle global en ajoutant à chaque instant de synthèse associé à un instant donné de ladite suite d’instants du signal audio comprenant de la parole une portion du signal audio comprenant de la parole sensiblement centrée sur ledit instant donné et présentant la largeur de la fenêtre associée audit instant donné. Dispositif selon la revendication 12, dans lequel le modificateur (10) est agencé pour associer une largeur de fenêtre de taille fixe. Dispositif selon la revendication 12 et l’une des revendications 2 à 4, dans lequel le modificateur (10) est agencé pour associer une largeur de fenêtre basée sur des instants d’analyse entourant l’instant de la suite d’instants du signal audio comprenant de la parole dans le signal comprenant de la parole. Dispositif selon l’une des revendications 12 à 14, dans lequel le synthétiseur (12) est agencé pour appliquer une fonction de modulation à la portion du signal audio comprenant de la parole.