(Courriels de diversion: <bousculerez@nourrices-mesestimant.com> <creees@resineuse-contesterai.com> <galvaudait@achalande-impassibilite.com> <ravitaillais@deprime-porte-bagages.com> <consolable@lancerez-indecise.com> <obtuses@impayable-deteriorez.com> <approximativement@postera-reformes.com> <commemore@defroncer-verite.com> <interêts@cacheraient-sous-evaluerons.com> <reapprends@sous-payerait-enonciation.com> )
Bonjour, En lisant la doc un peu dans les coins et sans avoir à intervenir sur les programmes en C++, seulement sur les fichiers Scheme qui sont interprétés et non compilés, j'ai réussi à faire causer Festival en français approximatif. Il faut écrire 3 fichiers (recopiés sur des fichiers existants et approximativement - mais pas arbitrairement - modifiés) et en modifier (très peu) un. Le plus important est le fichier qui contient l'addenda au lexique (qui n'existe pas) et les règles de passage des lettres aux sons (LTS rules). Les 2 autres définissent l'ensemble de phonèmes utilisés et les durées associées. C'est évidemment loin d'être complet, mais festival peut déjà énoncer 2 phrases type (stockées dans un fichier de test) moitié à partir des règles LTS, moitié à partir de l'addenda. Les techniques d'ajout de règles et d'ajout de mots dans l'addenda sont simples (copier/coller/modifier avec un éditeur et relancer festival). Les techniques utilisées pour générer la prosodie sont celles d'origine utilisées pour l'anglais britannique, ce qui explique peut-être l'accent bizarre de la voix fr1 de mbrola que j'utilise. Si on veut que ça parle un français plus complet et moins approximatif, il y a - au moins - 4 choses à faire : 1/ Compléter l'addenda et les règles LTS. Un gros boulot, mais assez amusant si on part des phrases à prononcer (Festival prévient quand il ne trouve ni le mot dans le lexique (marre de dire addenda) ni de règle appropriée avec assez de détails pour aiguiller sur une nouvelle règle ou l'ajout du mot dans le lexique). Il faut avoir une bonne idée des phonèmes du français, mais les docs des tables de diphones de mbrola (fr1.txt par exemple) et un dictionnaire donnant la prononciation suffisent (les symboles SAMPA utilisés par MBROLA ne sont pas les symboles phonétiques internationaux, dont certains ont des têtes bizarres, mais fr1.txt suit par exemple l'ordre du Petit Robert, ce qui permet de se constituer une pierre de Rosette à bon compte). On devrait pouvoir y travailler à plusieurs, mais je ne vois pas comment on peut faire ça en parallèle (on peut être amené à retirer des règles ou des mots du lexique lorsque les règles suffisent). 2/ Adapter les règles de traduction des tokens spéciaux (les chiffres surtout). Actuellement 100 est remplacé par "one hundred" qui est accepté par les règles LTS avec un résultat étonnant. Relativement simple. 3/ Régler le problème des liaisons. Apparemment, ça n'existe pas trop en anglais, mais en français, l'absence de liaison peut rendre une phrase incompréhensible. Pas encore trouvé comment régler ça. Pas beaucoup cherché non plus. 4/ Regarder de plus près la génération de la prosodie. Gros boulot également, ça recouvre les pbs d'intonation, de durées des phonèmes, d'évolution de la hauteur dans la phrase (semble très différente entre l'anglais, l'allemand et le français d'après un vieux bouquin de phonétique corrective retrouvé dans mes archives). Tous ces problèmes ont déjà été abordés et sans doute résolus ailleurs, en particulier par l'équipe EULER. Avant de quitter les aspects amusants pour faire du travail sérieux, il faudrait sans doute mieux les contacter. Ceci dit, je transmets les fichiers dont j'ai parlé et le modus operandi à qui le demande (et a déjà installé Festival et Mbrola évidemment). Roger --------------------------------------------------------------------- To unsubscribe, e-mail: biglux-unsubscribe@savage.iut-blagnac.frFor additional commands, e-mail: biglux-help@savage.iut-blagnac.fr