Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
synthese_vocale [Le 22/08/2010, 22:01] 90.62.56.185 Ajout de script |
synthese_vocale [Le 08/09/2024, 12:30] (Version actuelle) moths-art suppression d'un titre qui n'a aucun sens |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>accessibilité audio multimédia mao}} | + | {{tag>portail accessibilité audio multimédia synthèse vocale tts}} |
---- | ---- | ||
Ligne 9: | Ligne 9: | ||
La synthèse vocale procède en trois temps : | La synthèse vocale procède en trois temps : | ||
- transformation du texte en [[wpfr>Phonème|phonèmes]] ; | - transformation du texte en [[wpfr>Phonème|phonèmes]] ; | ||
- | - [[wpfr>Prosodie|prosodie]] (ajout d'informations de prononciation : accents toniques, indication de durée, etc.) ; | + | - [[wpfr>Prosodie]] (ajout d'informations de prononciation : accents toniques, indication de durée, etc.) ; |
- assembler des sons pré-enregistrés en suivant les règles établies par les deux premières étapes. | - assembler des sons pré-enregistrés en suivant les règles établies par les deux premières étapes. | ||
- | Pour en savoir plus : [[wpfr>Synthèse_vocale|Wikipedia]] (fr), [[http://download.gna.org/lliaphon/devguide.pdf|Llia_Phon]] (fr). | + | Pour en savoir plus : [[wpfr>Synthèse_vocale|Wikipedia]] (fr), [[http://download.gna.org/lliaphon/devguide.pdf|Llia-Phon]] (fr). |
- | Ce document a pour but de présenter la mise en œuvre de quelques solutions. | + | Ce document a pour but de présenter la mise en œuvre de quelques solutions. |
- | Voir également la page [[reconnaissance vocale]]. | + | Comme la [[:reconnaissance vocale]] va de pair avec la **synthèse vocale** vous serez sans doute intéressé par le site [[http://www.voxforge.org/fr|VoxForge.org]]. Vous pouvez y enregistrer un texte qui permettra d'intégrer votre voix dans les modèles de reconnaissance vocale, et ainsi les améliorer. |
- | <note tip> | + | <note tip>Certains logiciels libres sont compatibles avec les voix Windows (dont certaines peuvent être libres, ou gratuites pour une utilisation non commerciale, voir [[:synthese_vocale#ressources_des_voix|ressources]]). |
- | A savoir : | + | |
- | * SAPI : Synthèse vocale sous windows (Speech Application Programming Interface ) : certain logiciel open source sont donc compatible avec les voix windows ( dont certaines peuvent être libre ou en tout cas gratuite pour une utilisation non commerciale voir [[:synthese_vocale#ressources_des_voix|ressource]] ). | + | |
</note> | </note> | ||
- | <note tip>Il serait utile de continuer la page dans une vision simple en tirant les idées manquantes de : | + | ===== Logiciels de synthèse vocale ==== |
- | * [[http://blinuxman.net/edu/fr/EduVocale.txt|La fiche EDU pour une solution vocale en Français sous la console GNU/Linux]] | + | ====Svoxpico==== |
- | * [[http://vinux.org.uk/|Vimux- distribution et live CD destiné au déficient visuel]]. | + | [[:Svoxpico]]: le lecteur vocal d'Android, de loin celui qui donne les meilleurs résultats, permet de lire n'importe quelle sélection. |
- | * [[http://www.culte.org/projets/biglux/install/lao/festival.shtml|projet biglux]] | + | |
+ | ====gSpeech==== | ||
+ | {{ :applications:gspeech.png?50}} | ||
- | </note> | + | **gSpeech** est une GUI par dessus **Svoxpico** tout en améliorant sa prononciation sur les mots/expressions les plus courantes. |
+ | Une description de **gSpeech** est disponible ici : [[https://wiki.primtux.fr/doku.php/gspeech|présentation de gSpeech]]. | ||
+ | Un descriptif plus technique de l'avancement est également disponible sur [[https://linuxfr.org/news/gspeech-passe-en-0-10|linuxfr]] | ||
+ | ===Via un ppa=== | ||
+ | Vous pouvez installer gSpeech en ajoutant un ppa : | ||
+ | * [[:PPA|Ajouter le PPA]] **ppa:jerem-ferry/tts**((https://launchpad.net/~jerem-ferry/+archive/ubuntu/tts)) dans vos sources de logiciels; | ||
+ | * [[:tutoriel:comment_installer_un_paquet|Installer le paquet]] **[[apt>gspeech]]**. | ||
- | ===== Intégration dans des logiciels ===== | + | Vous pouvez trouver les sources sur [[https://github.com/mothsart/gSpeech.git|Github]]. |
- | ==== Logiciels avec synthèse vocale ==== | + | ====eSpeak==== |
+ | * [[:Espeak]] est disponible dans les dépôts, il propose une voix plutôt "robotique", mais combiné avec mbrola, il peut donner de bons résultats. | ||
- | Il ne s'agit en fait souvent que d'interface se basant sur un moteur de synthèse vocale ( festivale , espeak ...) : | ||
- | * [[:Orca]] : outils d'[[:accessibilité]] | ||
- | * [[:abuledu-volubil|Volubil]] : outil destiné aux enfants. | ||
- | * [[http://www.gtk-apps.org/content/show.php/Gespeaker?content=117016|Gespeaker]] | ||
+ | ====Festival==== | ||
+ | * **[[https://www.cstr.ed.ac.uk/projects/festival/|Festival]]** est un synthétiseur vocal, pour lequel il n'existe apparemment pas de voix française directement pour l'instant ([[http://phantomsdad.blogspot.com/2005/06/ktts-and-french-connection.html|avis aux amateurs]]...). | ||
- | ==== Synthèse vocale dans pidgin (simple) ==== | + | Mais il existe un [[wpfr>Fork (développement logiciel)|fork]] pour festival afin d'avoir les voix françaises : Où ? |
+ | De même festival peut utiliser les voix françaises de Mbrola - (et Sapi).\\ | ||
+ | Il peut fonctionner en mode interactif, même si ça n'a pas l'air très intuitif de prime abord...\\ | ||
+ | Pour l'installer, il suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>festival]]**, et [[apt>festvox-rablpc16k|d'autres voix anglaises]]. (voir également [[wpfr>Festival Speech Synthesis System|plus d'information relative sur wikipedia]]) | ||
- | La synthèse vocale dans pidgin avec : | + | Pour l'utiliser entrez la commande suivante dans un [[terminal]] : |
- | * [[apt://pidgin-festival|pidgin-festival]] ( besoin d'1 clic même si vous n'avez pas installé festival) | + | <code>echo "That's really a pity I'm not able to speak French" | festival --tts</code> |
- | Vous pouvez déjà activer le plugin dans pidgin , mais vous n'aurez qu'une voix anglaise. | + | Pour connaître les options : <code>festival --help</code> |
+ | <note important>Si vous obtenez une erreur du type ''can't open /dev/dsp'', réessayez après avoir fermé toutes les applications (y compris les pages internet nécessitant certains plugins) utilisant le son. | ||
+ | On peut éviter le ''can't open /dev/dsp'' en redirigeant le son vers ALSA. Pour cela, on demande à festival de sortir le son avec aplay. On [[:tutoriel:comment_modifier_un_fichier|Créez le fichier]] [[:fichier_cache|caché]] **.festivalrc** dans votre **Dossier personnel** avec le contenu suivant : | ||
+ | <file> | ||
+ | (Parameter.set 'Audio_Command "aplay -t wav -r $SR $FILE") | ||
+ | (Parameter.set 'Audio_Method 'Audio_Command) | ||
+ | (Parameter.set 'Audio_Required_Format 'wav) | ||
+ | </file> | ||
+ | </note> | ||
- | Il vous reste donc à installer une voix française et la sélectionner. | + | ==== MBROLA ==== |
+ | Le projet **[[http://tcts.fpms.ac.be/synthesis/mbrola.html|MBROLA]]** a été développé à l'Université de Mons ([[https://web.umons.ac.be/numediart/fr/|Institut NUMEDIART]]), et comporte un grand nombre de langages/voix. | ||
+ | En 2019, **MBROLA a été rendu disponible en [[https://github.com/numediart/MBROLA|open source sur github]] sous license GNU GPL3 Afero.** | ||
+ | Pour l'installer, il suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>mbrola]]**. | ||
- | ==== Dans le dictionnaire stardict (simple) ==== | + | Un certain nombre de voix pour Mbrola - pour diverses langues - sont présentes dans les [[:depots|dépôts officiels]], pour les installer faites une recherche dans votre [[:gestionnaire de paquets]] avec le mot clé **Mbrola**.\\ |
+ | Mbrola ne fait pas directement la transformation de texte en voix. Il traite des fichiers de phonèmes. Une autre application, capable de décomposer du texte en phonèmes est donc nécessaire, comme [[:eSpeak]]. | ||
+ | Les voix de Mbrola donnent un rendu plus naturel que celles de eSpeak (lesquelles sont très "robotiques"), d'où l'intérêt de combiner les deux. | ||
+ | Par défaut les voix de Mbrola s'installent dans **/usr/share/mbrola/**. Pour le français il existe fr1, une voix masculine, et fr4 une voix féminine.\\ | ||
+ | Si vous les mettez ailleurs, [[:eSpeak]] ne les trouvera pas. | ||
- | Vous pouvez installer : | + | Si vous souhaitez ajouter d'autres voix, elles sont téléchargeables depuis le [[https://github.com/numediart/MBROLA-Voices|site github]]. [[[[:archivage#graphiquement|Extraire]] le fichier zip dans **/usr/share/mbrola/**. |
- | * [[apt://stardict-plugin-festival|le plugin festival]] | + | Les voix françaises de [[https://github.com/numediart/MBROLA|mbrola]] (non libres à ce jour, mais en cours d'ouverture): |
- | * [[apt://stardict-plugin-espeak|le plugin espeak]] | + | * [[https://github.com/numediart/MBROLA-voices/blob/master/data/fr1/fr1?raw=true|Voix Mbrola FR1]] : homme, Faculte Polytech. De Mons. |
- | ====Synthèse vocale dans openoffice (simple) ==== | + | * [[https://github.com/numediart/MBROLA-voices/blob/master/data/fr2/fr2?raw=true|Voix Mbrola FR2]] : Femme, Celine Egea |
+ | * [[https://github.com/numediart/MBROLA-voices/blob/master/data/fr3/fr3?raw=true|Voix Mbrola FR3]] : homme, Babel Technology | ||
+ | * [[https://github.com/numediart/MBROLA-voices/blob/master/data/fr4/fr4?raw=true|Voix Mbrola FR4]] : femme, Babel Technology | ||
+ | * [[https://github.com/numediart/MBROLA-voices/blob/master/data/fr5/fr5?raw=true|Voix Mbrola FR5]] : homme, belge, Faculte Polytech. De Mons | ||
+ | * [[https://github.com/numediart/MBROLA-voices/blob/master/data/fr6/fr6?raw=true|Voix Mbrola FR6]] : homme, Faculte Polytech. De Mons | ||
+ | * [[https://github.com/numediart/MBROLA-voices/blob/master/data/fr7/fr7?raw=true|Voix Mbrola FR7]] : homme belge , Faculte Polytech. De Mons, | ||
+ | * [[https://github.com/numediart/MBROLA-voices/blob/master/data/ca1/ca1?raw=true|Voix québecois 1]] : homme,Vincent Arnaud, | ||
+ | * [[https://github.com/numediart/MBROLA-voices/blob/master/data/ca2/ca2?raw=true|Voix québecois 2]] : homme, Silex Creations Inc. | ||
- | Installer l'[[http://extensions.services.openoffice.org/project/Read_Text|extension readtext]] pour openoffice (compatible festival et espeak). | ||
- | Voir [[openoffice.org#installer_une_extension|comment installer une extension]]. | + | MBROLA est également disponible sous forme de fichiers binaires téléchargeables [[http://tcts.fpms.ac.be/synthesis/mbrola/mbrcopybin.html|première partie de la page]]. ((Il y a aussi des « .deb » [[http://tcts.fpms.ac.be/synthesis/mbrola/mbrcopybin.html|ici]] (troisième ligne linux)...)) On extrait le fichier qui correspond à son [[:architecture matérielle|architecture]] dans un répertoire au choix, de préférence /usr/share/mbrola (là où se fait l'installation par les dépôts). |
- | ====Synthèse vocale dans Firefox ==== | ||
+ | ====Autres==== | ||
+ | * [[:Orca]] : outil par défaut d'Ubuntu, fonctionne avec les programmes couramment utilisés (Navigateur web, Office, Client mail, terminal, etc.) | ||
+ | * [[https://github.com/BullShark/JSpeak|Jspeak (GPLv3)]] lecteur de presse-papier écrit en [[:java]], attention peut faire planter votre session!! | ||
+ | * [[http://www.letime.net/vocale|Im3jo]] synthétiseur musical et vocal, une application sur le temps jo fixe a deux octets par front, un exemple d'étude sur un système à 2 dimensions. Destiné aux enfants pour jouer avec la musique, il donne aussi la possibilité de modifier la voix en fichier texte. | ||
- | [[http://www.firevox.clcworld.net/clc-4-tts_bundle_v4.0_release.xpi|Cliquer ici pour installer l'extension FIREVOX, pour firefox]] ((clicspeak y est intégré)) | + | ==== Logiciels en console ==== |
+ | * **[[apt>yasr]]** : Yasr est un lecteur d'écran polyvalent en console pour GNU/Linux et d'autres systèmes d'exploitation de style Unix, | ||
+ | * **[[apt>eflite]]** (emacspeak) s'utilise avec Festival, donc seulement en anglais pour l'instant. | ||
- | Basé sur [[http://clickspeak.clcworld.net/installation_linux.html|Clickspeak]]. | + | =====Synthèse vocale intégrée à certaines applications===== |
+ | ==== Synthèse vocale dans Pidgin==== | ||
+ | La synthèse vocale dans Pidgin avec : | ||
+ | * [[apt://pidgin-festival|pidgin-festival]] : s'installe en 1 clic (installe Festival et Pidgin s'ils ne sont pas déjà installés). Vous pouvez déjà activer le plugin dans Pidgin, mais vous n'aurez qu'une voix anglaise. Il vous reste donc à installer une voix française et la sélectionner. | ||
- | Compatible :SAPI 5, Java FreeTTS, and ORCA | + | ==== Dans le dictionnaire Stardict==== |
+ | Vous pouvez installer : | ||
+ | * [[apt>stardict-plugin-festival|le plugin Festival]] | ||
+ | * [[apt>stardict-plugin-espeak|le plugin Espeak]] | ||
+ | ==== Dans le dictionnaire Goldendict==== | ||
+ | [[:Goldendict]] est un peu le remplaçant de [[:Stardict]] il permet aussi, dans sa dernière version, d'intégrer un synthétiseur vocale, Pour cela : | ||
+ | * Installez [[:eSpeak]] et éventuellement [[#Mbrola]] | ||
+ | * Appuyer sur F3 pour ouvrir la fenêtre des dictionnaires | ||
+ | * Dans l'onglet //Sources// selectionnez //Programmes// | ||
+ | * Cliquez sur //Ajouter//, dans //Type// mettez //Audio// et dans //Ligne de commande// ''espeak -v f %GDWORD%'' ou ''espeak -v mb/mb-fr1 -f %GDWORD%'' si vous souhaitez utiliser Mbrola. | ||
+ | * Fermez et rouvrez Goldendict, vous trouverez maintenant une catégorie dans vos dictionnaires avec un icône d'haut-parleur devant le mot recherché. | ||
- | Voir le forum ubuntu anglais pour l'installation de [[http://ubuntuforums.org/archive/index.php/t-363915.html|clicspeak]] : et mettre à jour cette partie. Merci. | + | Si vous souhaitez ajouter la lecture en d'autres langues, modifiez la commande **f** par celle de la langue souhaitée. |
- | Vous pouvez également utiliser mathspeak pour la lecture de formule mathématique. | + | ====Synthèse vocale dans LibreOffice ou Apache Openoffice ==== |
- | ===== Intégration dans l'environnement de bureau ===== | + | Il suffit d'installer l'extension [[http://extensions.libreoffice.org/extension-center/read-text|readtext]] ou [[https://extensions.openoffice.org/fr/node/17608|PicoSvoxOOo]] pour Apache Openoffice. Il fonctionne avec [[:Svoxpico]] mais est compatible avec Festival et Espeak. |
+ | Une fois [[:libreoffice#installer_une_extension|l'extension installée dans LibreOffice]], vous trouverez une icône dans votre barre d'outils en haut à gauche: | ||
- | Il est possible d'intégrer ces solutions dans votre environnement de bureau, afin de faire lire le contenu des dossiers ou des pages internet par exemple. | + | {{:accessibilite:readtext.png}} |
- | ==== Contrôler son bureau par la voix ==== | + | Pour l'utiliser, sélectionner le texte à lire, cliquez sur l'icône (la bulle noire), une fenêtre s'ouvre, cliquez sur **OK**. |
- | * [[apt://gnome-voice-control|pour gnome]] | + | ====Synthèse vocale dans Firefox ==== |
- | * sphinx2-bin | + | Avec [[:Svoxpico]] l'ajout d'une extension est inutile, **Pico** faisant déjà le travail de lecture.\\ |
- | ==== Pour Gnome - avec des scripts (utilisateur avancé)==== | + | Cependant sachez qu'il existe différents modules qui permettent la synthèse vocale des pages consultées : |
+ | * [[https://addons.cdn.mozilla.net/user-media/addons/9759/foxvox-1.7.9.1-fx-linux.xpi?filehash=sha256%3Acd1ca1aeefa654065390af9b680d00d375d43a4bdc871b9ea719565af20dc8bd|foxvox]] | ||
+ | * [[https://addons.cdn.mozilla.net/user-media/addons/91405/text_to_voice-1.15-fx.xpi?filehash=sha256%3A26dd98884c6cc97dff5c665ac5dc77914530b5ce2dff0aef3b0fef310a9e9f5d|Text to voice]] | ||
- | Voici quelques exemples d'intégration pour l'environnement Gnome. | + | Depuis la version 49, le mode Lecture s'agrémente de la parole intégrée dans le navigateur et s'appuyant sur la distribution, etc : Détails sur [[https://blog.mozfr.org/post/2016/09/Mozilla-Firefox-49|le Blog de MozFr]] ; |
- | <note tip>Pensez à adapter la configuration du script à votre convenance</note> | + | |
- | === Lire le texte sélectionné à l'écran === | + | Vous pouvez également utiliser Mathspeak pour la lecture de formule mathématique.\\ |
+ | Faites une recherche dans les modules complémentaires pour voir les différents choix possibles. | ||
- | <note important>L'utilisation du premier script décrit ci-dessous nécessite l'activation de Compiz. | + | ====Synthèse vocale dans Chromium ==== |
- | Vous pouvez néanmoins utiliser comme alternative un lanceur intégré au tableau de bord.</note> | + | Avec [[:Svoxpico]] l'ajout d'une extension est inutile, **Pico** faisant déjà le travail de lecture.\\ |
+ | Cependant sachez qu'il existe différentes extensions qui permettent la synthèse vocale des pages consultées : | ||
+ | Installez l'extension [[https://chrome.google.com/webstore/detail/speak-text/dchmahpmnpogmfofejmdndonfljkjhdm?hl=fr|SpeakIt]] ou claroRead Chrome. | ||
- | Pour faire marcher ce script, enregistrez-le où vous voulez et rendez-le exécutable. Il faut [[:tutoriel:comment_installer_un_paquet|installez le paquet]] xclip. | + | Faites une recherche dans les extensions Chrome pour voir les différents choix possibles. |
- | Ensuite, il faut aller dans les préférences générales de Compiz (Menu S//ystème → Préférences → Advanced Desktop Effects Settings → General Option//). Sous l'onglet « Commands », choisissez une ligne vide et rentrez-y le chemin vers votre script, sous la forme « /chemin/vers/le/script/nom_du_script ». | + | ===== Intégration dans l'environnement de bureau ===== |
- | Ensuite, sous l'onglet « Actions » et la sous-partie « Commands », éditez le raccourci correspondant à la ligne où vous avez rentré le script (personnellement, j'utilise Ctrl--D en raccourci clavier, mais c'est vous qui voyez). | + | |
- | L'utilisation est simple, vous sélectionnez du texte à l'écran, puis vous tapez votre raccourci. Une seconde pression sur le raccourci pendant la lecture l'interrompt. | + | |
- | + | ||
- | <code bash>#!/bin/bash | + | |
- | + | ||
- | ######### Début de la section de configuration ######### | + | |
- | + | ||
- | # définition de la voix à utiliser par Mbrola, à adapter selon la voix choisie et son chemin | + | |
- | VOIX=/opt/fr2/fr2 | + | |
- | # TYPE=mb/mb-fr4 # à décommenter si vous avez téléchargé une voix de femme | + | |
- | # TYPE=mb/mb-fr1 # à décommenter si vous avez téléchargé une voix d'homme | + | |
- | + | ||
- | ######### Fin de la section de configuration ######### | + | |
- | + | ||
- | # on teste si la lecture est en cours, pour l'arrêter le cas échéant | + | |
- | if [ ! -z $(ps -A | grep mbrola | awk '{ print $1 }' ) ]; then | + | |
- | kill $(ps -A | grep mbrola | awk '{ print $1 }' ) | + | |
- | + | ||
- | else | + | |
- | # On traduit la sélection en phonèmes grâce à espeak, et on l'envoie à Mbrola | + | |
- | xclip -o | espeak -v $TYPE -s 150 -p 40 "$@" | mbrola $VOIX - -.au | aplay | + | |
- | fi</code> | + | |
- | Edit d'un autre utilisateur : Ou bien ci-dessous, une alternative avec un menu Zenity pour choisir la langue. Il faut bien sûr ne pas oublier de télécharger cette langue (us1 dans mon exemple) comme vous l'avez fait pour la langue fr4. | + | Il est possible d'intégrer ces solutions dans votre environnement de bureau, afin de faire lire le contenu des répertoires ou des pages internet par exemple. |
- | J'ai aussi changé la boucle "if-else" pour un meilleur fonctionnement si Mbrola est déjà en cours. | + | ==== Sous Unity et Gnome==== |
+ | Par défaut sous [[:Unity]] et [[:Gnome]] en général, [[:Orca]] permet de lire le contenu affiché à l'écran. | ||
+ | Ce qui suit sont des alternatives, à travers des scripts à intégrer à l'environnement Gnome. Pensez à adapter la configuration du script à votre convenance. Les scripts qui suivent doivent être intégrés à [[:nautilus_scripts|nautilus-scripts]] pour leur utilisation. | ||
+ | FIXME Comment les arrêter? Refaire cette opération pendant la lecture en cours interrompra la lecture. | ||
+ | * Lire le texte sélectionné à l'écran : | ||
+ | FIXME Semble ne pas fonctionner ? | ||
+ | Pour utiliser ce script, il faut [[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>xclip]]**, puis l'enregistrez selon les indications de cette [[:nautilus_scripts|page]] en lui donnant le nom ''LecteurdeSelection.sh'': | ||
- | <code bash>#!/bin/bash | + | <file bash ~/.local/share/nautilus/scripts/LecteurdeSelection.sh>#!/bin/bash |
##### Affiche le menu Zenity ##### | ##### Affiche le menu Zenity ##### | ||
Ligne 132: | Ligne 167: | ||
2 anglais ` | 2 anglais ` | ||
- | ##### Sélection automatique de la langue choisie dans le menu Zenity ##### | + | ##### Sélection automatique de la langue choisie dans le menu Zenity ##### |
case $choix in | case $choix in | ||
- | 1 ) VOIX=/opt/fr2/fr2 && TYPE=mb/mb-fr4 ;; # pour une voix de femme en français | + | 1 ) VOIX=/usr/share/mbrola/fr4/fr4 && TYPE=mb/mb-fr4 ;; # pour une voix de femme en français |
- | 2 ) VOIX=/opt/us1/us1 && TYPE=mb/mb-us1 ;; # pour une voix de femme en anglais | + | 2 ) VOIX=/usr/share/mbrola/us1/us1 && TYPE=mb/mb-us1 ;; # pour une voix de femme en anglais |
esac | esac | ||
Ligne 147: | Ligne 182: | ||
xclip -o | espeak -v $TYPE -s 150 -p 40 "$@" | mbrola $VOIX - -.au | aplay | xclip -o | espeak -v $TYPE -s 150 -p 40 "$@" | mbrola $VOIX - -.au | aplay | ||
- | </code> | + | </file> |
- | === Lire le contenu d'un fichier texte === | + | * Lire le contenu d'un fichier texte : Pour lire le contenu d'un fichier, enregistrez ce qui suit selon les indications de cette [[:nautilus_scripts|page]] en lui donnant le nom ''Readfile.sh'': |
- | Placez ce script dans « /home/VOTRE_LOGIN/.gnome2/nautilus-scripts/ » et le rendre exécutable. Il permet, par un clic droit sur un fichier, menu //Scripts → nom_de_votre_script//, de lire le contenu de ce fichier. Refaire cette opération pendant la lecture en cours interrompra la lecture. | + | <file bash ~/.local/share/nautilus/scripts/Readfile.sh>#!/bin/bash |
- | + | ||
- | <code bash>#!/bin/bash | + | |
######### Début de la section de configuration ######### | ######### Début de la section de configuration ######### | ||
# définition de la voix à utiliser par Mbrola, à adapter selon la voix choisie et son chemin : | # définition de la voix à utiliser par Mbrola, à adapter selon la voix choisie et son chemin : | ||
- | VOIX=/opt/fr2/fr2 | + | VOIX=/usr/share/mbrola/fr4/fr4 |
+ | #VOIX=/usr/share/mbrola/fr1/fr1 # à décommenter si vous vous voulez une voix d'homme | ||
TYPE=mb/mb-fr4 | TYPE=mb/mb-fr4 | ||
- | # TYPE=mb/mb-fr1 # à décommenter si vous avez téléchargé une voix d'homme | + | # TYPE=mb/mb-fr1 # à décommenter si vous vous voulez une voix d'homme |
######### Fin de la section de configuration ######### | ######### Fin de la section de configuration ######### | ||
Ligne 171: | Ligne 205: | ||
# On traduit le fichier en phonèmes grâce à espeak, et on l'envoie à Mbrola | # On traduit le fichier en phonèmes grâce à espeak, et on l'envoie à Mbrola | ||
espeak -v $TYPE -s 150 -f "$@" | mbrola $VOIX - -.au | aplay | espeak -v $TYPE -s 150 -f "$@" | mbrola $VOIX - -.au | aplay | ||
- | fi</code> | + | fi</file> |
- | === Lire la liste des éléments contenus dans un dossier === | + | * Lire la liste des éléments contenus dans un dossier : Pour lire le contenu d'un fichier, enregistrez ce qui suit selon les indications de cette [[:nautilus_scripts|page]] en lui donnant le nom ''ReadFolder.sh'': |
- | Placez ce script dans /home/VOTRE_LOGIN/.gnome2/nautilus-scripts/ et le rendre exécutable. Il permet par un clic droit sur un dossier, menu scripts / nom_de_votre_script de lire le contenu de ce dossier. Refaire cette opération pendant la lecture en cours interrompra la lecture. | + | <file bash ~/.local/share/nautilus/scripts/ReadFolder.sh>#!/bin/bash |
- | + | ||
- | <code bash>#!/bin/bash | + | |
######### Début de la section de configuration ######### | ######### Début de la section de configuration ######### | ||
# définition de la voix à utiliser par Mbrola, à adapter selon la voix choisie et son chemin | # définition de la voix à utiliser par Mbrola, à adapter selon la voix choisie et son chemin | ||
- | VOIX=/opt/fr2/fr2 | + | VOIX=/usr/share/mbrola/fr4/fr4 |
- | # TYPE=mb/mb-fr4 # à décommenter si vous avez téléchargé une voix de femme | + | TYPE=mb/mb-fr4 # si vous avez téléchargé une voix de femme |
- | # TYPE=mb/mb-fr1 # à décommenter si vous avez téléchargé une voix d'homme | + | # TYPE=mb/mb-fr1 # à décommenter si vous vous voulez une voix d'homme |
######### Fin de la section de configuration ######### | ######### Fin de la section de configuration ######### | ||
Ligne 204: | Ligne 236: | ||
done | done | ||
- | fi</code> | + | fi</file> |
- | === Lire le contenu du presse papier ou de la sélection à l'aide d'un racourci clavier === | + | * Lire le contenu du presse papier ou de la sélection à l'aide d'un raccourci clavier : FIXME ne semble pas fonctionner? |
- | == Version améliorée, sans besoin de compiz == | + | * [[:tutoriel:comment_installer_un_paquet|installez les paquets]] **[[apt>xclip,recode,xbindkeys|xclip recode xbindkeys]]**. |
- | + | * Enregistrez le script [[http://forum.ubuntu-fr.org/viewtopic.php?pid=3686193#p3686193|suivant]], toujours avec [[:Nautilus_scripts|Nautilus-scripts]] | |
- | Au préalable, installez les paquets suivants : | + | |
- | [[apt://xclip]],[[apt://recode]] et [[apt://xbindkeys]] | + | |
- | + | ||
- | Ensuite | + | |
- | [[#Installation du script diphorect]] <=cliquez ici, ou voir plus haut | + | |
- | + | ||
- | Une fois ces paquets et le script installé, faites : | + | |
- | gedit "$HOME/.gnome2/nautilus-scripts/Lit le presse papier par synthèse vocale" | + | |
- | Copiez-y le script suivant : | + | |
- | <code bash> | + | |
- | #!/bin/bash | + | |
- | # lecteur vocale de presse papier v1.0 Mysteroïd 18/11/2008 | + | |
- | # ! Nécessite les paquets "xclip" et "recode" et le script diphorect ! | + | |
- | + | ||
- | + | ||
- | # Définition de la voix à utiliser par Mbrola, à adapter selon la voix choisie et son chemin | + | |
- | + | ||
- | # voix d'homme | + | |
- | VOIX=/opt/fr1/fr1 | + | |
- | TYPE=mb/mb-fr1 | + | |
- | + | ||
- | # Décommentez pour une voix de femme | + | |
- | #VOIX=/opt/fr2/fr2 | + | |
- | #TYPE=mb/mb-fr4 | + | |
- | + | ||
- | + | ||
- | # Contenu du presse-papier, sans " et ''recodé'' de JAVA vers utf-8 | + | |
- | CLIP=`xclip -o -select p | recode java..u8 | tr -d '"'` # contenu primaire simplement sélectionné | + | |
- | if [ -z "$CLIP" ] ; then | + | |
- | CLIP=`xclip -o -select c | recode java..u8 | tr -d '"'` # ou secondaire (=copié) si aucune sélection active | + | |
- | fi | + | |
- | + | ||
- | zenity --info --title="Info lecture par synthèse vocale " --text="La lecture du presse-papier va débuter (ou s'arrêter si elle est en cours)" | + | |
- | + | ||
- | # on teste si la lecture est en cours, pour l'arrêter le cas échéant | + | |
- | if [ -n "$(ps -A | grep mbrola)" ] ; then | + | |
- | killall -g mbrola | + | |
- | else | + | |
- | # On traduit le fichier en phonèmes grâce à Espeak | + | |
- | espeak -v ${TYPE} "${CLIP}" >$HOME/temp.pho | + | |
- | # On corrige les phonèmes non valides et on envoie à Mbrola | + | |
- | diphorect $HOME/temp.pho | mbrola ${VOIX} - -.au | aplay | + | |
- | rm $HOME/temp.pho | + | |
- | fi | + | |
- | + | ||
- | exit 0 | + | |
- | </code> | + | |
- | + | ||
- | Sauvegardez et rendez le script exécutable par un : | + | |
- | sudo chmod +X "$HOME/.gnome2/nautilus-scripts/Lit le presse papier par synthèse vocale" | + | |
À partir de là vous pouvez faire lire votre sélection de texte ou le contenu du presse-papier (texte copié par [Ctrl+C] par exemple) en cliquant avec le bouton droit sur le bureau ou une fenêtre nautilus et en choisissant "scripts / lit le contenu..." | À partir de là vous pouvez faire lire votre sélection de texte ou le contenu du presse-papier (texte copié par [Ctrl+C] par exemple) en cliquant avec le bouton droit sur le bureau ou une fenêtre nautilus et en choisissant "scripts / lit le contenu..." | ||
- | Pour définir un raccourci clavier regardez la section xbindkeys de la page [[//tutoriel/comment_creer_raccourcis_clavier]] | + | Pour définir un raccourci clavier reportez-vous à la page [[:xbindkeys]]. |
- | Pour utiliser par exemple [ctrl+F12] pour démarrer arrêter la lecture, utilisez : | + | |
- | <code>"$HOME'/.gnome2/nautilus-scripts/Lit le presse papier par synthèse vocale'" | + | |
- | Control+Mod2 + F12</code> dans le fichier de configuration de xbindkeys. | + | |
- | Et voilà, en principe tout marche ! | + | Voici une liste de fil traitant de divers scripts comportant tous une synthèse vocale : |
- | Que ce soit pour me le faire savoir ou parce qu'au contraire vous avez un problème... N'hésitez pas à m'envoyer un message par ici : [[utilisateurs/mysteroid]]. | + | * [[https://forum.ubuntu-fr.org/viewtopic.php?id=413946|Script de diction de l'heure]] |
+ | * [[https://forum.ubuntu-fr.org/viewtopic.php?id=413943|Script de diction du pourcentage de batterie restant]] | ||
+ | * [[https://forum.ubuntu-fr.org/viewtopic.php?id=413944|Réglage du volume avec assistance vocale]] | ||
+ | * [[https://forum.ubuntu-fr.org/viewtopic.php?id=413945|Consultation de la boite Gmail]] | ||
+ | * [[https://forum.ubuntu-fr.org/viewtopic.php?id=413950|Aide à la navigation Nautilus]] | ||
+ | ==== Sous KDE ==== | ||
- | === Réglage du volume avec assistance vocale === | + | Grâce à **kttsd** KDE offre une manière élégante et simple de lire du texte affiché à l'écran mais par défaut il utilise [[#Festival]], il n'y a donc pas de français, c'est pourquoi il faudra aussi installer **[[:eSpeak]]**. |
- | Commencez par copier le script suivant dans un nouveau document, puis rendez le exécutable. | + | Pour le mettre en place il suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>espeak]]** et **[[apt>kttsd]]** qui contient: |
+ | * le démon kttsd, | ||
+ | * Jovie, une application permettant de lire un document copié ou que l'on tape. | ||
+ | * La synthèse vocale sera également intégrée dans [[:Konqueror]] et dans [[:Kate]]. | ||
- | <code bash> | + | Pour configurer la synthèse vocale: |
+ | * Faites un clic droit sur l'icône dans le tableau de bord sur l'icône Jovie, //Configurer Jovie//, dans l'onglet //Locuteurs// entrez un nom, choisissez le locuteur français cliquez sur Ajouter, | ||
+ | * Pour lire du texte sélectionner du texte et cliquer sur l'icône Jovie ou clic droit, //Lire le contenue du presse-papier//.\\ | ||
+ | * Lorsque vous utilisez le navigateur [[:Konqueror]] de KDE, vous pouvez entendre le texte de la page web affichée. Pour ce faire, assurez-vous que Jovie est lancé. Sélectionnez le texte que vous voulez entendre et choisissez //Outils → Prononcer le texte// dans le menu principal. Après un moment, le texte sélectionné devrait être prononcé. | ||
+ | * Pour prononcer du texte depuis l'éditeur de texte [[:Kate]], assurez-vous que Jovie est lancé et activez l'extension **Synthèse vocale Jovie** de KTextEditor dans la fenêtre de configuration de Kate. Sélectionnez le texte que vous voulez entendre puis choisissez //Outils → Énoncer le texte//. Après un moment, le texte sélectionné devrait être prononcé.\\ | ||
+ | Il n'est pas indispensable de sélectionner du texte. Si vous ne le faites pas, tout le fichier sera prononcé. | ||
- | # Auteur : benoitfra | ||
- | # Contributeur : draco31 | ||
- | # Version : 1.1 | ||
- | # Licence : GPL v3 | ||
- | # Fonction : Réglage du volume avec assistance vocale | ||
- | # Shell : bash | ||
- | # Paramètres : aucun | ||
- | # Dépendance : espeak, mbrola, amixer, zenity, notify-send | ||
- | #!/bin/bash | ||
- | |||
- | ###### définition de la voix à utiliser ###### | ||
- | VOIX=/opt/mbrola/fr4/fr4 #pour une voix féminine | ||
- | #VOIX=/opt/mbrola/fr1/fr1 (décommenter pour une voix masculine) | ||
- | TYPE=mb/mb-fr4 | ||
- | #TYPE=mb/mb-fr (décommenter également) | ||
- | |||
- | ###### réglage volume initiale ###### | ||
- | VolIni=50 | ||
- | |||
- | ###### phase de configuration ###### | ||
- | espeak -v $TYPE -s 130 -p 30 "utiliser les touches gauche et droite pour régler le volume" | mbrola $VOIX - -.au | aplay & | ||
- | |||
- | choix=`zenity --scale --title="Réglage du volume" --value="$VolIni" --min-value="0" --max-value="100" --step="10"` | ||
- | |||
- | amixer -c 0 set PCM $choix% | ||
- | |||
- | |||
- | ###### signal l'opération effectuée par l'utilisateur###### | ||
- | if [ ! -z $(ps -A | grep mbrola | awk '{ print $1 }' ) ]; then | ||
- | kill $(ps -A | grep mbrola | awk '{ print $1 }' ) && sleep 2 | ||
- | fi | ||
- | |||
- | |||
- | espeak -v $TYPE -s 130 -p 30 "volume/réglé/à/$choix/%" | mbrola $VOIX - -.au | aplay & | ||
- | notify-send "volume réglé à $choix%" | ||
- | |||
- | exit | ||
- | </code> | ||
- | |||
- | Ensuite, libre à vous de lui attribuer un raccourci via le gestionnaire de configuration de Compiz. | ||
- | |||
- | === Diction de l'heure === | ||
- | |||
- | Tout d'abord, copiez et collez le script suivant dans un nouveau document et rendez le exécutable. | ||
- | |||
- | <code bash> | ||
- | # Auteur : benoitfra | ||
- | # Contact : | ||
- | # Version : 1.0 | ||
- | # Licence : GPL v3 | ||
- | # Fonction : Diction de l'heure | ||
- | # Shell : bash | ||
- | # Paramètres : aucun | ||
- | # Dépendance : espeak, mbrola, notify-send | ||
- | |||
- | #!/bin/bash | ||
- | |||
- | ##### configuration du format de sortie de la date ("man date" pour plus d'option) ######## | ||
- | HEURE=`date '+%H'` | ||
- | MINUTE=`date '+%M'` | ||
- | |||
- | ##### chiox du type de voix à utiliser ##### | ||
- | VOIX=/opt/mbrola/fr4/fr4 | ||
- | TYPE=mb/mb-fr4 | ||
- | #VOIX=/opt/mbrola/fr1/fr1 (décommenter pour une voix d'homme) | ||
- | #TYPE=mb/mb-fr1 | ||
- | |||
- | |||
- | ##### test pour savoir si la lecture est en route ##### | ||
- | if [ ! -z $(ps -A | grep mbrola | awk '{ print $1 }' ) ]; then | ||
- | kill $(ps -A | grep mbrola | awk '{ print $1 }' ) && sleep 2 | ||
- | fi | ||
- | |||
- | ##### diction de l'heure ##### | ||
- | espeak -v $TYPE -s 130 -p 30 "ilè/$HEURE/heure/et/$MINUTE/minute" | mbrola $VOIX - -.au | aplay & | ||
- | notify-send "il est $HEURE heure et $MINUTE minutes" | ||
- | </code> | ||
- | Ensuite, nous allons intégrer le script à votre bureau. | ||
- | Pour ce faire, rendez vous dans le gestionnaire de configuration de Compiz , puis Générale>Commandes. Choisissez une ligne vide et indiquez le chemin du script. Ensuite, allez à l'onglet "assignation des bords" et sélectionnez un coin de votre écran à associer au script. | ||
- | |||
- | === Diction du pourcentage de batterie restante === | ||
- | |||
- | Un peu du même genre que le script précédent, voici un script qui permet de lire le pourcentage de batterie restante. | ||
- | Pour l'installation, procédez de la même manière que pour le script de diction de l'heure ci-dessus. Terminez l'installation en associant le script à un autre coin de votre écran. | ||
- | |||
- | <code bash> | ||
- | # Auteur : benoitfra | ||
- | # Contact : | ||
- | # Version : 1.0 | ||
- | # Licence : GPL v3 | ||
- | # Fonction : Diction du pourcentage de batterie restant | ||
- | # Shell : bash | ||
- | # Paramètres : aucun | ||
- | # Dépendance : espeak, mbrola, acpi | ||
- | |||
- | #!/bin/bash | ||
- | ###### variable batterie ###### | ||
- | BAT=` acpi -b | grep "Battery 0" | awk '{ print $4}' ` | ||
- | |||
- | ###### sélection de la voix ###### | ||
- | VOIX=/opt/mbrola/fr4/fr4 | ||
- | TYPE=mb/mb-fr4 | ||
- | #VOIX=/opt/mbrola/fr1/fr1 (décommenter pour une voix d'homme) | ||
- | #TYPE=mb/mb-fr1 | ||
- | |||
- | ###### on vérifie qu'aucune lecture n'est en route auquel cas on la coupe ###### | ||
- | if [ ! -z $(ps -A | grep mbrola | awk '{ print $1 }' ) ]; then | ||
- | kill $(ps -A | grep mbrola | awk '{ print $1 }' ) && sleep 2 | ||
- | fi | ||
- | |||
- | |||
- | ###### lit pourcentage de batterie restant ###### | ||
- | espeak -v $TYPE -s 130 -p 30 "ilreste$BAT/debatterie" | mbrola $VOIX - -.au | aplay& | ||
- | notify-send "il vous reste $BAT de batterie" | ||
- | </code> | ||
- | |||
- | |||
- | Pour toutes remarques ou conseils, je vous invite à vous rendre sur le forum [[http://forum.ubuntu-fr.org/viewtopic.php?pid=3663208]] | ||
- | |||
- | | ||
- | |||
- | ==== Pour KDE ==== | ||
- | |||
- | KDE offre une manière élégante et simple ((comme toujours)) de lire du texte affiché à l'écran : KTTS . | ||
- | |||
- | Vous pouvez le mettre en place [[apt://kttsd,ksayit|en cliquant ici]], ou : | ||
- | <code>sudo apt-get install kttsd ksayit</code> | ||
- | |||
- | * kttsd est le démon. | ||
- | * KSayIt une application permettant de lire un document copié ou que l'on tape. | ||
- | * La synthèse vocale sera également intégrée dans Konqueror et dans Kate[3] | ||
- | |||
- | Commençons par créer un script qui enchaîne les différentes étapes, créer /opt/mbrola/tts et insérer :<code> | ||
- | #!/bin/sh | ||
- | echo $1 | iconv -f UTF-8 -t ISO_8859-1 > $2 | ||
- | /opt/mbrola/lliaphon/bin/lliaphon $2 > /tmp/log 2>&1 | ||
- | /opt/mbrola/mbrola -e -t 0.75 \ | ||
- | -I /opt/mbrola/lliaphon/share/lliaphon/initfile.lia \ | ||
- | /opt/mbrola/fr2/fr2 \ | ||
- | `echo $2|sed s/\.txt$/\.ola/` $3 >> /tmp/log 2>&1 | ||
- | |||
- | </code> | ||
- | Sans oublier de donner les droits d'éxecution : <code> chmod u+x /opt/mbrola/tts</code> | ||
- | |||
- | Pour configurer ktts, deux solutions : | ||
- | |||
- | * à partir de KSayIt : Settings/Configure KSayIt/Launch Control Center | ||
- | * en lançant kttsmgr à partir de la ligne de commande | ||
- | |||
- | Puis nous allons configurer kttsmgr pour qu'il utilise le couple lliaphon/mbrola : | ||
- | |||
- | * Talkers / Ajouter / Langue: autre / Synthesizer: Show all - commande | ||
- | |||
- | |||
- | * Choisir la langue dans la fenêtre qui apparaît | ||
- | * Entrez la commande : /opt/mbrola/tts %t %f %w | ||
- | |||
- | Et voila, relancez Konqueror et vous avez maintenant une option pour lire le texte sélectionné. | ||
- | ==== Programme console ==== | ||
- | * yasr | ||
- | * screader | ||
- | * eflite (emacspeak) | ||
- | |||
- | ==== Autres environnements ==== | ||
- | |||
- | FIXME | ||
- | ===== Les logiciels de synthèse vocale en détail ===== | ||
- | |||
- | |||
- | ==== Festival ==== | ||
- | |||
- | **[[http://www.cstr.ed.ac.uk/projects/festival/|Festival]]** est un synthétiseur vocal, pour lequel il n'existe apparemment pas de voix française directement pour l'instant ([[http://phantomsdad.blogspot.com/2005/06/ktts-and-french-connection.html|avis aux amateurs]]...). | ||
- | |||
- | Mais il existe un patch (ou un fork) pour festival afin d'avoir les voix françaises : [[http://www.culte.org/projets/biglux/install/lao/festival.shtml#InstallV|Franfest]]. | ||
- | |||
- | De même festival peut utiliser les voix française de mbrola - (et sapi). | ||
- | |||
- | Il peut fonctionner en mode interactif, même si ça n'a pas l'air très intuitif de prime abord... | ||
- | |||
- | Site officiel : http://www.cstr.ed.ac.uk/projects/festival/ | ||
- | |||
- | Installer [[apt://festival|festival]], et [[apt://festvox-rablpc16k|d'autres voix anglaises]]. ( voir également [[http://en.wikipedia.org/wiki/Festival_Speech_Synthesis_System#See_also|plus d'information relative sur wikipedia]] ) | ||
- | |||
- | Un exemple simple : | ||
- | echo "That's really a pity I'm not able to speak French" | festival --tts | ||
- | |||
- | Pour connaître les options : | ||
- | festival --help | ||
- | <note important>Si vous obtenez une erreur du type **can't open /dev/dsp**, réessayez après avoir fermé toutes les applications (y compris les pages internet nécessitant certains plugins) utilisant le son. | ||
- | </note> | ||
- | |||
- | <note tip>On peut éviter le **can't open /dev/dsp** en redirigeant le son vers ALSA. Pour cela, on demande à festival de sortir le son avec aplay. On créé un fichier de conf festival avec la commande : | ||
- | |||
- | <code>gedit ~/.festivalrc</code> | ||
- | |||
- | Puis, on y met: | ||
- | |||
- | <code> | ||
- | (Parameter.set 'Audio_Command "aplay -t wav -r $SR $FILE") | ||
- | (Parameter.set 'Audio_Method 'Audio_Command) | ||
- | (Parameter.set 'Audio_Required_Format 'wav) | ||
- | </code> | ||
- | </note> | ||
- | |||
- | |||
- | ==== Espeak ==== | ||
- | |||
- | **[[http://espeak.sourceforge.net/|Espeak]]** est disponible dans les dépôts Ubuntu. Rien de plus simple donc que son installation puisqu'il suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt://espeak|espeak]]**. | ||
- | |||
- | Site officiel : http://espeak.sourceforge.net/ | ||
- | |||
- | Il suffit ensuite de donner votre texte en pâture à Espeak, soit par l'intermédiaire d'un fichier texte : | ||
- | espeak -v fr -f texte.txt | ||
- | soit directement en ligne de commande : | ||
- | espeak -v fr "Votre texte à lire..." | ||
- | ou encore par un "[[:diagnostic#commande|pipe]]" sur la sortie standard : | ||
- | echo "Lis mon texte" | espeak -v fr | ||
- | |||
- | L'option **-v** définit la langue/voix à utiliser. D'autres options peuvent être utiles, comme l'option **-s** qui permet de définir le nombre de mots par minutes, ou **-p** qui règle la hauteur (grave/aigu) de la voix. Pour plus d'options : | ||
- | espeak --help | ||
- | |||
- | Malheureusement, le rendu d'Espeak n'est pas exceptionnel. Il est possible d'obtenir de meilleurs résultats, notamment en le combinant avec [[#MBROLA]]. | ||
- | |||
- | ==== MBROLA ==== | ||
- | |||
- | Le projet **[[http://tcts.fpms.ac.be/synthesis/mbrola.html|MBROLA]]** est développé à la faculté Polytechnique de Mons, et comporte un grand nombre de langages/voix. | ||
- | <note important>MBROLA [[http://eupat.ffii.org/pikta/xrani/mbrola/index.fr.html|n'est pas libre]].</note> | ||
- | |||
- | Site officiel : http://tcts.fpms.ac.be/synthesis/mbrola.html | ||
- | |||
- | Installer [[apt://mbrola|mbrola en cliquant ici]]. | ||
- | |||
- | Les voix françaises de [[http://tcts.fpms.ac.be/synthesis/mbrola/mbrcopybin.html|mbrola]] (non libre): | ||
- | * [[http://tcts.fpms.ac.be/synthesis/mbrola/dba/fr1/fr1-990204.zip|Voix Mbrola FR1]] : homme , Faculte Polytech. De Mons. | ||
- | * [[http://tcts.fpms.ac.be/synthesis/mbrola/dba/fr2/fr2-980806.zip|Voix Mbrola FR2]] : Femme , Celine Egea | ||
- | * [[http://tcts.fpms.ac.be/synthesis/mbrola/dba/fr3/fr3-990324.zip|Voix Mbrola FR3]] : homme , Babel Technology | ||
- | * [[http://tcts.fpms.ac.be/synthesis/mbrola/dba/fr4/fr4-990521.zip|Voix Mbrola FR4]] : femme , Babel Technology | ||
- | * [[http://tcts.fpms.ac.be/synthesis/mbrola/dba/fr5/fr5-991020.zip|Voix Mbrola FR5]] : homme, belge, Faculte Polytech. De Mons | ||
- | * [[http://tcts.fpms.ac.be/synthesis/mbrola/dba/fr6/fr6-010330.zip|Voix Mbrola FR6]] : homme , Faculte Polytech. De Mons | ||
- | * [[http://tcts.fpms.ac.be/synthesis/mbrola/dba/fr7/fr7-010330.zip|Voix Mbrola FR7]] : homme belge , Faculte Polytech. De Mons | ||
- | * [[http://tcts.fpms.ac.be/synthesis/mbrola/dba/ca1/ca1.zip|Voix québecois 1]] : homme , Vincent Arnaud | ||
- | * [[http://tcts.fpms.ac.be/synthesis/mbrola/dba/ca2/ca2.zip|Voix québecois 2]] : homme , Silex Creations Inc. | ||
- | |||
- | |||
- | MBROLA est également disponible sous forme de fichiers binaires téléchargeables [[http://tcts.fpms.ac.be/synthesis/mbrola/bin/pclinux/mbr301h.zip|ici]]((Il y a aussi des « .deb » [[http://tcts.fpms.ac.be/synthesis/mbrola/mbrcopybin.html|ici]] (troisième ligne linux), je sais pas ce qu'il y a dedans...)). On extrait le fichier qui correspond à son architecture (le plus souvent i386) dans un répertoire au choix, par exemple « /opt ». Il peut ensuite être utile de créer un lien vers ce fichier dans un dossier plus accessible, par exemple : | ||
- | |||
- | sudo ln -s /opt/mbrola-linux-i386 /usr/bin/mbrola | ||
- | |||
- | On télécharge également [[http://tcts.fpms.ac.be/synthesis/mbrola/mbrcopybin.html|une voix]] (deuxième partie de la page), qu'on dézippe aussi et qu'on place par exemple également dans « /opt ». | ||
- | |||
- | Avec [[#espeak]] préalablement installé, on peut traduire un texte en phonèmes, en passant à l'option **-v** les arguments **mb/mb-fr1** (voix masculine) ou **mb/mb-fr4** (voix féminine). Ici on va rediriger (commande '**>**') ces phonèmes (qui autrement s'affichent à l'écran) vers un fichier : | ||
- | |||
- | espeak -x -v mb/mb-fr4 -f votre_fichier_texte > texte.pho | ||
- | |||
- | ---- | ||
- | <note help>Le paragraphe ci-dessous ne semble pas valide pour les dernières versions, dans Hardy par exemple tout le nécessaire est déjà installé avec espeak... faites un <code>ls /usr/share/espeak-data/voices/mb</code> pour vérifier l'existence des fichiers nécessaires</note> | ||
- | Les fichiers de configuration d'Espeak pour Mbrola ne sont pas présents dans la version fournie dans les dépôts officiels d'Ubuntu. Pour pouvoir l'utiliser, il faut télécharger [[http://kent.dl.sourceforge.net/sourceforge/espeak/espeak-1.31-linux.zip|la version officielle d'espeak]]. Ensuite, dézippez le fichier puis copiez le dossier espeak-data/voices/mb dans le répertoire /usr/share/espeak-data/voices/. (Il vous faudra [[sudo|les droits superutilisateur]]). | ||
- | ---- | ||
- | |||
- | |||
- | Pour faire ensuite parler l'ordinateur, il suffit de lire les phonèmes avec MBROLA et de rediriger la sortie soit vers un lecteur audio : | ||
- | mbrola /opt/fr2/fr2 texte.pho -.au | aplay | ||
- | ou pour passer par pulseaudio | ||
- | mbrola /opt/fr2/fr2 texte.pho -.au | paplay | ||
- | soit vers un fichier wav : | ||
- | mbrola /opt/fr2/fr2 texte.pho texte.wav | ||
- | |||
- | À la place d'utiliser un fichier contenant des phonèmes, on peut aussi directement envoyer à Mbrola la sortie standard : | ||
- | espeak -v mb/mb-fr4 -f votre_fichier_texte | mbrola /opt/fr2/fr2 - -.au | aplay | ||
- | |||
- | ou | ||
- | |||
- | espeak -v mb/mb-fr4 'votre texte ici' | mbrola /opt/fr2/fr2 - -.au | aplay | ||
- | |||
- | <note important>La commande **mbrola** ne fonctionnera que si vous avez mis un lien vers /usr/bin/mbrola. Si ce n'est pas le cas, remplacez **mbrola** par le chemin vers mbrola-linux-i386, par exemple.</note> | ||
- | <note important>Normalement, les fichiers binaires sont exécutables. Si vous avez un message vous affirmant que vous n'avez pas les droits suffisants, essayez tout de même :<code>chmod +x mbrola-linux-i386</code></note> | ||
- | |||
- | Pour plus d'information sur les options disponibles : | ||
- | mbrola -help | ||
- | |||
- | ---- | ||
- | |||
- | <note warning>Il semble que l'expression "on a" génère un phonème "n2" illisible par Mbrola. Pour contourner ce problème si vous l'avez également, voir ci-dessous</note> | ||
- | <note help>Ou tout simplement ajouter <code>mbrola -e -C "n n2" /opt/fr2/fr2 - -.au</code> | ||
- | -e = IGNORE fatal errors on unkown diphone | ||
- | -C CL = Phoneme CLONE list of the form a A b B ...</note> | ||
- | |||
- | 1- Il vous faudra dans ce cas procéder en 2 étapes, créez un fichier des phonèmes de votre texte à lire par : | ||
- | espeak -v mb/mb-fr1 -f "votre_fichier_texte" > texte.pho | ||
- | ou | ||
- | espeak -v mb/mb-fr1 "votre texte à lire ici..." > texte.pho | ||
- | |||
- | 2- Envoi des phonèmes (corrigés au passage) vers Mbrola puis aplay pour lecture. | ||
- | diphorect.sh "texte.pho" | mbrola /opt/fr1/fr1 - -.au | aplay | ||
- | <note help>Il vous faudra au préalable installer le script "diphorect" sur votre ordinateur comme indiqué ci-dessous</note> | ||
- | |||
- | ===Installation du script diphorect=== | ||
- | ==script de conversion du phonème problématique "n2"== | ||
- | |||
- | Tappez : | ||
- | sudo gedit /usr/bin/diphorect.sh | ||
- | |||
- | Copiez et collez le script indiqué ci-dessous : | ||
- | <code bash> | ||
- | #!/bin/bash | ||
- | # diphorect.sh v0.1.2, par Mysteroïd le 03/01/2009 | ||
- | # à rendre exécutable et à placer dans /usr/bin/ ou créer un lien par ln -s <chemin/diphorect.sh> /usr/bin/diphorect.sh | ||
- | |||
- | # Remplace le phonème n2 par n dans le fichier passé en argument et renvoi le contenu corrigé sur la sortie standard | ||
- | |||
- | checkphonem(){ | ||
- | if [ "${1:0:2}" = "n2" ] | ||
- | then | ||
- | NEWLINE=`echo "n ${1:2}"` | ||
- | else | ||
- | if [ "${1:0:2}" = "z3" ] | ||
- | then | ||
- | NEWLINE=`echo "s ${1:2}"` | ||
- | else | ||
- | NEWLINE="$*" | ||
- | fi | ||
- | fi | ||
- | } | ||
- | |||
- | echo -n $NEWLINE >"$1.new" | ||
- | IFS="" | ||
- | |||
- | while read LINE | ||
- | do | ||
- | ((LINENBR = LINENBR + 1)) | ||
- | checkphonem $LINE | ||
- | echo $NEWLINE >>"$1.new" | ||
- | done <"$1" | ||
- | |||
- | cat "$1.new" | ||
- | rm "$1.new" | ||
- | |||
- | exit 0 | ||
- | </code> | ||
- | |||
- | Ensuite fermez Gedit et rendez le script exécutable par : | ||
- | sudo chmod +X /usr/bin/diphorect.sh | ||
- | |||
- | Et voilà, vous êtes prêt ! ;-) | ||
===== Voir aussi ===== | ===== Voir aussi ===== | ||
Ligne 628: | Ligne 276: | ||
Pages officielles de ces projets, et d'autres : | Pages officielles de ces projets, et d'autres : | ||
+ | * **[[http://espeak.sourceforge.net/|Site officiel d'Espeak]]**. | ||
* [[http://tcts.fpms.ac.be/synthesis/mbrola.html|mbrola]] (en) | * [[http://tcts.fpms.ac.be/synthesis/mbrola.html|mbrola]] (en) | ||
- | * [[http://www.cstr.ed.ac.uk/projects/festival/|festival]] (en) / [[http://www.speech.cs.cmu.edu/flite/|flite]] (en) / [[http://festvox.org|Festvox]] (en) | + | * [[https://www.cstr.ed.ac.uk/projects/festival/|festival]] (en) / [[http://www.speech.cs.cmu.edu/flite/|flite]] (en) / [[http://festvox.org|Festvox]] (en) |
- | * [[https://gna.org/projects/lliaphon/|LLiaPhon]] : Transforme un texte en description phonetic ( a utiliser avec un autre logiciel ). Conçut pour le français. | + | * [[https://gna.org/projects/lliaphon/|LLiaPhon]] : Transforme un texte en description phonetic (à utiliser avec un autre logiciel). Conçu pour le français. |
* [[http://pages.videotron.com/fluxnic/cicero/|Cicero TTS]] | * [[http://pages.videotron.com/fluxnic/cicero/|Cicero TTS]] | ||
* [[http://epos.ure.cas.cz|epos]] (en) (Tchèque et Slovaque) | * [[http://epos.ure.cas.cz|epos]] (en) (Tchèque et Slovaque) | ||
* [[http://freetts.sourceforge.net/docs/index.php|FreeTTS]] (en-us) (en java) | * [[http://freetts.sourceforge.net/docs/index.php|FreeTTS]] (en-us) (en java) | ||
- | * [[http://forum.ubuntu-fr.org/viewtopic.php?id=128037|xclip-speech, synthèse vocale]] | + | * [[https://forum.ubuntu-fr.org/viewtopic.php?id=128037|xclip-speech, synthèse vocale]] |
* [[http://bothari.free.fr/weblog/post/Ubuntu-Text-to-Speech-%28TTS%29|Synthèse vocale en python (espeak + mbrola + speechdispatcher et son wrapper python)]] | * [[http://bothari.free.fr/weblog/post/Ubuntu-Text-to-Speech-%28TTS%29|Synthèse vocale en python (espeak + mbrola + speechdispatcher et son wrapper python)]] | ||
Ligne 644: | Ligne 293: | ||
* [[http://wiki.eagle-usb.org/wakka.php?wiki=SyntheseParole|Wiki eagle usb]] | * [[http://wiki.eagle-usb.org/wakka.php?wiki=SyntheseParole|Wiki eagle usb]] | ||
- | ==== Tutoriaux ==== | + | ==== Tutoriels ==== |
* [[http://blinuxman.net/edu/fr/EduVocale.txt|La fiche EDU pour une solution vocale en Français sous la console GNU/Linux]] | * [[http://blinuxman.net/edu/fr/EduVocale.txt|La fiche EDU pour une solution vocale en Français sous la console GNU/Linux]] | ||
* [[http://kubuntu.free.fr/blog/index.php/2006/09/24/121-synthese-vocale-en-francais-sous-linux|Synthèse vocale en français sous Linux]] (plutot kde ) | * [[http://kubuntu.free.fr/blog/index.php/2006/09/24/121-synthese-vocale-en-francais-sous-linux|Synthèse vocale en français sous Linux]] (plutot kde ) | ||
- | |||
- | |||
* [[http://bothari.free.fr/weblog/post/Ubuntu-Text-to-Speech-%28TTS%29|(fr)Ubuntu Text-to-Speech (TTS)]] | * [[http://bothari.free.fr/weblog/post/Ubuntu-Text-to-Speech-%28TTS%29|(fr)Ubuntu Text-to-Speech (TTS)]] | ||
- | * [[http://ftp.traduc.org/doc-vf/gazette-linux/html/2005/114/lg114-D.html|Faites parler votre shell avec Festival]] | + | * [[https://ftp.traduc.org/doc-vf/gazette-linux/html/2005/114/lg114-D.html|Faites parler votre shell avec Festival]] |
====Ressources : des voix ==== | ====Ressources : des voix ==== | ||
* Il existe la voix française [[http://rs211.rapidshare.com/files/108331417/Virginie.exe|virginie de microsoft(sapi) : gratuit mais non libre]]. ([[http://sharebee.com/789d0c18|lien miroir]] ) | * Il existe la voix française [[http://rs211.rapidshare.com/files/108331417/Virginie.exe|virginie de microsoft(sapi) : gratuit mais non libre]]. ([[http://sharebee.com/789d0c18|lien miroir]] ) | ||
- | * [[http://activex.microsoft.com/activex/controls/agent2/lhttsfrf.exe|Lernout & Hauspie TruVoice TTS engine (voix gratuite française)]] | + | * Lernout & Hauspie TruVoice TTS engine (voix gratuite française) : http://activex.microsoft.com/activex/controls/agent2/lhttsfrf.exe |
- | * [[http://www.cross-plus-a.com/balabolka_fr.htm|Trouver d'autres voix sapi sur ce site]]. | + | * Trouver d'autres voix sapi sur ce site : http://www.cross-plus-a.com/fr/balabolka.htm (Anciennement: http://www.cross-plus-a.com/balabolka_fr.htm) |
+ | * Des voix sur sayz me : http://www.datafurnace.net.au/sayzme/html/voices.html | ||
- | * Des voix sur [[http://www.datafurnace.net.au/sayzme/html/voices.html|sayz me]]. | + | ===== Pages en rapport ===== |
+ | [[:reconnaissance_vocale|Reconnaissance vocale]] (Opération inverse) | ||
- | Les voix françaises de [[http://tcts.fpms.ac.be/synthesis/mbrola/mbrcopybin.html|mbrola]] (non libre): | ||
- | * [[http://tcts.fpms.ac.be/synthesis/mbrola/dba/fr1/fr1-990204.zip|Voix Mbrola FR1]] : homme , Faculte Polytech. De Mons. | ||
- | * [[http://tcts.fpms.ac.be/synthesis/mbrola/dba/fr2/fr2-980806.zip|Voix Mbrola FR2]] : Femme , Celine Egea | ||
- | * [[http://tcts.fpms.ac.be/synthesis/mbrola/dba/fr3/fr3-990324.zip|Voix Mbrola FR3]] : homme , Babel Technology | ||
- | * [[http://tcts.fpms.ac.be/synthesis/mbrola/dba/fr4/fr4-990521.zip|Voix Mbrola FR4]] : femme , Babel Technology | ||
- | * [[http://tcts.fpms.ac.be/synthesis/mbrola/dba/fr5/fr5-991020.zip|Voix Mbrola FR5]] : homme, belge, Faculte Polytech. De Mons | ||
- | * [[http://tcts.fpms.ac.be/synthesis/mbrola/dba/fr6/fr6-010330.zip|Voix Mbrola FR6]] : homme , Faculte Polytech. De Mons | ||
- | * [[http://tcts.fpms.ac.be/synthesis/mbrola/dba/fr7/fr7-010330.zip|Voix Mbrola FR7]] : homme belge , Faculte Polytech. De Mons | ||
- | * [[http://tcts.fpms.ac.be/synthesis/mbrola/dba/ca1/ca1.zip|Voix québecois 1]] : homme , Vincent Arnaud | ||
- | * [[http://tcts.fpms.ac.be/synthesis/mbrola/dba/ca2/ca2.zip|Voix québecois 2]] : homme , Silex Creations Inc. | ||
- | |||
- | ===== Pages en rapport ===== | ||
- | [[reconnaissance_vocale|Reconnaissance vocale]] (Opération inverse) | ||
{{topic>synthèse_vocale}} | {{topic>synthèse_vocale}} | ||
Ligne 680: | Ligne 316: | ||
- | //Contributeurs : Page initiale collaborative par [[http://forum.ubuntu-fr.org/profile.php?id=7326|Skippy le Grand Gourou]], [[utilisateurs/herberts]], [[http://forum.ubuntu-fr.org/profile.php?id=7540|Balkoth]] et [[http://forum.ubuntu-fr.org/profile.php?id=41914|Dud]], à partir du sujet http://forum.ubuntu-fr.org/viewtopic.php?pid=1469124. Corrections et compléments par [[utilisateurs/Mysteroïd]], [[:utilisateurs:psychederic|Psychederic]] : refonte pour la simplicité d'abord, et ajout de compléments.// | + | //Contributeurs : Page initiale par [[http://forum.ubuntu-fr.org/profile.php?id=7326|Skippy le Grand Gourou]], [[utilisateurs/herberts]], [[http://forum.ubuntu-fr.org/profile.php?id=7540|Balkoth]] et [[http://forum.ubuntu-fr.org/profile.php?id=41914|Dud]], à partir du sujet http://forum.ubuntu-fr.org/viewtopic.php?pid=1469124. Corrections et compléments par [[utilisateurs/Mysteroïd]], [[:utilisateurs:psychederic|Psychederic]] [[:utilisateurs:mohican|mohican]] : refonte pour la simplicité d'abord, et ajout de compléments.// |