Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 09/02/2009, à 18:11

SandraVel

[Résolu]Existe-t-il un Text-to-speech en russe sous linux ?

Bonjour,

Comme le titre l'indique, je suis à la recherche d'un programme Text-to-speech lisant le russe sur ubuntu.

J'ai vu que Kttsd permet de choisir pleins de langues, dont le russe. Le problème est que quand on sélectionne le russe... il ne se passe strictement rien! (Comme d'ailleurs pour toutes les autres langues en-dehors de l'anglais).

J'ai regardé les différentes voix dans Festival, mais pas de traces de russe.

Quelqu'un aurait-il une idée?

Merci beaucoup!

Sandra

Dernière modification par SandraVel (Le 13/03/2010, à 17:57)

Hors ligne

#2 Le 10/02/2009, à 14:55

Plonk

Re : [Résolu]Existe-t-il un Text-to-speech en russe sous linux ?

Bonjour,

eSpeak le propose dans une version assez basique apparemment

ru  Russian
    So far it's just an initial attempt with basic pronunciation rules. Work is needed especially on the consonants. Russian has two versions of most consonants, "hard" and "soft" (palatalised) and in most cases eSpeak doesn't yet make a proper distinction.
    Russian stress position is unpredictable so a large lookup dictionary is needed of those words where eSpeak doesn't guess correctly. To avoid increasing the size of the basic eSpeak package, this is available separately at: http://espeak.sourceforge.net/data/

source : site d'eSpeak sur sourceforge.

Il est disponible dans les dépôts smile

#3 Le 07/01/2010, à 21:17

SandraVel

Re : [Résolu]Existe-t-il un Text-to-speech en russe sous linux ?

Avec près d'une année de retard... (pas mal d'autres problèmes avec ubuntu plus prioritaires)

Effectivement, on a espeak. Il est même déjà installé de base. Il lit le russe...heu.. il lit qch disons. Impossible de rien reconnaitre.

Comme expliqué sur le site de eSpeak, il faut ajouter des dictionnaires contenant la prononciation (il y a un accent tonique qui change de façon prévisible la prononciation des lettres, mais cet accent tonique ne tombe pas d'une façon prévisible sur telle ou telle syllabe. Il faut donc inclure une base de donnée avec tous les mots pré-enregistrés). Seulement, tous les dictionnaires proposés par eSpeak sont pour Windows...

Si quelqu'un a une idée... Merci.

Dans tous les cas, BONNE ET HEUREUSE ANNEE !!!!!

Sandra

Hors ligne

#4 Le 07/01/2010, à 22:21

SandraVel

Re : [Résolu]Existe-t-il un Text-to-speech en russe sous linux ?

En refaisant une recherche sur internet (après presque une année, il y a peut être des sites répondant à mon problème), je vois que Festival a un festvox-ru : Russian male speaker for Festival : This package provides Russian support to Festival speech synthesis system.
Immédiatement je l'installe depuis Synaptic. J'ouvre ensuite un terminal, je cherche pendant 1/2 heure la commande lui faisant comprendre que je veux la langue russe, et finalement j'obtiens :

festival --language Russian
"Unsupported language, using English"
SIOD ERROR: unbound variable : voice_rab_diphone
festival: fatal error exiting.

Encore raté. Est-ce parce que j'ai mal écrit la commande? Ou parce que je n'ai rien compris à ce que fait ce paquet?

Merci d'avance pour vos lumières,

Sandra

Hors ligne

#5 Le 13/03/2010, à 17:45

SandraVel

Re : [Résolu]Existe-t-il un Text-to-speech en russe sous linux ?

CA Y EST !!!!! Une année après, CA Y EST, CA MARCHE !!!!!!!!!!!!!!

En fait, ce qui me manquait vraiment c'est un site clair qui me dise vraiment comment utiliser festival. Car partout on nous dit qu'il intègre le russe, ouais super, mais jamais comment l'utiliser. Et on nous donne des exemples de ligne de commande pour l'anglais.

Alors les lignes de commandes sont :

mon_ordi> festival

** on entre ainsi dans le programme, bon jusque là, c'était facile

festival> (voice_msu_ru_nsh_clunits)

** c'est le choix de la voix (donc de la langue et de l'écriture). Attention les parenthèses sont vraiment nécessaires.

** Ensuite on a le choix entre :

festival> (SayText "Говори!")

** il lirra le texte écrit entre parenthèse

** et

festival> (tts "russe.txt" nil)

** il lirra ce qui se trouve dans le fichier russe.txt. Attention, il faut que ce texte soit au format UTF8).

Aaaah trop contente, enfin trouver les lignes de commandes qu'il me fallait. Car je ne savais pas le nom de la voix, je ne savais pas qu'il ne fallait pas la sélectionner en même tant que le texte, je mettais bêtement le nom de la langue, et je ne mettais pas les parenthèses...
Il faut dire que dans la plupart des sites on voit quelque choses du genre :

mon_ordi> festival --tts english.txt

ou

mon ordi> echo "Hello votre_nom" | festival --tts

et on nous conseille de regarder :

mon_ordi> festival --help

qui nous donne :

Usage: festival Usage:
festival  <options> <file0> <file1> ...
In evaluation mode "filenames" starting with ( are evaluated inline
Festival Speech Synthesis System: 1.96:beta July 2004
-q            Load no default setup files
--datadir <string>
              Set data directory pathname
--libdir <string>
              Set library directory pathname
-b            Run in batch mode (no interaction)
--batch       Run in batch mode (no interaction)
--tts         Synthesize text in files as speech
              no files means read from stdin
              (implies no interaction by default)
-i            Run in interactive mode (default)
--interactive
              Run in interactive mode (default)
--pipe        Run in pipe mode, reading commands from
              stdin, but no prompt or return values
              are printed (default if stdin not a tty)
--language <string>
              Run in named language, default is
              english, spanish, russian and welsh are available
--server      Run in server mode waiting for clients
              of server_port (1314)
--script <ifile>
              Used in #! scripts, runs in batch mode on
              file and passes all other args to Scheme
--heap <int> {1000000}
              Set size of Lisp heap, should not normally need
              to be changed from its default
-v            Display version number and exit
--version     Display version number and exit

Quand je voyais cela, je pensais que je devais écrire language <russian> ou directement <russian> ou language russian, etc. en lançant festival avec mon texte...

Si quelqu'un passe par là (je sais qu'il n'y pas foule sur ce topic) est-ce que l'on pourrait me dire :

1) comment faire un "truc" pour le lancer de manière moins barbare (c'est-à-dire sans passer par le terminal).

2) pourquoi linux aime tant les terminaux ? Il y a souvent des alternatives graphiques - pas toujours - mais les programmes dans les terminaux sont toujours plus performants, plus précis, fonctionnent mieux, d'où leur utilisation si fréquente. Mais cela paraît comme assez primitif et barbare. C'est ce qui repousse la plupart des gens. Ce ne doit pourtant pas être si compliqué d'intégrer ces lignes de commandes derrière une interface graphique, non?
Attention, je n'écris pas cela pour critiquer, pour descendre linux, mais au contraire pour mieux comprendre et essayer peut-être d'améliorer son attractivité.

SandraVel

Dernière modification par SandraVel (Le 13/03/2010, à 17:54)

Hors ligne

#6 Le 13/03/2010, à 21:39

kinouchou

Re : [Résolu]Existe-t-il un Text-to-speech en russe sous linux ?

salut SandraVel,

merci d'avoir mis ta méthode pour faire le changement de langue ça peut aider pas mal de monde

peut-être peux tu compléter la doc http://doc.ubuntu-fr.org/synthese_vocale

pour ce qui est de la ligne de commande c'est souvent parce que la méthode est la même quelque soit ta configuration (gnome, kde, ...) ce qui fait que c'est beaucoup plus simple.
je ne peux pas t'aider mais j'essaie de suivre les topics dans la section accessibilité

bravo pour ta percévérance

Dernière modification par kinouchou (Le 13/03/2010, à 21:41)