PrimTux

La distribution éducative pour débutants et initiés.

Vous n'êtes pas identifié(e).

Annonce

CONSULTER LES MENTIONS LÉGALES RGPD.

CARTE DES MEMBRES POUVANT AIDER ET DES ÉCOLES SOUS PRIMTUX
Merci de vous y inscrire en nous envoyant un email si vous souhaitez y apparaître.

  • Pour être automatiquement informé des réponses à vos messages sur le forum, n'oubliez pas de cliquer sur "Suivre cette discussion" en bas de page. Mieux, en vous abonnant au flux RSS du forum, vous pourrez suivre tout nouveau message sur l'ensemble du forum.
  • En allant dans votre Profil, ligne "Vie privée", vous pouvez également cocher "Suivre automatiquement les sujets auxquels on a répondu.", vous n'aurez plus à cliquer sur "Suivre cette discussion" lorsque vous postez un message.
  • Abonnez-vous à la newsletter sur le site principal pour être informé des nouveaux paquets, nouvelles versions, bugs...

#1 06-01-2020 16:42:48

Philippe Dpt35
Administrateur
Lieu : Ille-et-Vilaine
Inscription : 28-10-2015
Messages : 3 227
Site Web

Clicmenu: j'écoute puis j'écris

J'ai entrepris l'adaptation de "J'écoute puis j'écris" du clicmenu.
L'application originale propose les exercices suivants:

  • Calcul mental

  • Homophones

  • Touches du clavier

  • Les accents

  • Mots invariables

  • Nombres en lettres

  • Tables d'addition

  • Tables de multiplication


Plusieurs de ces exercices ne m'apparaissent pas pertinents si l'on s'en tient à la particularité de l'application, à savoir faire principalement appel au sens auditif.

Par exemple, pour les homophones, l'application propose oralement un son, et demande de trouver quel homophone doit s'écrire dans la phrase qui est affichée.
Cela ne présente pas davantage d'intérêt que de le proposer dans un exercice de phrases à trou. Il serait plus judicieux de faire une application dédiée avec éventuellement la possibilité d'entendre le son de l'homophone à écrire.

Autre exemple, pour écrire les nombres en lettres. Outre l'écoute du nombre, l'écriture en chiffres de celui-ci est proposée. Cela ne présente pas plus d'intérêt que l'application "Ecrire en chiffres ou en lettres" déjà existante. Une dictée de nombres, à écrire en chiffres, serait à mon avis préférable.

Pour les accents ou les touches du clavier, disposer du son ne me semble pas non plus présenter d'intérêt.

Je pense donc reprendre l'application en ne proposant que des exercices pour lesquels l'aspect auditif est primordial et est complémentaires des applications existantes comme "Je lis puis j'écris" ou "Ecrire en chiffres ou en lettres", ou autres à créer, dans lesquelles on fait avant tout appel au sens visuel.

Je pense donc proposer des dictées

  • de mots (par exemple les échelons de l'échelle Dubois-Buyse actualisée),

  • de petites phrase modèles

  • de nombres à écrire en lettres

  • de mots invariables


Si vous avez d'autres idées, faites m'en part dès maintenant.
Je suis également preneur de petites phrases modèles.

Hors ligne

#2 04-03-2020 20:28:24

Philippe Dpt35
Administrateur
Lieu : Ille-et-Vilaine
Inscription : 28-10-2015
Messages : 3 227
Site Web

Re : Clicmenu: j'écoute puis j'écris

J"ai mis en ligne l'application adaptée encore en cours de développement : https://primtux.fr/applications/ecoute-ecris/

Tout n'est pas fonctionnel:
- on ne peut disposer que de l'échelle Dubois-Buyse actualisée
- on ne peut avoir de phrases exemples orales et écrites que jusqu'à l'échelon 13

Il y a un énorme travail d'élaboration des phrases exemples à poursuivre (des milliers !), aussi j'aimerais avoir des premiers retours avant de continuer après être assuré que cela convient.

J'utilise des sons enregistrés à partir d'une synthèse vocale sous Linux. Je précise que la solution adoptée est loin d'être parfaite, mais c'est la moins mauvaise que j'ai trouvée après avoir tenté à peu près toutes les solutions libres possibles en moteur de synthèse et en voix disponibles. Il me faut également la possibilité d'utiliser le moteur en ligne de commande de façon à automatiser les enregistrements.

J'ai retenu espeak avec une voix mbrola. D'autres solutions proposent des voix plus réalistes, mais posent le problème plus grave de prononciation incorrecte des mots (ex: "un sac" est prononcé "un sa" avec svoxpico).

J'attends donc vos retours.

Hors ligne

#3 04-03-2020 20:55:29

mothsart
Modérateur
Inscription : 31-10-2016
Messages : 1 204

Re : Clicmenu: j'écoute puis j'écris

Alors, retour rapide :
certaines voix sont incompréhensibles.

Vu que tu sauvegardes de toute façon le son (pas de lecture via svoxpico en live), pourquoi ne pas passer par des lecture un peu plus concluant tel que jaws ou google translate ?
sur svoxpico, on a la main dessus pour améliorer la prononciation de mots inconnus. (évol que j'avais commencé il y a bien 1 an et qui a été un peu oublié)
Si tu as une liste de mots qui sont mal lus, je suis preneur !


Toujours quelques réticenses sur les couleurs : pas de rouge pour une réponse positive.
Même constat pour la zone de résultat.

Hors ligne

#4 04-03-2020 21:13:09

Philippe Dpt35
Administrateur
Lieu : Ille-et-Vilaine
Inscription : 28-10-2015
Messages : 3 227
Site Web

Re : Clicmenu: j'écoute puis j'écris

mothsart a écrit :

Vu que tu sauvegardes de toute façon le son (pas de lecture via svoxpico en live), pourquoi ne pas passer par des lecture un peu plus concluant tel que jaws ou google translate ?

Parce que, comme je l'écrivais, il est impossible de faire des enregistrements individuels de milliers de mots et de phrases. Il me faut absolument une solution en ligne de commande qui me permette de réaliser un script pour automatiser l'opération.

Hors ligne

#5 04-03-2020 21:52:50

Philippe Dpt35
Administrateur
Lieu : Ille-et-Vilaine
Inscription : 28-10-2015
Messages : 3 227
Site Web

Re : Clicmenu: j'écoute puis j'écris

mothsart a écrit :

certaines voix sont incompréhensibles.

D'où la possibilité d'écouter d'une phrase exemple utilisant le mot pour lever toute ambiguïté

sur svoxpico, on a la main dessus pour améliorer la prononciation de mots inconnus.

Là ça m"intéresse, car c'est une voix de qualité. Il resterait à régler la prononciation de certains mots monosyllabiques avec une consonne finale prononcée, tels que "un sac'. Tu peux m'en dire plus sur la façon de paramétrer ?

Hors ligne

#6 04-03-2020 22:04:30

mothsart
Modérateur
Inscription : 31-10-2016
Messages : 1 204

Re : Clicmenu: j'écoute puis j'écris

jaws je sais pas mais google translate, ça doit s'automatiser assez facilement.
Ps : j'ai ajouté "sac" à gspeech... et je vais voir pour passer sur l'ensemble de tes textes pour identifier si il y a d'autres anomalies.

T'as quoi un dictionnaire de mots/phrases d'un côté, tu lances le script et ça te créer les fichiers mp3 derrière ?

Hors ligne

#7 04-03-2020 22:14:14

mothsart
Modérateur
Inscription : 31-10-2016
Messages : 1 204

Re : Clicmenu: j'écoute puis j'écris

Phillipe Dpt 35 a écrit :

Tu peux m'en dire plus sur la façon de paramétrer ?

en fait, c'est dans gSpeech :pour l'instant, il va chercher un dictionnaire dans /home/<user>/.config/gspeech/fr-FR.dic ou t'as une vieille triche.
par exemple hacker=haqueur

du coup, picovox va lire "haqueur" et ça sera prononcé correctement.

Si tu me laisses l'espace du week-end (je suis down en fin de journée), je peux te faire un script qui se base dessus.

Dans speechtux (une v2 de gspeech que j'ai entamé), j'ai pensé les choses un peu mieux : on écrit en phonétique et un algo transforme pour picovox.

Dernière modification par mothsart (04-03-2020 22:14:55)

Hors ligne

#8 04-03-2020 22:50:51

Philippe Dpt35
Administrateur
Lieu : Ille-et-Vilaine
Inscription : 28-10-2015
Messages : 3 227
Site Web

Re : Clicmenu: j'écoute puis j'écris

J'ai réalisé un script qui me permet d'obtenir automatiquement :
- l'enregistrement des mots au format mp3
- l'enregistrement des phrases au format mp3
- la liste des fichiers sons
pour la totalité de mon tableau de données qui se présente sous la forme suivante (j'ai mis les 2 premiers échelons sur 20 uniquement, sachant que les échelons plus élevés peuvent contenir chacun des centaines de mots, et donc de phrases) :

[
   {
    mots: ["maman","papa","c'est","son","le prénom"],
    sons: [],
    contextes: ["Maman donne le biberon à son bébé.","Papa aide maman à la cuisine.","C'est mon livre","Il aime son chat.","Le prénom de mon frère est Marc."],
  },
  {
    mots: ["avec","la maison","un bébé","le père","la mère","et","à","au","ou"],
    sons: [],
    contextes: ["Tu veux bien jouer avec moi ?","Je serai à la maison toute la journée.","Ces jeunes parents attendent un bébé.","Le père de mon ami est garagiste.","La mère de cet enfant est très jeune.","toi et moi","C'est à moi !","Il est au lit","C'est à toi ou à moi ?"],
  },
.....
]

La variable tableau "sons" contient la liste des fichiers sons correspondant à chaque mot que je récupère grâce à mon script. Exemple:

sons: ["1-1001.mp3","1-1002.mp3","1-1003.mp3","1-1004.mp3","1-1005.mp3"],

Ce qu'il me faut c'est une ligne de commande qui me permet de lire chaque élément pour en faire un enregistrement.
Exemple de ce que j'utilise avec espeak :

espeak-ng -s 110 -p 60 -v mb-fr1 "$texte" --stdout >"fichier.wav"

ou avec svoxpico

pico2wave -l fr-FR -w fichier.wav "$texte"

Si on peut utiliser pico2wave avec /home/<user>/.config/gspeech/fr-FR.dic, ça serait parfait. Il suffirait d'y placer les mots posant problème avec la bonne prononciation.

Hors ligne

#9 05-03-2020 08:59:49

Philippe Dpt35
Administrateur
Lieu : Ille-et-Vilaine
Inscription : 28-10-2015
Messages : 3 227
Site Web

Re : Clicmenu: j'écoute puis j'écris

Voilà le script complet et son mode d'emploi si tu veux faire des tests :

Script permettant de traiter le tableau complet.

En sortie on aura les listes de sons dans des tableaux au format javascript au sein du fichier tab-sons.txt
En paramètre du script on donne le nom du fichier contenant le tableau de données.
Il faut avoir créé un sous-répertoire "audio" dans le répertoire du fichier script. C'est là que seront placés les fichiers son.
exemple:
./cree-sons.sh tab-js.txt
tab-js.txt doit contenir un tableau du type:

[
   {
    mots: [],
    sons: [],
    contextes: [],
  },
  {
    mots: [],
    sons: [],
    contextes: [],
  },
]

script cree-sons.sh

# !/bin/bash
tabsons="tab-sons.txt"
>"$tabsons"
>listemp3.txt
liste_tab=$1
liste_sons="liste-mots.txt"
>"$liste_sons"
liste_contextes="liste-contextes.txt"
>"$liste_contextes"
prefixe="1-"
suffixe="ex"
ct_series=1

sons_mots () {
    >listemp3.txt
    let "serie=$ct_series * 1000"
    let "numero=$serie + 1"
    sed -i 's/","/\n/g' "$liste_sons"
    sed -i -e 's/^\["//' -e 's/"\]$//' -e '/^$/d' "$liste_sons"
    while read texte; do
      espeak-ng -s 120 -p 60 -g 3 -v mb-fr1 "$texte" --stdout >"audio/$prefixe$numero.wav"
      lame -h "audio/$prefixe$numero.wav" "audio/$prefixe$numero.mp3"
      rm "audio/$prefixe$numero.wav"
      echo "$prefixe$numero.mp3" >>listemp3.txt
      let "numero++"
    done <"$liste_sons"
    sed -i -z 's/\n/","/g' listemp3.txt
    sed -i -e 's/^/["/' -e 's/","$/"]/' listemp3.txt
}

sons_contextes () {
    let "serie=$ct_series * 1000"
    let "numero=$serie + 1"
    sed -i 's/","/\n/g' "$liste_contextes"
    sed -i -e 's/^\["//' -e 's/"\]$//' -e '/^$/d' "$liste_contextes"
    while read texte; do
      espeak-ng -s 110 -p 60 -v mb-fr1 "$texte" --stdout >"audio/$prefixe$numero$suffixe.wav"
      lame -h "audio/$prefixe$numero$suffixe.wav" "audio/$prefixe$numero$suffixe.mp3"
      rm "audio/$prefixe$numero$suffixe.wav"
      let "numero++"
    done <"$liste_contextes"
}

while read line; do
  if [[ "$line" =~ "mots:" ]]
     then echo "$line" | sed -e 's/mots: //' -e 's/,$//' >"$liste_sons"
     sons_mots
     cat listemp3.txt >>"$tabsons"
     echo "
" >>"$tabsons"
  fi
  if [[ "$line" =~ "contextes:" ]]
     then echo "$line" | sed -e 's/contextes: //' -e 's/,$//' >"$liste_contextes"
     sons_contextes
     let "ct_series++"
  fi
done <"$liste_tab"

exit 0

Pour éviter tout polémique au sujet du format mp3 qui n'est pas libre, je précise que j'ai testé au format ogg, mais que cela aboutit à des tailles de fichiers 1,8 fois supérieures.

Si tu veux récupérer les tableau des données, il est là : https://primtux.fr/applications/ecoute-ecris/donnees.js

Hors ligne

#10 05-03-2020 10:54:37

mothsart
Modérateur
Inscription : 31-10-2016
Messages : 1 204

Re : Clicmenu: j'écoute puis j'écris

Ok, donc si je comprend bien (ton script est public ?) :
si je crée un script "gspeech-cli" qui fait la même chose que picovox mais qui passe par la conversion via le dictionnaire, ça te suffirait.
Dans ces cas là, je peux te faire ça ce soir, ça prendra moins d'une heure.

Hors ligne

#11 05-03-2020 11:30:56

Philippe Dpt35
Administrateur
Lieu : Ille-et-Vilaine
Inscription : 28-10-2015
Messages : 3 227
Site Web

Re : Clicmenu: j'écoute puis j'écris

mothsart a écrit :

si je crée un script "gspeech-cli" qui fait la même chose que picovox mais qui passe par la conversion via le dictionnaire, ça te suffirait.

Si ça peut s'utiliser en ligne de commande dans un script, et passe par un dictionnaire, c'est parfait ! Il me suffit de paramétrer le dictionnaire.

Hors ligne

#12 05-03-2020 20:23:46

mothsart
Modérateur
Inscription : 31-10-2016
Messages : 1 204

Re : Clicmenu: j'écoute puis j'écris

Voilà PhilippeDpt35, je t'ai fait un script rapide pour gSpeech.

Le process :

git clone git@github.com:mothsART/gSpeech.git
cd gSpeech

puis

./gspeech-cli "sac" fichier.wav

Comme tu le vois, premier argument le texte en question et en second le chemin du fichier.

Le dictionnaire a éditer est le fichier fr-Fr.dic : y'a normalement suffisamment d'exemple pour que tu t'en sortes.

Hors ligne

#13 05-03-2020 20:39:51

Philippe Dpt35
Administrateur
Lieu : Ille-et-Vilaine
Inscription : 28-10-2015
Messages : 3 227
Site Web

Re : Clicmenu: j'écoute puis j'écris

Merci, je regarde ça dès que possible.
Y a-t-il des dépendances particulières à installer, je travaille sur une Debian classique.

Hors ligne

#14 05-03-2020 20:51:48

mothsart
Modérateur
Inscription : 31-10-2016
Messages : 1 204

Re : Clicmenu: j'écoute puis j'écris

dépendances : je dirais que non, python3, picovox et sox (pour les longues phrases, non géré par picovox, y'a une grosse triche qui consiste à découper le texte en fragment et faire x format son puis les joindre dans un fichier définitif à la fin)

Tu parles plus haut du format ogg.
En fait, il y a confusion car mp3 est un format d'encodage alors que ogg est un conteneur qui supporte plusieurs formats d'encodage.
Il suffit que celui par défaut soit un format sans perte pour qu'il soit forcément plus gros que mp3.

En format avec perte, ce qui se fait le mieux actuellement c'est le format opus : https://fr.wikipedia.org/wiki/Opus_Inte … udio_Codec
C'est libre, normalisé par l'IETF et supporté par tous les navigateurs récents donc tous les feux sont au vert !

Hors ligne

#15 06-03-2020 00:11:11

Philippe Dpt35
Administrateur
Lieu : Ille-et-Vilaine
Inscription : 28-10-2015
Messages : 3 227
Site Web

Re : Clicmenu: j'écoute puis j'écris

Je viens de voir que le mp3 est libre de droits depuis 2017.

alors que ogg est un conteneur qui supporte plusieurs formats d'encodage.

Là tu pinailles, c'est parce que je n'ai pas précisé ogg Vorbis !

Hors ligne

#16 06-03-2020 10:35:21

mothsart
Modérateur
Inscription : 31-10-2016
Messages : 1 204

Re : Clicmenu: j'écoute puis j'écris

PhilippeDpt35 a écrit :

Là tu pinailles, c'est parce que je n'ai pas précisé ogg Vorbis !

Désolé si je me suis mal exprimé, mon but n'était pas de pinailler pour pinailler.
De mes souvenir, à taux de compression égal, j'avais toujours des fichiers plus petit en Vorbis d'où mon interrogation.

Après, c'est un non sujet car l'avenir c'est Opus mais après, y'a aucune urgence : mp3 c'est déjà pas mal.

Hors ligne

#17 06-03-2020 12:12:01

Philippe Dpt35
Administrateur
Lieu : Ille-et-Vilaine
Inscription : 28-10-2015
Messages : 3 227
Site Web

Re : Clicmenu: j'écoute puis j'écris

mothsart a écrit :

De mes souvenir, à taux de compression égal, j'avais toujours des fichiers plus petit en Vorbis d'où mon interrogation.

Tout à fait, avec en plus moins de pertes.
Mais je pense que là on est sur un cas particulier, de très petits fichiers. Il est possible que l'algorithme de compression, plus efficient sur des fichiers de taille normale, conduise à de plus grandes tailles dans cette situation très inhabituelle.

Hors ligne

#18 06-03-2020 19:06:28

mothsart
Modérateur
Inscription : 31-10-2016
Messages : 1 204

Re : Clicmenu: j'écoute puis j'écris

Alors, je viens de faire un test rapide sur un son mp3 de ton app :

https://cloud.indie.host/s/XAL49tnq6eBgZdG

que j'ai converti au format "opus" (1 bon tiers moins volumineux) :

https://cloud.indie.host/s/FAi6xe4qzdEH7B2

Même taux d’échantillonnage : 16KHz.

La commande en question :

ffmpeg -i son.mp3 -c:a libopus -b:a 16K son.opus

Tu remarqueras que le fichier final, même si il est encodé en opus et avec l'extension .opus est conteneurisé dans de l'ogg.

Hors ligne

#19 06-03-2020 19:42:51

Philippe Dpt35
Administrateur
Lieu : Ille-et-Vilaine
Inscription : 28-10-2015
Messages : 3 227
Site Web

Re : Clicmenu: j'écoute puis j'écris

Application mise à jour avec la voix Svoxpico.

Impossible de vérifier un à un les milliers d'enregistrements. Aussi n'hésitez pas à me signaler si est mot mal prononcé, je corrigerai.

Je vais faire des tests avec la compression Opus.

Hors ligne

#20 06-03-2020 20:36:38

Philippe Dpt35
Administrateur
Lieu : Ille-et-Vilaine
Inscription : 28-10-2015
Messages : 3 227
Site Web

Re : Clicmenu: j'écoute puis j'écris

@mothsart
Il y a un problème avec le son k en fin de mot.
Exemple: un parc, une marque
Le son k est inaudible. As-tu une solution pour corriger ça ?

Hors ligne

#21 06-03-2020 20:56:30

mothsart
Modérateur
Inscription : 31-10-2016
Messages : 1 204

Re : Clicmenu: j'écoute puis j'écris

Pour parc, c'est lu "par' mais marque, le son k est audible de mon côté...

Le mieux est d'ajouter une entrée dans le dictionnaire :

parc=parque

Je pourrais mettre en place des remplacements auto sur des fins de mot mais j'ai peur d'effet de bord.
Ex : marc de café se lirais "marque de café"

Hors ligne

#22 06-03-2020 23:40:44

Philippe Dpt35
Administrateur
Lieu : Ille-et-Vilaine
Inscription : 28-10-2015
Messages : 3 227
Site Web

Re : Clicmenu: j'écoute puis j'écris

Le k de marque n'est pas audible chez moi.
Pour le paramétrage de parc, c'est ce que j'ai bien sûr tenté (parc=parque) mais on retrouve le même problème que "marque".

Curieux tout de même que ce soit audible chez toi et pas chez moi ! Même au casque, on entend "marr" (deux r parce que le r est très accentué) mais pas  "marque". Je travaille dans une VM, mais je ne vois pas de raisons que cela ait une influence.

Hors ligne

#23 07-03-2020 01:17:24

mothsart
Modérateur
Inscription : 31-10-2016
Messages : 1 204

Re : Clicmenu: j'écoute puis j'écris

Voici ce que je produit https://cloud.indie.host/s/7CY4MaxjgoDHYKw

avec

./gspeech-cli "un parc. une marque. un sac. une flaque. le marc de café." essai.wav && ffmpeg -i essai.wav -c:a libopus -b:a 16K essai.opus

J'ai juste rajouté "parc=parque" dans mon dictionnaire.

Dernière modification par mothsart (07-03-2020 01:18:04)

Hors ligne

#24 07-03-2020 07:37:57

Philippe Dpt35
Administrateur
Lieu : Ille-et-Vilaine
Inscription : 28-10-2015
Messages : 3 227
Site Web

Re : Clicmenu: j'écoute puis j'écris

OK ! Là, j'entends toujours très clairement "parr", "marr", ... au lieu de "parc", "marque"...

Donc, si toi tu entends bien "parc", "marque", 2 solutions :
- c'est un problème avec ma carte son ==> testé sur un autre PC, j'ai le même problème, donc c'est pas la cause
- c'est un problème d'audition de ma part ==> je vais faire écouter à quelqu'un d'autre et je te redis

Hors ligne

#25 07-03-2020 07:55:39

Philippe Dpt35
Administrateur
Lieu : Ille-et-Vilaine
Inscription : 28-10-2015
Messages : 3 227
Site Web

Re : Clicmenu: j'écoute puis j'écris

Est-ce que le dictionnaire est sensible à la casse ?
Notamment pour :
- du marc de café ==> marc=mar
- mon prénom est Marc ==> Marc=marque

Hors ligne

Pied de page des forums